What n8n-mcp is
n8n-mcp is a Model Context Protocol (MCP) server that gives AI assistants — Claude, Cursor, or any other MCP-compatible tool — direct access to your n8n instance. Instead of describing a workflow in prose and then manually recreating it in the n8n interface, you describe it to Claude and it builds the workflow directly.
The timing is notable. n8n raised $180M at a $2.5B valuation in late 2025, and MCP adoption accelerated sharply across AI tooling in the same period. The combination of the two is practically inevitable.
Setting it up
The setup requires three things: a running n8n instance (self-hosted or cloud), an API key from that instance, and the n8n-mcp server installed and connected to your AI assistant.
# Install via npx
npx n8n-mcp
# Or add to Claude Desktop / Cursor MCP config:
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": ["n8n-mcp"],
"env": {
"N8N_API_URL": "https://your-n8n-instance.com/api/v1",
"N8N_API_KEY": "your-api-key"
}
}
}
}
What the experience is actually like
The most useful interaction pattern is: describe the trigger, describe what you want to happen, and specify any services involved. Claude has enough context about n8n's node library to assemble reasonable workflows from a plain description.
Example prompt: "Create a workflow that triggers when a new row is added to a Google Sheet named 'Leads', sends the row data as a POST to my CRM at api.mycrm.com/contacts, then sends a Slack message to #sales-team with the contact's name and email."
The result in testing was a working three-node workflow: Google Sheets trigger → HTTP Request → Slack. The node configuration was about 80% correct out of the box — the HTTP Request method, headers, and body mapping needed adjusting, and the Slack message template needed tweaking, but the structure was right.
Where it is genuinely useful
The biggest time saving is in the scaffolding step — getting a reasonable starting structure that you then refine, rather than building from scratch. For workflows with clear, well-defined logic (webhook in, transform data, send somewhere), Claude gets the structure right most of the time.
It is also useful for explaining what an existing workflow does. Pointing Claude at a complex multi-node workflow and asking for an explanation is faster than tracing through the nodes manually.
Where it still falls short
Complex conditional logic — workflows with multiple branches based on data conditions — tends to produce structures that are correct in concept but wrong in the specific n8n expression syntax. The n8n expression language has specific quirks that Claude does not always get right without correction.
Error handling and retry logic are generally not included unless explicitly requested. A workflow that looks correct in a happy-path test can be fragile in production because Claude did not add error branches by default.
Credential configuration is also outside what MCP can do — it can reference credential names but cannot create or configure credentials, which means you still need to do that part manually in the n8n UI.
The honest assessment
For someone already comfortable with n8n, it reduces the mechanical work of building straightforward workflows by a meaningful amount. For someone new to n8n, it is a useful learning tool but not a replacement for understanding how the platform works — you need enough context to evaluate whether what Claude built is actually correct.
The technology is genuinely useful at the current level and will likely improve significantly as both n8n's node documentation and Claude's context about automation workflows get better.