访问 n8n MCP 服务器
访问 n8n MCP 服务器
通过 n8n 内置的 MCP 服务器,将支持的 MCP 客户端连接到你的 n8n 工作流。
该服务器允许 Lovable 或 Claude Desktop 等客户端安全地连接到 n8n 实例。连接后,这些客户端可以:
- 在已标记为 MCP 可用的工作流中进行搜索
- 获取工作流的元数据和触发信息
- 触发并运行已开放的工作流
实例级 MCP 访问与 MCP Server Trigger 节点的区别
实例级 MCP 访问允许你创建每个 n8n 实例一个连接,使用集中式身份验证,并选择哪些工作流可以被访问。已启用的工作流无需为每个工作流单独配置即可轻松查找和运行。
相比之下,MCP Server Trigger 节点是在单个工作流内部配置的。该节点仅向 MCP 暴露该工作流中的工具,当你希望在一个工作流内定制特定的 MCP 服务器行为时,这种方式很有用。
使用实例级 MCP 访问时的重要注意事项
- 这不是一种通过 AI 客户端构建或编辑工作流的方式;工作流的创作仍然在 n8n 中进行。
- 它不会将实例中的所有工作流都暴露出去,你必须先在实例级别启用 MCP,然后为每个工作流单独启用。
- 它的范围不按 MCP 客户端区分,任何已连接的客户端都能看到你为 MCP 访问启用的所有工作流。
启用 MCP 访问
适用于 Cloud 和自托管实例
- 导航至 设置 > 实例级 MCP
- 切换 启用 MCP 访问(需要实例所有者或管理员权限)。

启用后,你将看到:
- 已向 MCP 客户端开放的工作流列表
- 已连接的 OAuth 客户端列表
- 用于启用/禁用实例级访问的主要 MCP 开关
- 连接详情 按钮,点击后显示连接 MCP 客户端的详细说明

禁用: 将主要 MCP 开关关闭即可。
适用于自托管用户:完全禁用
要完全移除该功能,请设置以下环境变量:
N8N_DISABLED_MODULES=mcp
此操作将移除 MCP 端点并隐藏所有相关 UI 元素。
设置 MCP 身份验证
连接详情 弹出菜单为 MCP 客户端提供两种身份验证选项:
- OAuth2
- 访问令牌(Access Token)

使用 OAuth2
从 OAuth 标签页复制你的实例服务器 URL,并用于配置你的 MCP 客户端。连接后,客户端会将你重定向到 n8n 进行授权。
撤销客户端访问
要撤销已连接 MCP 客户端的访问权限:
- 导航至 设置 > 实例级 MCP。
- 切换到 已连接的客户端 标签页,你将看到已连接 OAuth 客户端的表格。
- 使用每个客户端行中的操作菜单撤销特定客户端的访问权限。

使用访问令牌
使用你的实例服务器 URL 以及从 连接详情 菜单的 访问令牌 标签页中获取的个人 MCP 访问令牌。
首次访问 MCP 访问页面 时,n8n 会自动为你的账户生成一个绑定到你用户账号的个人 MCP 访问令牌。
注意
请立即复制你的令牌。以后再访问时,你只能看到经过脱敏处理的值,且复制按钮将被禁用。
轮换令牌
如果你丢失了令牌或需要轮换它:
- 导航至 设置 > 实例级 MCP。
- 点击右上角的按钮,打开 连接详情 菜单。
- 切换到 访问令牌 标签页。
- 使用脱敏令牌值旁边的按钮生成新令牌。
生成新令牌时,n8n 会撤销之前的令牌。
- 用新值更新所有已连接的 MCP 客户端。

将工作流开放给 MCP 客户端
工作流资格要求
工作流要能被 MCP 客户端访问,必须满足以下条件:
- 已发布
- 包含以下其中一种触发节点:
- Webhook
- Schedule(定时)
- Chat(聊天)
- Form(表单)
默认情况下,没有工作流对 MCP 客户端可见。你必须为每个想要开放的、符合条件的工作流显式启用访问权限。
在评估工作流资格时,n8n 仅考虑工作流的已发布版本。如果某个工作流的草稿版本中添加了受支持的触发器,则在该版本发布之前不会被视为符合条件。
注意
工作流取消发布后,n8n 会移除其 MCP 访问权限。再次发布工作流时,你需要重新启用访问权限。
启用访问
方式一:从 MCP 设置页面(n8n v2.2.0 及以上版本可用)
- 点击 启用工作流 按钮(在工作流表格头部或表格空状态下显示)
- 搜索目标工作流(按名称或描述),并从列表中选择它
- 点击 启用 按钮确认
方式二:从工作流编辑器
- 打开工作流。
- 点击右上角的工作流主菜单(
...)。 - 选择 设置。
- 切换 在 MCP 中可用。
方式三:从工作流列表
- 前往 工作流。
- 打开工作流卡片上的菜单。
- 选择 启用 MCP 访问。
管理访问权限
实例级 MCP 设置页面显示所有对 MCP 客户端可用的工作流。从这个列表中,你可以:
- 直接打开工作流、其所在项目或父文件夹
- 使用操作菜单撤销访问权限(或使用工作流卡片菜单中的 禁用 MCP 访问)
- 使用操作菜单更新工作流描述(或使用工作流编辑器中的菜单)
- 使用 启用工作流 按钮为更多工作流启用访问权限(n8n v2.2.0 及以上版本可用)
工作流描述
为了帮助 MCP 客户端识别工作流,你可以按如下方式添加自由文本描述:
-
方式一:从 实例级 MCP 页面
- 导航至 设置 > 实例级 MCP。
- 确保你在 工作流 标签页上。
- 使用目标工作流所在行的操作菜单,选择 编辑描述 操作。
- 或者,直接点击描述文本打开编辑对话框。
-
方式二:从工作流编辑器
- 打开工作流。
- 点击右上角的工作流主菜单(
...)。 - 选择 编辑描述。

