MCP + n8n构建高效AI工作流

MCP上文已经介绍过,

探索模型上下文协议(MCP):大型语言模型与外部世界的桥梁

今天来点干货,本文将通过实战来展示MCP的强大拓展能力,当然它的强大之处也离不开外部的支持,比如支撑本次实战的n8n,下面简单介绍下什么是n8n



什么是n8n?

n8n是一款开源的工作流自动化平台,旨在帮助用户将各种应用和服务连接起来,实现任务的自动化处理。 其直观的可视化界面使用户无需编写大量代码即可创建复杂的自动化流程,适用于技术和非技术用户。  Github上20k fork以及75k starred, 地址:https://github.com/n8n-io/n8n


主要特点:

  • 开源与自托管: n8n采用公平代码许可(Fair-code License),允许用户自托管,确保对数据和部署的完全控制。 
  • 广泛的集成能力: 内置超过400个节点,支持与各种应用和服务的集成,包括CRM、社交媒体、数据库等。 
  • 可视化工作流设计: 提供拖放式界面,用户可以直观地设计和管理多步骤的自动化流程。 
  • AI功能: n8n结合了AI能力,允许用户构建智能代理和高级自动化流程。 

应用场景:

  • 数据同步: 在不同平台之间自动同步数据,确保信息一致性。
  • 通知系统: 根据特定事件触发通知,提高响应速度。
  • 报告生成: 定期自动生成并发送报告,节省时间和精力。

本地部署n8n

npx安装n8n

  1. npx n8n

或者通过docker安装

  1. docker volume create n8n_data
  2. docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n/.n8n docker.n8n.io/n8nio/n8n

再或者通过源码直接运行

  1. git clone https://github.com/n8n-io/n8n.git
  2. cd n8n
  3. npm install 

笔者通过docker运行,运行成功后可以访问本地网页 http://localhost:5678 能成功打开,说明安装成功了,完成注册登录后,就可以进行下一步了🚀

 

安装MCP n8n社区节点

在默认的n8n环境中,并没有对MCP的支持,需要手动安装一下。

进入个人账号的设置页面

点击”社区节点“

选择”安装一个社区节点“,并输入n8n-nodes-mcp
等待安装结束,就可进入我们的n8n工作流的MCP之旅~

创建AI工作流

进入n8n工作流,安装MCP节点成功后你可以看到如下界面

接下来开始创建我们真正的工作流,由于构建工作流的过程稍微有点繁琐,请耐心阅读,如果您已经知道这些过程请直接跳过,进入其他实战
1. 创建On Chat Message
2.添加 AI Agent
添加完AI Agent后 会出现一个感叹号(在上图可见),这是提醒你这个Agent还没有配置模型,这时候你需要添加一个模型,笔者接入的是OpenAi的gpt-4o-mini模型
3.添加MCP Tool
点击 AI Agent 下面的Tool加号即可添加
注:这一步非常关键,是n8n链接MCP服务的核心通道。
点击后会出现如下界面
如果你是首次配置则需要配置一些凭证(即哪些MCP服务器)

这里你可以配置本地和远程的MCP服务器,笔者以本地的Tavily MCP服务器为例(如果不知道Tavily是什么的自行搜索引擎看看,本文不再赘述,官方地址在这里:https://tavily.com/),使用方法看以上截图,当然我也把比较难打的字给你抠出来方便复制粘贴,当然在你使用本例中的MCP服务,你还需要搞定npx环境,请自行DeepSeek (#^.^#)


  1. npx

  2. -y tavily-mcp@0.1.4

  3. TAVILY_API_KEY=xxxx

申请Tavily API Key在这里:https://tavily.com/
经过一段时间等待你的环境已经好了,那继续下一个流程。
4.再次配置AI Agent
这一步的作用是让AI Agent能使用MCP工具,编辑结果如下:

现在有了工具列表,缺少工具执行,所以我们还需要添加一个工具执行,执行步骤和3一样操作只不过细节稍微不同,如图所示:
这里用到了n8n一个内置的函数 fromAI, 相关文档在这里(请自行研究):https://docs.n8n.io/advanced-ai/examples/using-the-fromai-function/#let-the-model-fill-in-the-parameter
至此,我们所有的工作基本上已经完成,可以验证效果,笔者本地效果如下:
这些当然这些结果你可以存储或者发送到其他服务,完全都有您来决定,n8n的工作流还是很强大的,能帮我们解决一些重复劳动的问题,具体要怎么玩就得发挥你的想象了,你想象有多广,它就能支持多离谱(有点夸张)。

总结

将 Model Context Protocol(MCP)与 n8n 相结合,能够显著增强工作流的自动化和智能化水平。n8n 是一款开源的工作流自动化工具,允许用户通过可视化界面连接不同的服务和应用程序,创建自定义的自动化流程。MCP 则是一种协议,旨在通过标准化的接口,使大型语言模型(LLM)能够与外部工具和服务进行交互。

通过在 n8n 中集成 MCP,用户可以在其工作流中调用各种 MCP 工具,利用 AI 的强大功能来处理复杂任务。例如,用户可以设置一个工作流,自动抓取特定网站的内容,使用 AI 模型进行分析,然后将结果存储或发送到指定位置。这种集成不仅提高了工作效率,还使得非技术用户也能通过简单的配置,利用 AI 技术完成复杂的自动化任务。

社区已经开发了相关的 n8n 节点插件,如 n8n-nodes-mcp,使得在 n8n 中与 MCP 服务器的交互变得更加便捷。这些插件支持多种连接方式,包括 STDIO 和 SSE,用户可以根据需求选择适合的连接方式。

总的来说,将 MCP 与 n8n 结合,能够为用户提供一个强大且灵活的自动化平台,充分利用 AI 的能力,简化复杂的工作流程,提升生产力。


(文:PyTorch研习社)

欢迎分享

发表评论