n8n-workflow-builder-mcp
n8n Workflow Builder MCP
A Model Context Protocol (MCP) server for building and manipulating n8n workflows. Build n8n workflows just by prompting with AI — works with Claude Code, VS Code, Cursor, and any MCP-compatible client.
DEMO VIDEO:
Cursor rules
File with rules is in
rules/n8n-mcp-server-rules.mdc
Key Features
Workflow Management: Create, update, and execute n8n workflows programmatically (execute is not implemented yet)
Node Discovery: Explore available n8n nodes and their capabilities
Connection Management: Create connections between workflow nodes
AI Integration: Special tools for connecting AI components in workflows
AI-Friendly Interface: Designed specifically for interaction with AI agents
N8N Version Management: Automatic version detection and compatibility handling - supports 184+ n8n versions (1.86.0 – 2.6.2) with dynamic node filtering and "closest lower version" matching for backward compatibility
Prerequisites
Node.js (v18 or higher)
npm (for npx command)
An MCP-compatible client (Claude Code, VS Code, Cursor, etc.)
Installation & Setup
Getting your n8n API Key
Open your n8n instance in a browser
Go to Settings > API Keys
Click Create API Key
Copy the generated key and use it in your configuration
Claude Code (Recommended)
Add the MCP server using the Claude Code CLI:
claude mcp add n8n-workflow-builder -- npx -y n8n-workflow-builder-mcpThen set the environment variables:
claude mcp add n8n-workflow-builder \
-e N8N_API_URL=http://localhost:5678 \
-e N8N_API_KEY=your-n8n-api-key-here \
-- npx -y n8n-workflow-builder-mcp
N8N_VERSIONis optional — the server auto-detects it from the API.
VS Code / Cursor
Add to your MCP config file (.vscode/mcp.json for VS Code, .cursor/mcp.json for Cursor):
{
"mcpServers": {
"n8n-workflow-builder": {
"command": "npx",
"args": ["-y", "n8n-workflow-builder-mcp"],
"env": {
"N8N_API_URL": "http://localhost:5678",
"N8N_API_KEY": "your-n8n-api-key-here"
}
}
}
}Restart your IDE for changes to take effect.
Development Installation
For development or local testing, clone and build from source:
git clone https://github.com/ifmelate/n8n-workflow-builder-mcp.git
cd n8n-workflow-builder-mcp
npm install
npm run buildThen point your MCP client to the built entry point:
# Claude Code
claude mcp add n8n-workflow-builder -- node /absolute/path/to/n8n-workflow-builder-mcp/dist/index.js
# VS Code / Cursor — use the same JSON config above with "command": "node" and "args": ["/absolute/path/to/dist/index.js"]For development with auto-rebuild:
npm run devAvailable MCP Tools
The server provides the following tools for working with n8n workflows:
Core Workflow Management
Tool Name | Description | Key Parameters |
create_workflow | Create a new n8n workflow |
|
list_workflows | List workflows in the workspace |
|
get_workflow_details | Get detailed information about a specific workflow |
|
validate_workflow | Validate a workflow file against node schemas and connectivity |
|
Node Management
Tool Name | Description | Key Parameters |
add_node | Add a new node to a workflow |
|
edit_node | Edit an existing node in a workflow |
|
delete_node | Delete a node from a workflow |
|
list_available_nodes | List available node types with optional filtering. Supports tag-style synonyms and multi-token OR/AND logic |
|
Connection Management
Tool Name | Description | Key Parameters |
add_connection | Create a connection between two nodes |
|
add_ai_connections | Wire AI model, tools, and memory to an agent |
|
connect_main_chain | Build a minimal main path through AI workflow nodes (Trigger → Model → Memory → Embeddings → Doc Loader → Vector Store → Vector Tool → Agent) |
|
Workflow Planning & Composition
Tool Name | Description | Key Parameters |
plan_workflow | Create a non-destructive plan (nodes and connections) to update a workflow. Does not write files |
|
review_workflow_plan | Apply a plan in-memory and return validation errors, warnings, and suggested fixes. Does not write files |
|
apply_workflow_plan | Apply a previously reviewed plan to the workflow on disk (atomic write) |
|
compose_ai_workflow | Compose a complex AI workflow (agent + model + memory + embeddings + vector + tools + trigger) in one call, including wiring and basic validation |
|
Parameter Management
Tool Name | Description | Key Parameters |
suggest_node_params | Suggest minimal valid parameters for a node type using defaults and required fields |
|
list_missing_parameters | List required parameters missing for a node considering visibility rules |
|
fix_node_params | Return parameters with defaults applied for required fields that are missing |
|
Templates & Discovery
Tool Name | Description | Key Parameters |
list_template_examples | List node usage examples extracted from free templates. Filter by node_type or template_name |
|
get_n8n_version_info | Get current N8N version and capabilities |
|
Validation behavior
validate_workflow promotes warnings to errors and additionally fails when any enabled node is not connected (directly or via AI ports) to the main chain starting at the inferred startNode. Use connect_from/connect_to or add_ai_connections to fix connectivity.
Troubleshooting
General
Check your MCP config — make sure JSON is valid and the server name matches.
Update Node.js to the latest LTS version.
Clear npm cache if npx fails:
npm cache clean --forceTry global install as a fallback:
npm install -g n8n-workflow-builder-mcp
Claude Code
Run
claude mcp listto verify the server is registered.Check logs with
claude mcp logs n8n-workflow-builder.
VS Code / Cursor
Check the Output panel — select "MCP" from the dropdown to see server logs.
Make sure the server is enabled in Settings > Features > MCP Servers.
Restart the IDE after config changes.
Project Structure
/src: Main source code/src/tools: MCP tools implementation/src/models: Data models/src/utils: Utility functions/src/middleware: Authentication and middleware/config: Configuration files/tests: Test files/workflow_nodes: n8n node definitions/docs: Additional documentation
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add some amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
License
MIT License