MCP Server

nylas

io.usefulapi/nylas
Communication Productivity Public & reachable MCP 2026-07-28

What this MCP does

Reads and sends email, manages drafts and contacts, and reads and creates calendar events through connected accounts.

nylas_create_draft
Create a draft email
Creates a draft email (does NOT send — safe/additive). Nylas v3: POST /v3/grants/{grant_id}/drafts.
Destructive
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['to'], 'properties': {'cc': {'type': 'array', 'items': {'type': 'string'}, 'description': 'CC email addresses (array of strings).'}, 'to': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Recipient email addresses (array of strings).'}, 'bcc': {'type': 'array', 'items': {'type': 'string'}, 'description': 'BCC email addresses (array of strings).'}, 'body': {'type': 'string', 'description': 'Email body (HTML or plain text).'}, 'subject': {'type': 'string', 'description': 'Email subject line.'}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}}}
nylas_create_event
Create a calendar event
Creates a calendar event (may send invites to participants). Requires calendar_id (sent as a query param). Nylas v3: POST /v3/grants/{grant_id}/events.
Destructive
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['calendar_id', 'title', 'start_time', 'end_time'], 'properties': {'title': {'type': 'string', 'description': 'Event title.'}, 'end_time': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Event end, Unix timestamp (seconds).'}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'location': {'type': 'string', 'description': 'Event location.'}, 'start_time': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Event start, Unix timestamp (seconds).'}, 'calendar_id': {'type': 'string', 'description': 'REQUIRED. The calendar id to create the event in (sent as a query param).'}, 'description': {'type': 'string', 'description': 'Event description.'}, 'participants': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Participant email addresses (array of strings).'}}}
nylas_get_calendar
Get a calendar
Get a single calendar by id. Nylas v3: GET /v3/grants/{grant_id}/calendars/{calendar_id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['calendar_id'], 'properties': {'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'calendar_id': {'type': 'string', 'description': 'The calendar id to fetch.'}}}
nylas_get_contact
Get a contact
Get a single contact by id. Nylas v3: GET /v3/grants/{grant_id}/contacts/{contact_id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['contact_id'], 'properties': {'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'contact_id': {'type': 'string', 'description': 'The contact id to fetch.'}}}
nylas_get_event
Get an event
Get a single calendar event by id. Requires calendar_id (sent as a query param). Nylas v3: GET /v3/grants/{grant_id}/events/{event_id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['event_id', 'calendar_id'], 'properties': {'event_id': {'type': 'string', 'description': 'The event id to fetch.'}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'calendar_id': {'type': 'string', 'description': 'REQUIRED. The calendar id (sent as a query param).'}}}
nylas_get_grant
Get a grant
Get details for a single connected account (grant). Nylas v3: GET /v3/grants/{grant_id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}}}
nylas_get_message
Get a message
Get a single email message by id. Nylas v3: GET /v3/grants/{grant_id}/messages/{message_id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['message_id'], 'properties': {'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'message_id': {'type': 'string', 'description': 'The message id to fetch.'}}}
nylas_list_calendars
List calendars
List calendars for the connected account (each has a calendar_id used by the events tools). Nylas v3: GET /v3/grants/{grant_id}/calendars.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Max calendars to return.', 'exclusiveMinimum': 0}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'page_token': {'type': 'string', 'description': 'Pagination cursor (next_cursor from a prior page).'}}}
nylas_list_contacts
List contacts
List contacts for the connected account, with optional email/phone filters. Nylas v3: GET /v3/grants/{grant_id}/contacts.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'email': {'type': 'string', 'description': 'Filter by email address.'}, 'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Max contacts to return.', 'exclusiveMinimum': 0}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'page_token': {'type': 'string', 'description': 'Pagination cursor (next_cursor from a prior page).'}, 'phone_number': {'type': 'string', 'description': 'Filter by phone number.'}}}
nylas_list_drafts
List drafts
List draft emails for the connected account. Nylas v3: GET /v3/grants/{grant_id}/drafts.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Max drafts to return.', 'exclusiveMinimum': 0}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'page_token': {'type': 'string', 'description': 'Pagination cursor (next_cursor from a prior page).'}}}
nylas_list_events
List events
List calendar events. Requires calendar_id (sent as a query param). Nylas v3: GET /v3/grants/{grant_id}/events.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['calendar_id'], 'properties': {'end': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Filter: latest event start, Unix timestamp (seconds).'}, 'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Max events to return.', 'exclusiveMinimum': 0}, 'start': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Filter: earliest event start, Unix timestamp (seconds).'}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'page_token': {'type': 'string', 'description': 'Pagination cursor (next_cursor from a prior page).'}, 'calendar_id': {'type': 'string', 'description': 'REQUIRED. The calendar id (sent as a query param).'}, 'show_cancelled': {'type': 'boolean', 'description': 'Include cancelled events.'}}}
nylas_list_folders
List folders
List mail folders/labels for the connected account. Nylas v3: GET /v3/grants/{grant_id}/folders.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Max folders to return.', 'exclusiveMinimum': 0}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}}}
nylas_list_grants
List grants (connected accounts)
List the connected accounts (grants) on this Nylas application, each with a grant_id used to scope other tools. Not grant-scoped. Nylas v3: GET /v3/grants.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Max grants to return.', 'exclusiveMinimum': 0}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Pagination offset.'}}}
nylas_list_messages
List messages
List email messages for the connected account, with optional filters. Nylas v3: GET /v3/grants/{grant_id}/messages.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'in': {'type': 'string', 'description': 'Filter by folder id.'}, 'to': {'type': 'string', 'description': 'Filter by recipient email address.'}, 'from': {'type': 'string', 'description': 'Filter by sender email address.'}, 'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Max messages to return.', 'exclusiveMinimum': 0}, 'unread': {'type': 'boolean', 'description': 'If set, filter by unread status.'}, 'starred': {'type': 'boolean', 'description': 'If set, filter by starred status.'}, 'subject': {'type': 'string', 'description': 'Filter by subject.'}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'page_token': {'type': 'string', 'description': 'Pagination cursor (next_cursor from a prior page).'}, 'search_query_native': {'type': 'string', 'description': 'Provider-native search query string.'}}}
nylas_send_message
Send an email
SENDS a real email via the connected account. This dispatches an actual message. Nylas v3: POST /v3/grants/{grant_id}/messages/send.
Destructive
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['to'], 'properties': {'cc': {'type': 'array', 'items': {'type': 'string'}, 'description': 'CC email addresses (array of strings).'}, 'to': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Recipient email addresses (array of strings).'}, 'bcc': {'type': 'array', 'items': {'type': 'string'}, 'description': 'BCC email addresses (array of strings).'}, 'body': {'type': 'string', 'description': 'Email body (HTML or plain text).'}, 'subject': {'type': 'string', 'description': 'Email subject line.'}, 'grant_id': {'type': 'string', 'description': 'Connected-account grant id. Overrides NYLAS_GRANT_ID for this call.'}, 'reply_to_message_id': {'type': 'string', 'description': 'Id of the message this is a reply to.'}}}
Changed
nylas_create_draft
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_create_event
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_send_message
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_list_drafts
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_get_contact
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_list_contacts
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_get_event
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_list_events
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_get_calendar
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_list_calendars
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_list_folders
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_get_message
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_list_messages
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_get_grant
Oct. 1, 2026, 2:43 a.m.
Changed
nylas_list_grants
Oct. 1, 2026, 2:43 a.m.
Added
nylas_create_draft
Sept. 21, 2026, 2:44 a.m.
Added
nylas_create_event
Sept. 21, 2026, 2:44 a.m.
Added
nylas_send_message
Sept. 21, 2026, 2:44 a.m.
Added
nylas_list_drafts
Sept. 21, 2026, 2:44 a.m.
Added
nylas_get_contact
Sept. 21, 2026, 2:44 a.m.
Added
nylas_list_contacts
Sept. 21, 2026, 2:44 a.m.
Added
nylas_get_event
Sept. 21, 2026, 2:44 a.m.
Added
nylas_list_events
Sept. 21, 2026, 2:44 a.m.
Added
nylas_get_calendar
Sept. 21, 2026, 2:44 a.m.
Added
nylas_list_calendars
Sept. 21, 2026, 2:44 a.m.
Added
nylas_list_folders
Sept. 21, 2026, 2:44 a.m.
Added
nylas_get_message
Sept. 21, 2026, 2:44 a.m.
Added
nylas_list_messages
Sept. 21, 2026, 2:44 a.m.
Added
nylas_get_grant
Sept. 21, 2026, 2:44 a.m.
Added
nylas_list_grants
Sept. 21, 2026, 2:44 a.m.