通过 MCP 客户端执行工作流
MCP 客户端可以根据你的请求执行符合条件的工作流。当客户端触发工作流时,工作流在 n8n 中像往常一样运行,你可以在 执行记录 列表中监控其执行。执行完成后,MCP 客户端将获取结果。
提供输入数据
MCP 客户端通常能够评估工作流所需的输入。如果你有 Webhook 触发器,并且发现客户端难以确定正确的输入,建议在工作流描述中提供这些信息。
工作流超时
n8n 对 MCP 客户端触发的工作流执行强制设置 5 分钟超时。如果工作流未能及时完成,n8n 会停止执行并向 MCP 客户端发送错误,忽略你在工作流设置中为 MCP 触发执行设置的超时时间。
限制
- 如果工作流中有多个受支持的触发器,MCP 客户端可能只能使用其中一个(第一个)来触发工作流。
- 不支持执行带有多步表单或任何类型的人机交互流程的工作流。
- 不支持二进制输入数据,MCP 客户端只能为工作流提供基于文本的输入。
示例
将 Lovable 连接到 n8n MCP 服务器
- 在 Lovable 中配置 MCP 服务器(OAuth)。
- 导航至你的工作区 设置 > 集成。
- 在 MCP Servers 部分,找到 n8n 并点击 Connect。
- 输入你的 n8n 服务器 URL(显示在 MCP 访问 页面上)。
- 保存连接。如果成功,n8n 会将你重定向以授权 Lovable。
- 验证连接。
- 连接后,Lovable 可以查询启用了 MCP 访问的工作流。
- 示例:让 Lovable 构建一个列出用户并允许删除用户的工作流 UI。
将 Claude Desktop 连接到 n8n MCP 服务器
使用 OAuth2
- 在 Claude Desktop 中导航至 设置 > 连接器。
- 点击 添加自定义连接器。
- 输入以下详细信息:
- 名称: n8n MCP
- 远程 MCP 服务器 URL: 你的 n8n 基础 URL(显示在 实例级 MCP 页面上)
- 保存连接器。
- 出现提示时,授权 Claude Desktop 访问你的 n8n 实例。
使用访问令牌
注意
此操作需要最新版本的 Node.js。
在你的 claude_desktop_config.json 文件中添加以下条目:
{
"mcpServers": {
"n8n-mcp": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--streamableHttp",
"https://<YOUR_N8N_HOST>/mcp-server/http",
"--header",
"authorization: Bearer <YOUR_TOKEN>"
]
}
}
}
其中请替换:
<YOUR_N8N_HOST>:你的 n8n 基础 URL(显示在 实例级 MCP 页面上)<YOUR_TOKEN>:你生成的令牌
将 Claude Code 连接到 n8n MCP 服务器
使用以下 CLI 命令:
claude mcp add --transport http n8n-mcp https://<YOUR_N8N_HOST>/mcp-server/http \
--header "Authorization: Bearer <YOUR_TOKEN>"
或者,在你的 claude.json 文件中添加以下条目(同样使用上方说明的值替换占位符)。
将 Codex CLI 连接到 n8n MCP 服务器
在你的 ~/.codex/config.toml 文件中添加以下条目:
[mcp_servers.n8n_mcp]
command = "npx"
args = [
"-y",
"supergateway",
"--streamableHttp",
"https://<YOUR_N8N_HOST>/mcp-server/http",
"--header",
"authorization:Bearer <YOUR_TOKEN>"
]
(使用你的 n8n 基础 URL 和生成的令牌替换相应占位符。)
将 Google ADK 智能体连接到 n8n MCP 服务器
以下是创建连接到远程 n8n MCP 服务器的智能体的示例代码:
from google.adk.agents import Agent
from google.adk.tools.mcp_tool import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPServerParams
N8N_INSTANCE_URL = "https://localhost:5678"
N8N_MCP_TOKEN = "YOUR_N8N_MCP_TOKEN"
root_agent = Agent(
model="gemini-2.5-pro",
name="n8n_agent",
instruction="Help users manage and execute workflows in n8n",
tools=[
McpToolset(
connection_params=StreamableHTTPServerParams(
url=f"{N8N_INSTANCE_URL}/mcp-server/http",
headers={"Authorization": f"Bearer {N8N_MCP_TOKEN}"},
),
)
],
)
更多详情,请参阅 Connect ADK agent to n8n。
故障排除
如果在将 MCP 客户端连接到 n8n 实例时遇到问题,请考虑以下几点:
- 如果你使用的是基于云的 MCP 客户端,请确保你的 n8n 实例可以被公开访问。
- 验证 n8n 设置中已启用 MCP 访问。
- 检查你想要访问的工作流是否已标记为在 MCP 中可用。
- 确认 MCP 客户端中的身份验证方式(OAuth2 或访问令牌)已正确配置。
- 查看 n8n 服务器日志,检查是否有与 MCP 连接相关的错误信息。
- 如果你使用的是桌面版 MCP 客户端,请确保已安装最新版本的 Node.js。