【n8n教程】:MCP Server Trigger节点,让你的工作流秒变AI工具!
你有没有想过,让 AI(比如 Claude)直接调用你的 n8n 工作流?或者让你的工作流变成一个可复用的"工具"供外部使用?这正是 MCP Server Trigger 的魔力所在!
【n8n教程】:MCP Server Trigger节点,让你的工作流秒变AI工具!
你有没有想过,让 AI(比如 Claude)直接调用你的 n8n 工作流?或者让你的工作流变成一个可复用的"工具"供外部使用?这正是 MCP Server Trigger 的魔力所在!
MCP(Model Context Protocol)是一种标准协议,它让 AI 模型能够安全地调用你的工作流,就像调用一个真实的函数一样。而 MCP Server Trigger 节点就是实现这一切的关键。
本教程将带你一步步了解这个强大的功能,最后还会有一个完整可执行的工作流案例!
🎯 核心概念
什么是 MCP Server Trigger?
MCP Server Trigger 是 n8n 的一个特殊触发节点,它的作用是:
- 暴露工作流:将你的 n8n 工作流变成一个可被外部调用的"服务"
- 生成端点:自动创建一个唯一的 URL,外部应用可以通过这个 URL 调用你的工作流
- 连接工具:连接其他 n8n 节点,形成一套完整的工具集
MCP Server Trigger vs 普通 Trigger 的区别
| 功能 | 普通 Trigger | MCP Server Trigger |
|---|---|---|
| 工作方式 | 监听事件,自动触发 | 等待外部请求,按需触发 |
| 输出方式 | 数据传给下一个节点 | 数据通过 MCP 协议返回给客户端 |
| 适用场景 | 内部自动化流程 | 暴露给 AI 或第三方调用 |
| 连接节点 | 可连接任何节点 | 仅连接"工具节点" |
🚀 快速上手三步走
第一步:添加 MCP Server Trigger 节点
- 打开 n8n → 创建新工作流
- 点击"+"添加节点 → 搜索
MCP Server Trigger - 选中并添加该节点
搜索框输入:MCP Server Trigger
选择第一个选项,点击确认
第二步:配置节点参数
打开节点后,你会看到这些关键参数:
| 参数 | 说明 | 示例 |
|---|---|---|
| MCP URL 路径 | 自动生成的唯一路径,可自定义 | /mcp/my-tools |
| 认证方式 | 选择保护方式(测试选"无") | Bearer Token / Header Auth |
| 生产/测试 URL | 生产 URL 在工作流激活时使用 | 复制后用于 AI 客户端 |
快速配置(推荐初学者):
- 认证方式:先选
None(测试阶段) - 其他参数保持默认
- 点击
Activate workflow激活工作流
激活后,你就能看到工作流顶部显示的 MCP URL,这就是外部应用要调用的地址!
第三步:连接工具节点
MCP Server Trigger 的强大之处在于能连接多个工具:
- 从 MCP Server Trigger 节点拖出连接线
- 搜索并添加你要暴露的工具节点(如 HTTP Request、Gmail、Google Calendar 等)
- 每个工具对应一个功能,比如:
- 工具 1:获取天气信息
- 工具 2:发送邮件通知
- 工具 3:更新日程
📊 工作原理详解
MCP 通信流程
外部 AI 客户端(如 Claude)
↓
发送请求到 MCP URL
↓
MCP Server Trigger 接收
↓
执行对应的工具节点
↓
返回结果给客户端
三个关键概念
| 概念 | 含义 | 举例 |
|---|---|---|
| Test URL | 测试环境用,工作流不需要激活 | 开发和调试阶段用 |
| Production URL | 生产环境用,工作流必须处于激活状态 | AI 长期连接调用 |
| Tool Node | 暴露给外部的具体功能 | 一个工具节点 = 一个可调用的功能 |
⚙️ 常见配置场景
场景 1:暴露 HTTP API
需要让 AI 调用某个 API?这样做:
- 添加 MCP Server Trigger 节点
- 连接 HTTP Request 节点(配置 API 参数)
- 激活工作流,复制 MCP URL
- 在 Claude Desktop 或其他 MCP 客户端中添加这个 URL
场景 2:多工具组合
让 AI 能同时使用多个工具:
- 添加 MCP Server Trigger 节点
- 连接第一个工具(如 Google Calendar - 创建事件)
- 再连接第二个工具(如 Gmail - 发送邮件)
- 再连接第三个工具(如 Notion - 记录)
- 激活并复制 URL
现在 AI 可以一次调用获取所有可用工具!
🔐 安全性提示
为什么要配置认证?
你的 MCP Server Trigger 暴露在互联网上,如果没有认证保护,任何人都能调用它!
推荐做法
| 环境 | 认证方式 | 适用场景 |
|---|---|---|
| 测试 | 无(None) | 本地开发、学习阶段 |
| 生产 | Bearer Token | 推荐,用 API 密钥保护 |
| 生产 | Header Auth | 自定义认证头信息 |
快速设置 Bearer Token:
- 生成一个随机字符串(如:
sk-1234abcd) - 在 MCP Server Trigger 的 Authentication 选项选
Bearer auth - 输入你的 token
- 告诉 AI 客户端这个 token,它会在每次请求时自动附上
⚡ 实战案例:天气查询工具
下面是一个完整的可执行工作流,演示如何将一个"天气查询"功能暴露为 MCP 工具。
工作流说明
这个工作流做的事情:
- 接收来自 MCP 客户端的城市名称
- 调用开源天气 API
- 返回格式化的天气信息
完整工作流 JSON
{
"nodes": [
{
"parameters": {
"authentication": "none",
"path": "/mcp/weather-tool"
},
"id": "MCP Server Trigger",
"name": "MCP Server Trigger",
"type": "n8n-nodes-langchain.mcpTrigger",
"typeVersion": 1,
"position": [100, 200]
},
{
"parameters": {
"url": "https://api.open-meteo.com/v1/forecast",
"requestMethod": "GET",
"queryParameters": {
"parameters": [
{
"name": "latitude",
"value": "={{$json.latitude}}"
},
{
"name": "longitude",
"value": "={{$json.longitude}}"
},
{
"name": "current",
"value": "temperature_2m,weather_code"
}
]
}
},
"id": "HTTP Request",
"name": "获取天气数据",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4,
"position": [300, 200]
},
{
"parameters": {
"jsonOutput": "{ temperature: $json.current.temperature_2m, weatherCode: $json.current.weather_code, timestamp: $json.current.time }"
},
"id": "Set Data",
"name": "格式化结果",
"type": "n8n-nodes-base.set",
"typeVersion": 3,
"position": [500, 200]
}
],
"connections": {
"MCP Server Trigger": {
"main": [
[
{
"node": "HTTP Request",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request": {
"main": [
[
{
"node": "Set Data",
"type": "main",
"index": 0
}
]
]
}
}
}
使用方法
- 复制上面的 JSON
- 在 n8n 中 → 点击 Import from URL/JSON
- 粘贴 JSON → 导入工作流
- 激活工作流 → 复制 MCP URL
- 在 Claude 或其他 MCP 客户端中配置 这个 URL
现在 AI 就能通过这个工作流查询天气了!
🐛 常见问题排查
问题 1:工作流激活后没看到 MCP URL
原因: 工作流可能未成功激活
解决:
- 检查工作流右上角的
Active按钮是否已打开 - 查看浏览器控制台是否有报错信息
问题 2:MCP 客户端连接失败
原因: 认证信息不匹配或 URL 错误
解决:
- 确认复制的 URL 是完整的(包括
http://或https://) - 如果设置了 Bearer token,确认客户端有正确输入
- 尝试切换 Test URL 调试
问题 3:工作流中的参数无法接收
原因: 参数表达式写法错误
解决:
- 确保使用
$json.paramName格式访问参数 - 检查参数名大小写是否正确
- 可以在节点运行时查看 Input 数据结构
💡 最佳实践
✅ 该做的事
- ✅ 为每个工具写清楚的描述,让 AI 理解何时调用
- ✅ 设定合理的参数验证,避免无效请求
- ✅ 在生产环境启用认证,保护你的工作流
- ✅ 定期监控 Executions 页面,了解工具使用情况
- ✅ 给工具取有意义的名字(如
get_weather、send_email)
❌ 不该做的事
- ❌ 暴露敏感操作(如删除数据库记录)给不信任的 AI
- ❌ 在测试完全之前就用于生产
- ❌ 忘记在生产环境启用认证
- ❌ 设计过于复杂的工作流,导致 AI 难以理解
- ❌ 忽视工作流的错误日志
🎓 下一步学习
掌握了 MCP Server Trigger 后,你可以尝试:
- MCP Client Tool:让 n8n 去调用外部 MCP 服务
- Custom n8n Workflow Tool:将子工作流作为工具暴露
- 多 MCP 服务器协作:构建更复杂的自动化系统
- Claude Desktop 集成:在 Claude 中直接使用你的 n8n 工具
更多推荐

所有评论(0)