n8n-mcp-server

nikolausm/n8n-mcp-server

3.3

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 facilitate interaction between AI assistants and n8n workflow automation instances via REST API.

Tools
  1. list_workflows

    List all workflows with optional filtering.

  2. execute_workflow

    Execute a workflow with optional input data.

  3. get_tags

    List all available tags.

n8n MCP Server

MCP n8n

MCP (Model Context Protocol) server for n8n workflow automation. This server enables AI assistants like Claude to interact with n8n instances via the REST API.

Features

  • 🔄 Workflow Management: List, create, update, and delete workflows
  • ▶️ Execution Control: Execute workflows and monitor executions
  • 🏷️ Tag Management: Organize workflows with tags
  • 📊 Execution History: Access workflow execution history and results
  • 🔑 Credential Management: List available credentials (read-only)
  • 🌐 Webhook Management: Create and manage webhooks
  • 🔍 Search: Search workflows by name or tags

Prerequisites

  • Node.js 18 or higher
  • n8n instance with API access enabled
  • n8n API key

Installation

From npm (when published)

npm install -g n8n-mcp-server

From source

git clone https://github.com/nikolausm/n8n-mcp-server.git
cd n8n-mcp-server
npm install
npm run build

Configuration

Getting your n8n API Key

  1. Log in to your n8n instance
  2. Go to Settings → API
  3. Generate an API key

Configure Claude Desktop

Add the following to your Claude Desktop configuration (claude_desktop_config.json):

{
  "mcpServers": {
    "n8n": {
      "command": "node",
      "args": ["/path/to/n8n-mcp-server/dist/index.js"],
      "env": {
        "N8N_URL": "https://your-n8n-instance.com",
        "N8N_API_KEY": "your-api-key-here"
      }
    }
  }
}

For n8n cloud instances, use:

  • N8N_URL: https://your-subdomain.app.n8n.cloud

Available Tools

Workflow Management

  • list_workflows - List all workflows with optional filtering
  • get_workflow - Get detailed information about a specific workflow
  • create_workflow - Create a new workflow from JSON
  • update_workflow - Update an existing workflow
  • delete_workflow - Delete a workflow
  • activate_workflow - Activate a workflow
  • deactivate_workflow - Deactivate a workflow

Execution

  • execute_workflow - Execute a workflow with optional input data
  • get_executions - Get execution history with filtering options
  • get_execution - Get details of a specific execution
  • delete_execution - Delete an execution
  • retry_execution - Retry a failed execution

Tags

  • get_tags - List all available tags
  • create_tag - Create a new tag
  • update_tag - Update a tag
  • delete_tag - Delete a tag

Other

  • get_credentials - List available credentials (names only)
  • search_workflows - Search workflows by name or tags
  • get_workflow_webhooks - Get webhook URLs for a workflow

Usage Examples

List all active workflows

Assistant: I'll list all your active n8n workflows.

[Uses list_workflows tool with active=true]

Execute a workflow

Assistant: I'll execute the workflow with the data you provided.

[Uses execute_workflow tool with workflowId and data]

Create a new workflow

Assistant: I'll create a new workflow for you.

[Uses create_workflow tool with workflow JSON]

Development

Setup

npm install

Build

npm run build

Test locally

N8N_URL=https://your-instance.com N8N_API_KEY=your-key npm start

Run tests

npm test

Security Notes

  • Never commit your API keys
  • Use environment variables for sensitive data
  • The MCP server has the same permissions as your API key
  • Consider using a restricted API key if possible

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

MIT - see file

Support

Author

Michael Nikolaus - GitHub