N8N手把手入门系列(4.3):5分钟发布你自己的MCP服务
开篇
前几篇我们已经把N8N生态下如何使用MCP的各种方法讲差不多了。总是调用别人的MCP服务,能不能我们自己写个MCP给别人提供服务呢?这在N8N环境下其实也非常简单,让我们快速上手试下。
-
• 4.1 N8N官方MCP接入指南 -
• 4.2 N8N社区MCP Client节点使用指南 -
• 4.2.1 N8N接入MCP之社区方案(一),使用高德地图查询天气预报,并通过语音播报。 -
• 4.2.2 N8N接入MCP之社区方案(二),使用高德地图完成自行车骑行路线规划。 -
• 4.3 5分钟发布你自己的MCP服务
准备工作
-
• 你的N8N需要能外网访问,最好是HTTPS协议。没准备好的朋友可能需要参考下这篇:n8n中文版安装指南 -
• 注册魔搭社区 https://modelscope.cn/mcp,我们需要用到它提供的MCP-Inspector功能,方便我们在线调试自己的MCP服务。
5分钟发布自己的MCP服务
我们这次创建一个MCP服务Demo,准备提供三个Tool能力:加法,乘法,翻译。整个服务由1个主工作流和3个子工作流

主流程
主流程其实就由两部分组成,核心的MCP Server Tigger节点和若干个Call n8n Workflow Tool节点。我们先添加一个MCP Server Tigger节点。
-
1. MCP Server Tigger节点,其实就是设置如何对外暴露MCP服务,而URL的主体早在安装配置N8N阶段就已经确定的。在我图中的例子中,https://n8n.72live.com就是我整个N8N服务器配置的主域名。
-
• 测试URL/生成URL,会分别使用mcp-test和mcp作为后缀进行区分 -
• Path,默认是一串Hash值,可以自行修改为你希望的名字。 -
• Authentication,这个是访问授权方式。 -
• None,就是任何人可以直接访问 -
• Bearer,类似API Key -
• Header,就是用户名密码

-
2. MCP Server Tigger节点下你可以添加各种Tool来提供功能,但我推荐使用Call n8n Workflow Tool,即把一个N8N工作流当成一个Tool来调用,并对外提供MCP服务。
-
• Name,这个就是访问MCP的Tool List时,会返回的工具名; -
• Description,可以不写,不影响使用; -
• Workflow,通过下拉菜单选择一个现有的工作流作为子流程,并会自动加载该工作流需要的参数列表在下方。 -
• Workflow Inputs, 点击每个参数后的那个星形图标,让系统自己搞定。

当然,我们现在还没准备好子流程,所以无法完成添加工作。
子流程:乘法和加法工作流
-
1. 新建一个新的工作流叫SubFlow: 加法 -
2. 然后点击第一步添加When Executed by Another Workflow/当另一个工作流被调用时,这个节点主要用于设置整个子流程能接受什么样的参数。
-
• Input data mode,提供了三种形式: -
• Define using JSON example,通过JSON格式的例子来定义;

-
• Define using fields blow,通过定义字段名和字段类型列表;

-
• Accept all data,啥都行。
-
3. 添加一个Code节点,作为演示,我们添加两行代码完成两个数字变量相加的逻辑就行了。

$input.item.json.sum = ($input.item.json?.num1 ?? 0) + ($input.item.json?.num2 ?? 0);
return $input.item;
-
4. 通过复制该工作流并改名得到第二个子工作流SubFlow: 乘法,只需要把Code节点中的+号改成*号就行了
子流程:翻译
-
1. 这个子流程稍不一样一点,让我们来看一看,首先它的入口节点,我填写的JSON例子稍不同,因为参数是content和language

-
2. 然后添加了一个Basic LLM Chain节点,并挂载一个大模型来提供翻译能力。并修改Source for Prompt (User Message)
为Define below,然后Prompt (User Message)里填写
你是个翻译专家,会把 内容:{{ $json.content }},翻译成语言:{{ $json.language }}。 只输出翻译后内容,不输出其他信息

最后的配置
我们已经拥有1个还未配置完的主流程,和3个完成了的子流程。这时我们重新回到主流程设计页,分别重新编辑三个调用子流程的节点,选好对应的子流程并设置所有参数都由系统自动设定。
最后记得保存主流程之后,并点击旁边的Active/活动,设成绿色状态。
此时,你的MCP服务已经成功启动了。
调用验证
现在我们需要使用魔搭社区提供的在线MCP-Inspector了:
https://modelscope.cn/studios/modelscope/mcp-inspector
-
1. 选择SSE模式 -
2. 把我们MCP的URL地址到这里的URL中 -
3. 点击Connect,正常的话,我们应该就可以顺利连到我们的MCP服务上了。 -
4. 点击List Tools,获取我们MCP的3个方法列表 -
5. 选中具体的Tool,填写参数后点Run,应该就可以得到调用结果了

-
7. 此时,如果我们切回N8N的工作流界面,点击设计界面上方的编辑器/执行的执行Tab,可以查看到工作流的执行日志。

在选中一次执行记录后,还可以点击设计界面中的具体节点,查看节点执行过程中的数据和错误情况。
总结
我们通过最简化的实验场景,展示了如何通过MCP Server Tigger节点,快速把N8N工作流发布成为一个对外的MCP服务。
至此,在N8N上如何使用和发布MCP的方方面面就算讲完了。







