轻松集成Fastgpt MCP到n8n,流畅打造强大的RAG工作流程【一键快速上线至公网】真是赞不绝口!
大家好,我是袋鼠帝
我最近真的是爱上n8n了,用起来贼爽
熟练之后,3分钟内就可以搞定一个简单的功能。
关键是还支持一键发布到公网,太省事儿了~
n8n确实是一款能让普通人快速、灵活搭建AI Agent,workflow的平台工具,支持本地化部署,自由度超高(缺点就是前期上手难度有点高)。
它又被称之为德国工匠打造的 “自动化乐高”
n8n于2019 年由前《加勒比海盗》视觉设计师 Jan Oberhauser 创立,因不满 Zapier 等工具的 “不灵活” 和高成本,秉持 “自由可持续,开放且务实” 理念,打造的完全开源的自动化工作流工具。其核心目标是通过可视化 + 代码双模式,让任何人都能连接不同应用,实现复杂流程自动化(官网:https://docs.n8n.io/)。
前几期文章分享出来之后
部分朋友提出了一个问题:n8n能用RAG做知识库吗?
经过一段时间的研究,我发现n8n虽然支持用RAG搭建知识库,但是整个过程比较复杂:
它需要手动搭建文件上传向量数据库的工作流,而且还需要手动搭建一个通过RAG问答的工作流。
左边是文件上传工作流,右边是RAG问答工作流。
即便搭建好,使用起来体验感也不是太好。
所以我就在想,能不能把我最中意的Fastgpt知识库接入到n8n使用呢?
边想,我就边打开了Fastgpt的Github地址
https://github.com/labring/FastGPT
卧槽,Fastgpt最近更新挺频繁呀
最令我兴奋的是,它终于支持MCP了~
而且支持双向MCP(既可以作为客户端接入其他MCP-Server使用,又可以作为服务端对外提供MCP-Server)
而且n8n官方也在最近支持了MCP。
那岂不是可以把fastgpt的知识库发布成MCP-Server直接接入n8n啦!
经过我的实践,这个方案完全可行,而且整个对接过程非常丝滑
MCP不愧是万能插座呀,自由的神!
并且接入后的RAG效果非常棒(因为Fastgpt本身RAG就做的很棒)
整个操作步骤如下:
1.本地部署好n8n;
2.本地部署/升级Fastgpt;
3.在Fastgpt创建对外的MCP-Server;
4.在n8n接入Fastgpt—MCP-Server。
部署/升级Fastgpt
Fastgpt在v4.9.6版本开始支持了MCP
不过目前的最新版是v4.9.7-fix2
本期还是使用docker-compose来部署/升级fastgpt(需要先安装docker)
需要两个东西:
1.fastgpt的docker-compose.yml文件;
2.fastgpt的config.json文件
可以直接访问下面这个地址,获取fastgpt最新的docker-compose.yml文件:
https://github.com/labring/FastGPT/blob/main/deploy/docker/docker-compose-pgvector.yml
下面这个地址可以获取fastgpt的最新config.json文件
https://raw.githubusercontent.com/labring/FastGPT/refs/heads/main/projects/app/data/config.json
无法访问的朋友也可以在公众号后台私信:“v4.9.7-fix2” 获取上述2个文件
下面的步骤对于直接部署/升级fastgpt都适用
需要升级的话,就先备份一下旧的docker-compose.yml
然后把最新的docker-compose.yml和config.json放到同一个文件夹下
config.json里面有个MCP-Server的地址配置,需要特别注意
因为我的fastgpt和n8n都是本地docker部署的,所以fastgpt对外提供MCP-Server的地址可以填本机的局域网IP,端口固定填3005即可。
如果是云服务器部署,可以换成外网IP或者域名。
准备好之后,我们就打开文件所在路径的控制台/终端
执行docker-compose up -d 命令,看到类似下图这种日志就代表部署/升级成功。
温馨提示:如果fastgpt的镜像拉不下来,可以把docker-compose.yml文件里面的镜像都换成阿里云的镜像
创建Fastgpt MCP-Server
成功部署/升级fastgpt后
浏览器访问 127.0.0.1:3000 进入fastgpt的页面
工作台->MCP服务->新建服务
这里可以创建对外的Fastgpt MCP-Server
点开管理,可以看到,咱们可以管理这个MCP-Server下的“工具”
可以把在fastgpt创建的bot,工作流等...多个应用放到一个MCP-Server中。
但是目前看起来无法直接选择已经创建的fastgpt知识库...
卧槽,这是个很大的问题。
本来我一开始是把fastgpt的知识库接入一个bot,然后把bot放入MCP-Server,作为其中的一个工具。
但是这里面有个问题:当接入n8n之后,n8n工作流中获取到的是已经被fastgpt的大模型总结后的知识库内容,而不是知识库的原始内容,这样就比较尴尬。
想了半天,直到我看见Fastgpt的MCP-Server支持接入工作流,我就突然灵机一
可以把知识库放到工作流中呀~
说干就干,直接在fastgpt新建一个工作流,里面只添加知识库搜索和指定回复节点,配置好知识库参数(最低相关度,引用上限等等),最后点击右上角的保存并发布。
注意:工作流的名称一定要是英文,应用介绍也一定要写。
回到刚刚的MCP服务这里,创建一个只有wechatmp-knowledge工作流的MCP-Server
点击开始使用
在SSE一栏,复制这个下图中的地址
这个就是你刚刚创建的fastgpt-mcp-server的sse地址
n8n接入Fastgpt-MCP-Server
回到n8n的工作流编辑页面
在AI Agent节点的Tool这里,点击加号
添加官方的MCP Client Tool节点
在MCP Client Tool的配置中,我们填入刚刚复制的fastgpt-mcp-server的sse地址(还可以给这个节点改个形象的名称)
在chat对话框中发出问题进行测试
可以看到成功调用了fastgpt-mcp-server,并从fastgpt的知识库中获取到了正确答案~
知识库问答效果就不用多说了,fastgpt是我认为轻量LLM应用平台中,知识库效果最好的了。
另外,可以看到,我们刚刚在fastgpt创建的工作流的名称和介绍会在n8n这边用到。
最后,我们打开思路
除了把fastgpt的知识库封装到工作流,打包成MCP-Server可以快速接入n8n外。
同样也可以把fastgpt的插件、搭载知识库的bot等打包成MCP-Server对外提供出去使用。
还有,可以在fastgpt中创建一个搭载知识库的bot,发布成API的形式(fastgpt的API兼容了OpenAI API)
在n8n的AI Agent节点 添加模型那里添加fastgpt的bot
配置凭证:把base_url换成fastgpt的API地址,apikey填写bot的key
模型随便填都可以,反正不会生效(会以fastgpt bot里面配置的模型为准)
这样就ok啦!
这个方式同样可以把fastgpt的知识库接入n8n使用,只不过模型什么的配置都走fastgpt这边了。
调试完成之后,我们双击最开头的chat message节点
开启make chat publicly available
就可以得到一串chat url链接,复制下来
别忘了,把工作流保存、激活
我甚至可以在手机浏览器里面访问使用
关键它这个公网聊天页面的功能还支持非常多的定制化配置,比如支持设置密码访问,可以增加上传文件功能等等...
我觉得特别适合用来快速构建自己的MVP产品,或者搭建一些AI工作流给自己或者公司内部提效用。
除了chat message节点,其他很多触发节点都支持发布到外网访问
这块大家可以去探索一下,自由度真的太高了
如果你的n8n是部署在本地,参考这篇可以让外网访问本地n8n服务
本地n8n提供外网访问
袋鼠帝,公众号:袋鼠帝AI客栈斩获86K Star!最强开源MCP平台【双向+本地MCP】自由度拉满,太绝了~
「写在最后」
在之前n8n文章的评论区
有读者问:为什么不直接用代码实现呢?我感觉自己写代码还更容易实现。
这个问题引发了我的一些思考..
确实,n8n初期上手难度会大一些,但是熟练过后,它的效率远超传统代码。
它强大的社区生态能满足从简单到复杂的各类需求,让创意快速变为现实。
当然,复杂的企业级项目还是适合用代码开发,但对于大多数场景,n8n已然足够。
最重要的一点
我认为技术不应该是围墙,而应该是桥梁。
如果我用代码去实现,可能大部分朋友都没法搞定了。
我希望做到技术平权,让更多非技术背景的朋友也能动手参与
不管是用AI提效,还是快速搭建属于自己的MVP产品,亦或是体验创造的乐趣。
这可能就是我分享文章的初衷吧
总之,技术、工具是为人服务的,不应该是少数人的特权
当创造力不再受限于技术
每个人的想法都能照进现实
这才是科技最美的模样
当然,这条路还很长,需要我们共同努力~
发表评论