Nylas API MCP Server
OfficialProvides curl commands as code samples for Nylas API operations, allowing developers to test and implement email, calendar, and contacts functionality directly from the command line.
Provides code samples and implementation examples for Nylas API operations using Node.js, allowing developers to integrate email, calendar, and contacts functionality.
Offers code samples and implementation examples for Nylas API operations in Python, enabling developers to build applications with email, calendar, and contacts integration.
Includes code samples and implementation examples for Nylas API operations in Ruby, supporting the development of applications with email, calendar, and contacts functionality.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Nylas API MCP Servergenerate authentication code for Node.js to connect to Nylas"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Nylas API MCP Server (Experimental)
Note: This project is experimental and is intended as an exploration of using the Model Context Protocol (MCP) as a guide for Nylas API integrations. It is not official and should be used for learning and experimentation purposes only.
This project implements a Model Context Protocol (MCP) server for the Nylas API. It provides resources, tools, and prompts to help developers learn about and integrate with the Nylas API for email, calendar, and contacts functionality.
What is MCP?
The Model Context Protocol (MCP) is a standard for integrating data, tools, and prompts with AI applications. MCP servers can expose resources, tools, and prompts to AI applications like Claude Desktop, Cursor, and other MCP-compatible applications.
Related MCP server: NetlifyMCPServer
Features
This MCP server provides:
Documentation Resources: Comprehensive documentation about Nylas API endpoints, authentication, and best practices
Code Samples: Ready-to-use code samples for various Nylas API operations in multiple languages (Node.js, Python, Java, Ruby, curl)
Interactive Tools: Tools to generate authentication code and endpoint-specific implementation code
Prompts: Pre-built prompts for common Nylas integration scenarios
Getting Started
Prerequisites
Node.js 18+
npm
Installation
Clone this repository
Install dependencies
npm installBuild the project
npm run buildRunning the MCP Server
Using stdio (for direct integration with MCP clients)
npm startUsing HTTP with SSE (for remote connections)
MCP_MODE=http npm startBy default, the HTTP server runs on port 3000. You can change this by setting the PORT environment variable:
MCP_MODE=http PORT=8080 npm startUsing with MCP Clients
Claude Desktop
Start the MCP server in stdio mode
In Claude Desktop, go to Settings > Servers
Click "Add Server"
Select "Run a local command" and enter the command to start this server:
node /path/to/nylas-api-mcp/dist/index.jsGive it a name (e.g., "Nylas API")
After adding, you can use all the Nylas API resources, tools, and prompts in your Claude conversations
Cursor
Start the MCP server in stdio mode
In Cursor, add a new MCP server in the settings
Configure it to use the command:
node /path/to/nylas-api-mcp/dist/index.jsResources
This MCP server provides the following resources:
General Documentation: Overview of Nylas API capabilities
Authentication Guide: How to authenticate with Nylas API
API Endpoints: Documentation for email, calendar, contacts, and webhook endpoints
Code Samples: Usage examples in multiple programming languages
Tools
Interactive tools for code generation:
generate-auth-code: Generates authentication code in your preferred language
generate-endpoint-code: Generates code for specific API endpoints
search-api-docs: Search through the Nylas API documentation
Prompts
Pre-built prompts for common scenarios:
Getting Started: Basic intro to Nylas API
Authentication Guide: Understanding OAuth flow
Email/Calendar/Contacts Integration: Feature-specific guidance
Integration Scenarios: Guidance for specific use cases (email client, calendar booking, etc.)
SDK Examples: Example code in various languages
Debugging Guide: Common issues and solutions
Contributing
Contributions are welcome! You can:
Add more code samples to the
nylas-code-samplesdirectoryImprove documentation resources
Add support for additional programming languages
Create new tools and prompts
Disclaimer
This is an experimental project and is not officially supported by Nylas. The information and code provided through this MCP server should be used as a learning resource only. Always refer to the official Nylas documentation for the most accurate and up-to-date information on the Nylas API.
The sample code provided is for educational purposes and may need additional error handling, security considerations, and testing before being used in production environments.
License
MIT
Available Tools
3 toolsgenerate-auth-codeD
| Name | Required | Description | Default |
|---|---|---|---|
| language | Yes | ||
| clientId | No | ||
| clientSecret | No | ||
| redirectUri | No | ||
| scopes | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate-endpoint-codeD
| Name | Required | Description | Default |
|---|---|---|---|
| language | Yes | ||
| endpoint | Yes | ||
| method | No | ||
| params | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-api-docsD
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| category | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
- First observed
generate-auth-code - First observed
generate-endpoint-code - First observed
search-api-docs
TDQS
The tools have overlapping purposes that could cause confusion. 'generate-auth-code' and 'generate-endpoint-code' both involve code generation for different parts of the Nylas API, but without descriptions, their specific boundaries are unclear. 'search-api-docs' is more distinct but still part of the same API exploration domain.
The naming follows a consistent verb-object pattern with hyphens (e.g., generate-auth-code, search-api-docs), which is predictable and readable. There are no deviations in style across the three tools, though the pattern is simple and lacks more sophisticated conventions.
With only 3 tools, the server feels thin for an API-focused purpose like the Nylas API, which typically involves multiple operations such as CRUD for emails, calendars, or contacts. This limited set suggests significant gaps in coverage for the apparent domain.
The tool surface is severely incomplete for an API server. There are no tools for core API operations like sending emails, managing events, or accessing user data, which are essential for the Nylas API domain. The existing tools only cover authentication, endpoint code generation, and documentation search, leaving major gaps.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for Nylas — read email, calendars, events and contacts, and send email or create events.
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseCqualityDmaintenanceA simple demonstration project for the Model Control Protocol (MCP) server that provides tools for AI assistants to fetch news articles, perform calculations, retrieve weather data, and generate personalized greetings.3MIT
- FlicenseNot gradedqualityNot gradedmaintenanceA basic example of developing and running serverless Model Context Protocol (MCP) using Netlify Functions, enabling AI agents to interact with your services via a standardized API.-
- FlicenseNot gradedqualityDmaintenanceA basic example of a serverless Model Context Protocol (MCP) server implemented using Netlify Functions with Express, enabling AI agents to interact with custom capabilities.-
- AlicenseBqualityDmaintenanceA Model Context Protocol server that creates tools from API configurations defined in YAML files, allowing easy integration of external APIs into an MCP ecosystem without coding.7217MIT
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nylas-samples/nylas-api-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server