n8n MCP Server Trigger Complete Guide — Creating a Custom MCP Server Without Coding and Connecting to Claude Desktop
In November 2024, Anthropic open-sourced the Model Context Protocol (MCP), fundamentally changing how AI connects with external tools. Prior to MCP, complex custom integration code had to be written manually for AI models like Claude to communicate with external services. However, thanks to MCP, any tool can now connect to AI in a standardized way, much like how USB-C standardized the charging method for various devices.
A significant number of first-time n8n MCP Server Triggers get stuck when they say, "I don't understand why mcp-remote configuration is necessary," or "I registered the Test URL in Claude Desktop, but it won't connect." This article starts right from that point.
n8n is a self-hosted open-source workflow automation platform that offers integration with over 400 services and a visual editing environment. Using n8n's MCP Server Trigger node, you can build your own custom MCP server and manipulate external services via natural language from Claude Desktop without a single line of code. In this article, we will examine the MCP Server Trigger step-by-step, covering everything from how it works and configuring the connection to Claude Desktop to practical use cases and common pitfalls.
index
- Key Concepts
- What is MCP and Why Is It Important
- Operating Principle of n8n MCP Server Trigger
- Differences between SSE and stdio, and bridge tools
- Practical Application
- Example 1: Managing Notion Tasks with Natural Language
- Example 2: Exposing an Internal REST API to an AI Tool
- Example 3: Multi-Workflow Discovery Server
- Pros and Cons Analysis
- In Conclusion
- Reference Material
Key Concepts
What is MCP and Why Is It Important
MCP (Model Context Protocol) is an open protocol that standardizes how AI models interact with external tools, data sources, and systems. It is structured so that a client (such as Claude Desktop) sends a tools/list request to a server to receive a list of available tools, and then executes a specific tool using tools/call.
MCP is a common interface between AI models and the outside world. Server developers expose tools in a standard way that any client can connect to, and client developers can connect to any server in the same way.
As of early 2025, thousands of MCP servers are already being distributed through the community, and n8n is playing the role of a "no-coding MCP server builder" in this ecosystem.
Operation Principle of n8n MCP Server Trigger
The MCP Server Trigger Node is a trigger node that transforms an n8n workflow into an MCP server. With this single node, the n8n instance itself becomes an MCP server, allowing clients such as Claude Desktop to call Tool nodes within the workflow via HTTP (SSE) endpoints.
The important point is that the MCP Server Trigger node does not operate independently. It must be connected to at least one Tool node, and each Tool node becomes an individual "tool" exposed to Claude.
[Claude Desktop]
│ tools/list, tools/call (stdio)
▼
[mcp-remote 프록시] ── stdio → SSE 변환 ──▶
│ HTTP(SSE)
▼
[n8n: MCP Server Trigger]
├── [Tool: Notion 노드]
├── [Tool: Google Calendar 노드]
└── [Tool: HTTP Request 노드]mcp-remote performs unidirectional conversion from Claude Desktop (stdio) to n8n (SSE). Its role is to convert commands sent by Claude Desktop to stdio into HTTP SSE requests and forward them to n8n.
The node provides two URLs.
| URL Type | Purpose | Activation Conditions |
|---|---|---|
| Test URL | Real-time test during workflow editing | When "Listen for Test Event" is enabled in edit mode |
| Production URL | Actual Production Environment | When Workflow is in "Active (Published)" state |
Bearer Token Authentication The n8n MCP Server Trigger supports Bearer Token authentication. Clients must include the Authorization: Bearer <token> header in all requests. Bearer Tokens can be viewed or created on the Credentials tab at the top of the settings panel that appears when you click the MCP Server Trigger node.
Differences between SSE and stdio, and Bridge Tools
The n8n MCP server operates based on SSE (Server-Sent Events), but Claude Desktop expects a stdio (Standard I/O)-based MCP server. To resolve this protocol difference, an intermediary proxy tool is required.
SSE (Server-Sent Events) is an HTTP-based protocol that streams real-time data unidirectionally from a server to a client. Unlike WebSockets, it is unidirectional and operates over HTTP, making it easy to bypass firewalls. On the other hand, stdio is an inter-process communication method that utilizes the terminal's standard input and output, and is used by Claude Desktop to communicate with a local MCP server.
The two most widely used proxy tools are:
| Tools | Direction | Features |
|---|---|---|
| mcp-remote | SSE remote server → stdio | Node.js-based, ready to run with npx |
| supergateway | stdio ↔ SSE/WebSocket bidirectional | Bidirectional gateway, supports more flexible configuration |
The path to the Claude Desktop configuration file varies depending on the operating system.
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
The registration format is as follows.
{
"mcpServers": {
"my-n8n-server": {
"command": "npx",
"args": [
"mcp-remote",
"https://<N8N_HOST>/mcp/<WORKFLOW_PATH>",
"--header",
"Authorization: Bearer <MCP_BEARER_TOKEN>"
]
}
}
}Practical Application
Example 1: Managing Notion Tasks with Natural Language
This is the most intuitive use case. We will configure a flow where items are actually created in the Notion database when you type "Add three tasks to Notion today" in Claude Desktop.
n8n Workflow Configuration
[MCP Server Trigger]
│
└── [Notion Tool 노드]
├── 작업: "데이터베이스에 페이지 생성"
├── 데이터베이스 ID: (고정값 — Notion에서 복사한 DB ID 직접 입력)
└── 제목: {{$fromAI('title', '추가할 할 일 항목의 제목', 'string')}}Claude Desktop Settings
After publishing the workflow as Active, register the Production URL in claude_desktop_config.json and restart Claude Desktop, it will be available for immediate use.
Key Settings Items
| Setting Item | Value | Description |
|---|---|---|
| Tool Name | add_notion_task |
Claude recognizes the tool by this name |
| Tool Description | "Adds a new task to the Notion database. Parameter: title (string, required)" | Claude's Basis for Deciding When to Use This Tool |
$fromAI() expression |
Dynamic parameter binding | Pass values extracted by Claude from natural language to the node |
$fromAI() Expression This is a special expression written directly into the field value input field of the n8n Tool node. The format is $fromAI('파라미터명', '설명', '타입'), and it is used, for example, as $fromAI('title', '추가할 할 일 제목', 'string'). Claude extracts the corresponding value from the natural language input and automatically binds it to the field. For fixed values such as database IDs, it is appropriate to enter them directly in the node settings instead of $fromAI().
Example 2: Exposing an Internal REST API to an AI Tool
You can turn existing REST APIs into Claude's tools without developing a separate MCP server.
n8n Workflow Configuration
[MCP Server Trigger]
├── [HTTP Request Tool: 재고 조회]
│ └── GET https://internal-api.company.com/inventory
│ Query: item={{$fromAI('item_name', '조회할 제품 코드 또는 제품명', 'string')}}
│
└── [HTTP Request Tool: 주문 생성]
└── POST https://internal-api.company.com/orders
Body: {{$fromAI('order_data', '주문 정보 (JSON 형식)', 'string')}}With this configuration, when Claude Desktop asks "How much A-001 part stock is left in the warehouse?", Claude automatically selects the 재고 조회 tool, binds "A-001" to item_name, and calls the API.
Tips for Writing Tool Node Descriptions
좋은 예: "제품 코드 또는 제품명으로 창고 재고 수량을 조회합니다.
파라미터: item_name (string, 필수) — 예: 'A-001', '볼트'"
나쁜 예: "재고를 조회합니다"Claude reads the tool descriptions and determines which tool to use and when. The more specific the description, the higher the likelihood that the tool suitable for the intended purpose will be selected.
Example 3: Multi-Workflow Discovery Server
When there are dozens of workflows inside n8n, it is structured so that if Claude asks, "What automation is there?", it returns the entire list and allows you to immediately execute what you want.
Agent Orchestration is an architectural pattern in which a single AI agent (such as Claude) coordinates and calls multiple subsystems or other agents. A typical example is a multi-level execution structure that follows the path from Claude → n8n → external services.
The following is a conceptual representation of the Tool nodes to be connected to the MCP Server Trigger. In actual n8n, each item is configured as a separate Tool node, and this diagram is not intended to be directly entered anywhere.
Workflow Configuration
[MCP Server Trigger]
├── [Tool: list_workflows]
│ 설명: "현재 활성화된 모든 n8n 워크플로우 목록을 반환합니다"
│
├── [Tool: execute_workflow]
│ 설명: "워크플로우 ID로 특정 워크플로우를 즉시 실행합니다"
│ 파라미터: workflow_id (string, 필수)
│
└── [Tool: get_workflow_status]
설명: "특정 워크플로우의 마지막 실행 결과와 상태를 조회합니다"
파라미터: workflow_id (string, 필수)This pattern is a practical application of Agent Orchestration. It can be extended into a nested structure where Claude calls n8n via the MCP, and the n8n workflow calls other systems or MCP servers from within.
Pros and Cons Analysis
Advantages
| Item | Content |
|---|---|
| No Coding Required | Configure MCP tools with the n8n visual editor, so no MCP server development knowledge is required |
| Instantly utilize 400+ integrations | Instantly wrap existing n8n integrations like Google Calendar, Gmail, Slack, Notion, and more with MCP tools |
| Rapid Prototyping | Modify workflow → Verify immediately with Test URL → Repeat the entire process from modification to deployment within minutes |
| Dynamic Tool Extensions | You can expose new tools without changing existing client settings simply by adding a Tool node |
| Self-hosting Support | Data does not leave the network, making it easy to meet security and compliance requirements |
Disadvantages and Precautions
| Item | Content | Response Plan |
|---|---|---|
| SSE ↔ stdio Bridge Required | Since Claude Desktop is stdio-based, an mcp-remote or supergateway proxy is required to connect to an n8n SSE-based MCP server | It can be easily configured using the npx mcp-remote command |
| Horizontal Scale-out Constraints | SSE must maintain a persistent connection with the same server instance | /mcp* An Ingress/load balancer configuration is required to route requests to a single replica |
| Protocol Change Rate | The MCP specification is changing rapidly (March 2025 Streamable HTTP revision) | We recommend keeping your n8n version up to date and checking release notes periodically |
| Debugging Difficulty | Error tracing is difficult in the Claude → mcp-remote → n8n → External API structure | Check n8n execution logs and Claude Desktop logs (macOS: ~/Library/Logs/Claude/) together |
| Bearer Token Security | Storing tokens in plaintext in claude_desktop_config.json poses a security risk |
We recommend using environment variables ($MCP_TOKEN) or secret management tools integrated with the OS keychain |
The Most Common Mistakes in Practice
- Writing Tool node descriptions too briefly — Claude reads the description and decides which tool to select. Writing it specifically, such as "Receives product code, queries warehouse inventory, and returns quantity and location. Parameter: item_name (string, required)," rather than "Data lookup," leads to a much more accurate tool selection.
- Registering the Test URL in Claude Desktop — The Test URL works only when the workflow is in edit mode with "Listen for Test Event" enabled. The URL to be registered in Claude Desktop must be the Production URL generated after publishing the workflow as Active.
- Do not restart Claude Desktop after modifying PLACEHOLDER_26 — Changes to MCP server settings must be completely closed and restarted from Claude Desktop to take effect. Simply closing the window may not be sufficient, and on macOS, you must also completely close the menu bar icon.
In Conclusion
n8n MCP Server Trigger dramatically lowers the barrier to entry for MCP server development, enabling the construction of a powerful tool layer that allows AI agents like Claude to manipulate real-world external systems without writing code.
If you are familiar with n8n, you can build your first MCP tool today. By following the three steps below, you can experience calling external services using natural language in Claude Desktop.
- Prepare an n8n instance. If you are in a local environment, you can run it immediately using the command below. If you need external access, you can generate a temporary public URL with ngrok or utilize the free plan of n8n Cloud.
docker run -it --rm --name n8n -p 5678:5678 n8nio/n8n # 로컬 개발 시 외부 접근이 필요하다면: ngrok http 5678- Create a new workflow in n8n and configure the MCP Server Trigger.
- Search for "MCP Server Trigger" in the node search bar and add it.
- Connect a desired Tool node, such as Notion or Google Calendar, to the Trigger.
- Write the name and description of the Tool node in detail.
- Click the toggle at the top right of the workflow to publish in Active status.
- Note down the Production URL and Bearer Token from the Credentials tab of the MCP Server Trigger node settings panel.
- Open the Claude Desktop configuration file and register the MCP server. Enter the Production URL and Bearer Token into the mcp-remote configuration format described earlier, and if you completely restart Claude Desktop, you can immediately experience calling external services using natural language.
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
Next Post: How to Build a Nested Agent Architecture Where the Claude Agent Directly Calls External MCP Servers (GitHub, Slack, Internal Systems) Using n8n MCP Client Tool Nodes
Reference Materials
- MCP Server Trigger node documentation | n8n Docs
- Set up and use n8n MCP server | n8n Docs
- MCP Client Tool node documentation | n8n Docs
- Connect Claude Desktop App to MCP Server Trigger node | n8n Community
- n8n MCP Server Trigger with Claude: Complete Setup Guide | Synta
- Build your own N8N workflows MCP server | n8n workflow template
- MCP Will be the Death of Low-Code Automation, and Other Spooky Stories | n8n Blog
- GitHub - czlonkowski/n8n-mcp
- GitHub - supercorp-ai/supergateway
- mcp n8n: ultimate guide to connect Claude to your workflows | agence-scroll.com
- Orchestrating Agentic AI systems with n8n and MCP | Medium