chinmaybhatk/n8n-mcp-server
If you are the rightful owner of n8n-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The N8N MCP Server is a Model Context Protocol server designed to manage n8n workflows, enabling interaction with Claude and other MCP-compatible tools.
N8N MCP Server
Model Context Protocol (MCP) server for managing n8n workflows. This allows Claude and other MCP-compatible tools to create, read, update, and delete workflows in your n8n instance.
Features
- 📋 List all workflows
- 📖 Get workflow details
- ✏️ Create new workflows
- 🔄 Update existing workflows
- 🗑️ Delete workflows
- ▶️ Execute workflows
- 📊 View execution history
- 🔄 Activate/deactivate workflows
Setup
-
Clone this repository:
git clone https://github.com/chinmaybhatk/n8n-mcp-server.git cd n8n-mcp-server
-
Install dependencies:
npm install
-
Create environment file:
cp .env.example .env
-
Edit
.env
with your n8n credentials:N8N_URL=https://your-n8n-instance.com N8N_API_KEY=your_api_key_here
-
Build the project:
npm run build
Getting n8n API Key
- In your n8n instance, go to Settings > API
- Create a new API key with the following permissions:
workflow:create
workflow:read
workflow:update
workflow:delete
workflow:execute
execution:read
Usage
With Claude Desktop
Add to your Claude Desktop MCP configuration:
{
"mcpServers": {
"n8n": {
"command": "node",
"args": ["/path/to/n8n-mcp-server/build/index.js"],
"env": {
"N8N_URL": "https://your-n8n-instance.com",
"N8N_API_KEY": "your_api_key_here"
}
}
}
}
Development
Run in development mode:
npm run dev
Available Tools
list_workflows
- List all workflows with optional active filterget_workflow
- Get detailed workflow information by IDcreate_workflow
- Create a new workflow with nodes and connectionsupdate_workflow
- Update an existing workflowdelete_workflow
- Delete a workflow by IDactivate_workflow
- Activate or deactivate a workflowexecute_workflow
- Manually execute a workflowget_executions
- Get workflow execution history
Troubleshooting
Common Issues
400 Bad Request when creating workflows:
- The server now automatically generates node IDs if not provided
- Default positions are set for nodes without positions
- Default typeVersion is set to 1 if not specified
- Ensure node names and types are provided
Authentication Errors:
- Verify your N8N_API_KEY is correct and has proper permissions
- Ensure your N8N_URL is accessible and includes the protocol (https://)
- Check that the API key hasn't expired
Network Timeouts:
- The server includes a 30-second timeout for API requests
- For large workflows, consider breaking them into smaller parts
405 Method Not Allowed:
- The server includes fallback methods for activation and execution
- For activation, it will try updating the entire workflow if PATCH fails
Debug Mode
Enable debug mode by setting DEBUG=true
in your .env
file:
DEBUG=true
This will log request/response data for troubleshooting.
Testing API Connection
You can test your n8n API connection manually:
curl -H "X-N8N-API-KEY: your_api_key" https://your-n8n-instance.com/api/v1/workflows
Recent Updates (v1.0.2)
- ✅ Auto-generate node IDs when not provided
- ✅ Set intelligent default positions for nodes
- ✅ Auto-set typeVersion to 1 if not specified
- ✅ Enhanced workflow settings with proper defaults
- ✅ Improved activation endpoint with fallback method
- ✅ Added debug mode for request/response logging
- ✅ Better error messages with full response data
Recent Updates (v1.0.1)
- ✅ Fixed workflow creation payload structure
- ✅ Added comprehensive error handling and logging
- ✅ Improved node validation before creation
- ✅ Added fallback endpoints for different n8n versions
- ✅ Better error messages for troubleshooting
- ✅ Preserved existing workflow data during updates
- ✅ Increased API timeout to 30 seconds
Example Usage
Once configured, you can interact with Claude like this:
You: "Create a workflow that monitors a webhook, processes the data with a Code node to extract email addresses, and sends notifications via Slack."
Claude will:
- Design the workflow structure
- Create the appropriate nodes (Webhook, Code, Slack)
- Configure the connections
- Use the MCP server to create it in your n8n instance
Note: You don't need to specify node IDs or positions - the server handles these automatically!
Security
- Never commit your
.env
file - Store API keys securely
- Use environment variables for sensitive configuration
- Ensure your n8n instance is properly secured
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
License
ISC