Skip to main content
Glama

n8n MCP Server

Model Context Protocol (MCP) server for n8n workflow automation platform. This server provides AI models with comprehensive access to n8n workflows through a standardized MCP interface.

Quick Start

Prerequisites

  • n8n instance running (local or remote)

  • n8n API key (how to get API key)

  • Node.js 22.10.0 or higher

Installation

Install and run directly using npx (no local clone required):

npx @r_masseater/n8n-mcp-server --n8n-url "http://localhost:5678" --api-key "your-api-key"

Using with Claude Desktop

Add this configuration to your Claude Desktop config file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{ "mcpServers": { "n8n": { "command": "npx", "args": ["@r_masseater/n8n-mcp-server"], "env": { "N8N_URL": "http://localhost:5678", "N8N_API_KEY": "your-api-key" } } } }

After saving, restart Claude Desktop. You can now ask Claude to manage your n8n workflows!

Example prompts:

  • "List all my n8n workflows"

  • "Create a new workflow called 'Email Automation'"

  • "Show me the details of workflow ID abc123"

  • "Update workflow xyz456 to add a new node"

Features

  • Complete Workflow Management: Create, read, update, and delete n8n workflows

  • Optimized Responses: Context-efficient data structures for AI model consumption

  • Flexible Authentication: API key-based authentication

  • Dual Transport Support: stdio and HTTP transports

  • Comprehensive Error Handling: Structured error responses with meaningful messages

Configuration

CLI Options

# Basic usage (uses environment variables) npx @r_masseater/n8n-mcp-server # With CLI options npx @r_masseater/n8n-mcp-server --n8n-url http://localhost:5678 --api-key your-key --log-level debug # HTTP transport (for development/testing) npx @r_masseater/n8n-mcp-server --transport http --port 3000

Environment Variables

Alternatively, you can use environment variables:

# Required export N8N_URL="http://localhost:5678" # n8n instance URL export N8N_API_KEY="your-api-key" # n8n API key # Optional export LOG_LEVEL="info" # Log level (error|warn|info|debug)

Development

If you want to develop or contribute to this project:

# Clone the repository git clone https://github.com/masseater/n8n-mcp-server.git cd n8n-mcp-server # Install dependencies pnpm install # Build the project pnpm run build # Run in development mode with auto-reload pnpm run dev # Run tests pnpm test

Available MCP Tools

1. list_workflows

List n8n workflows with optional filtering.

Parameters:

  • active (boolean, optional): Filter by active status

  • tags (array of strings, optional): Filter by tags

  • limit (number, optional): Maximum number of workflows to return (1-100)

  • offset (number, optional): Number of workflows to skip

Example:

{ "name": "list_workflows", "arguments": { "active": true, "tags": ["automation", "production"], "limit": 10 } }

2. get_workflow

Get detailed information about a specific workflow.

Parameters:

  • id (string, required): Workflow ID

Example:

{ "name": "get_workflow", "arguments": { "id": "workflow-123" } }

3. create_workflow

Create a new workflow.

Parameters:

  • name (string, required): Workflow name

  • nodes (array, optional): Workflow nodes

  • connections (object, optional): Node connections

  • active (boolean, optional): Whether workflow is active

  • tags (array of strings, optional): Workflow tags

Example:

{ "name": "create_workflow", "arguments": { "name": "My New Workflow", "nodes": [ { "id": "node1", "type": "n8n-nodes-base.start", "position": [100, 100] } ], "connections": {}, "active": false, "tags": ["automation"] } }

4. update_workflow

Update an existing workflow.

Parameters:

  • id (string, required): Workflow ID

  • name (string, optional): New workflow name

  • nodes (array, optional): Updated workflow nodes

  • connections (object, optional): Updated node connections

  • active (boolean, optional): Updated active status

  • tags (array of strings, optional): Updated workflow tags

Example:

{ "name": "update_workflow", "arguments": { "id": "workflow-123", "name": "Updated Workflow Name", "active": true, "tags": ["updated", "production"] } }

5. delete_workflow

Delete a workflow.

Parameters:

  • id (string, required): Workflow ID

Example:

{ "name": "delete_workflow", "arguments": { "id": "workflow-123" } }

Usage Examples

Using with Claude Desktop

Add to your Claude Desktop configuration:

{ "mcpServers": { "n8n": { "command": "node", "args": ["/path/to/n8n-mcp-server/dist/index.js"], "env": { "N8N_URL": "http://localhost:5678", "N8N_API_KEY": "your-api-key", "LOG_LEVEL": "info" } } } }

Using with other MCP clients

The server supports both stdio and HTTP transports:

# stdio transport (default) pnpm start # HTTP transport pnpm start --transport http --port 3000

Development

Project Structure

src/ ├── clients/ # n8n API client implementations ├── config/ # Configuration management ├── interfaces/ # TypeScript interfaces ├── optimizers/ # Response optimization ├── server/ # MCP server implementation ├── types/ # Type definitions └── index.ts # Main entry point

Scripts

# Development pnpm run dev # Start in development mode pnpm run build # Build the project pnpm run type-check # TypeScript type checking # Production pnpm start # Start the server pnpm start:stdio # Start with stdio transport pnpm start:http # Start with HTTP transport

Testing

# Run type checking pnpm run type-check # Build and test pnpm run build

Error Handling

The server provides structured error responses:

{ "content": [ { "type": "text", "text": "Error: Failed to authenticate with n8n API" } ], "isError": true }

Common error scenarios:

  • Authentication failures: Invalid API key or n8n instance unreachable

  • Workflow not found: Invalid workflow ID

  • Validation errors: Invalid parameters or workflow structure

  • Network errors: Connection timeouts or API unavailability

Response Optimization

The server optimizes responses for AI model consumption:

  • Minimized context: Removes unnecessary fields and metadata

  • Essential information: Preserves critical workflow data

  • Pagination support: Handles large datasets efficiently

  • Structured format: Consistent JSON responses

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Run type checking and build

  5. Submit a pull request

License

MIT License - see LICENSE file for details.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

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/masseater/n8n-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server