资讯中心

n8n接入Fastgpt MCP:构建超强RAG工作流

📅 2026/9/26 12:37:59
n8n接入Fastgpt MCP:构建超强RAG工作流
1. 为什么要在 n8n 里接 Fastgpt 的 MCPn8n 接入 Fastgpt MCP 这件事本质上是把「工作流编排」和「知识库检索」这两块能力拼到一起。n8n 负责触发、分支、循环、调外部接口Fastgpt 负责把私有文档切片、向量化、按语义召回再交给大模型生成答案。两者通过 MCPModel Context Protocol对接后你在 n8n 里就能像调用一个普通工具那样直接向 Fastgpt 的知识库提问拿到带出处的回答而不需要自己写向量检索那一整套逻辑。它适合谁三类人最明显一是手里已经有一堆 PDF、Markdown、飞书文档想让它们变成可问答知识库的团队二是已经在用 n8n 做自动化但回答环节只能靠通用大模型、经常答非所问的开发者三是想搭一个可复用 RAG 工作流、后续接客服/内部助手/工单系统的同学。MCP 在这里扮演的角色你可以理解成「万能插座」——Fastgpt 把知识库能力暴露成一个标准服务端n8n 用标准客户端去插插上就能用。我试过把 Fastgpt 的知识库接到 n8n 的 AI Agent 里最直观的感受是以前要在 n8n 里手写 HTTP 请求、拼参数、解析返回现在换成 MCP Client Tool 节点填一个 SSE 地址就完事。下面按「前置准备 → 配置 → 验证 → 排障」的顺序走一遍目标是你能照抄跑通。2. 前置准备n8n、Fastgpt 与模型接入2.1 n8n 侧的环境n8n 用 Docker 起最省事版本建议 1.6x 以上MCP Client Tool 节点在新版本里才稳定。命令如下docker pull n8nio/n8n:latest docker run -it -d \ --name n8n \ -p 5678:5678 \ -v n8n_data:/home/node/.n8n \ -e N8N_SECURE_COOKIEfalse \ n8nio/n8n:latest启动后浏览器打开http://localhost:5678第一次会让你建管理员账号。N8N_SECURE_COOKIEfalse是为了本地 http 访问时不被 cookie 安全策略挡住生产环境请用 https 并去掉这个变量。2.2 Fastgpt 侧的环境Fastgpt 建议用官方 docker-compose 部署确保版本支持 MCP-Server 功能较新的 4.x 版本才有对外 MCP 能力。部署完成后登录管理后台确认「知识库」里已经有一个可用的库并且已经完成文档上传和向量化——没有向量的知识库MCP 检索会返回空。2.3 模型与 Key 的准备Fastgpt 的问答链路里大模型和向量模型都要配好。如果你本地没有 GPU 或者不想自己维护模型服务可以用兼容 OpenAI 协议的模型网关来提供对话和 embedding 能力。TaoToken 提供的就是这类统一接入官网 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 地址是 https://taotoken.net/api 。在 Fastgpt 的模型配置里把 base_url 指向它、填入对应 Key就能同时拿到对话模型和向量模型省去分别对接的麻烦。注意Fastgpt 里「语言模型」和「索引模型embedding」要分别配置两者都通了知识库检索才完整。3. 可复制配置Fastgpt MCP-Server 与 n8n 节点3.1 在 Fastgpt 创建对外 MCP-Server登录 Fastgpt 后台进入 MCP 相关配置页不同小版本菜单名略有差异一般在「应用」或「工具」区域。新建一个 MCP-Server填写参数说明示例名称n8n 里识别用fastgpt-kb描述便于团队理解产品文档知识库检索关联知识库选择已向量化的库产品手册库传输方式选 SSEsse鉴权生成的 Token复制保存创建成功后会得到一个 SSE 地址形如https://你的fastgpt域名/api/mcp/xxxx/sse。这个地址就是 n8n 要填的入口先复制到记事本。3.2 在 n8n 添加 MCP Client Tool打开 n8n新建工作流拖入一个AI Agent节点需要 LangChain 相关节点包社区版自带。在 Agent 的 Tool 区域点加号搜索并添加MCP Client Tool。配置项{ transport: sse, sseUrl: https://你的fastgpt域名/api/mcp/xxxx/sse, name: fastgpt_kb, description: 查询 Fastgpt 产品知识库输入自然语言问题返回带出处的答案 }description很关键Agent 靠它判断什么时候调用这个工具。写清楚「查什么、输入什么、返回什么」命中率会明显提升。3.3 工作流 JSON 骨架下面是一个最小可跑的骨架包含 Chat 触发、AI Agent、MCP 工具和模型节点。你可以直接导入后改地址{ nodes: [ { parameters: {}, name: When chat message received, type: n8n/n8n-nodes-langchain.chatTrigger, position: [200, 300] }, { parameters: { promptType: define, text: {{ $json.chatInput }}, options: { systemMessage: 你是产品助手优先使用 fastgpt_kb 工具检索知识库再回答。 } }, name: AI Agent, type: n8n/n8n-nodes-langchain.agent, position: [480, 300] }, { parameters: { transport: sse, sseUrl: https://你的fastgpt域名/api/mcp/xxxx/sse }, name: MCP Client Tool, type: n8n/n8n-nodes-langchain.mcpClientTool, position: [700, 460] } ], connections: { When chat message received: { main: [[{ node: AI Agent, type: main, index: 0 }]] }, MCP Client Tool: { ai_tool: [[{ node: AI Agent, type: ai_tool, index: 0 }]] } } }注意 MCP Client Tool 是通过ai_tool连接类型挂到 Agent 上的不是 main 连接导入后如果没连上手动拖一下连线即可。4. 验证请求跑一次检索增强问答配置保存后点 n8n 右上角的 Chat 按钮在对话框里输入一个只有你知识库里才有答案的问题比如「XX 产品的保修期是多久」。观察执行过程Agent 会先判断需要调用fastgpt_kb然后通过 SSE 把问题发给 FastgptFastgpt 在知识库里做向量召回把命中的片段连同问题一起交给大模型生成答案最后原路返回给 n8n。执行记录里你能看到 MCP 工具节点的输入输出输入是自然语言问题输出是带引用片段的回答。如果返回里出现了你文档中的原文片段说明链路通了。这一步的判定标准很简单答案里包含知识库独有信息而不是模型自己编的。你可以故意问一个知识库里没有的问题正常表现是 Agent 说明「知识库中未找到相关内容」而不是硬编一个答案。验证通过后双击最开头的 Chat Trigger 节点开启「Make Chat Publicly Available」保存并激活工作流就能拿到一个可分享的 chat url。后续接企业微信、飞书或自建前端都是往这个 url 或 webhook 上打。5. 本篇常见错排查MCP 节点连不上、报 SSE 超时先确认 Fastgpt 的 SSE 地址在浏览器或 curl 里能访问。n8n 跑在 Docker 里时localhost指的是容器自己如果 Fastgpt 在宿主机要把地址换成宿主机 IP 或 Docker 网络别名别用 localhost。Agent 不调用工具直接自己回答多半是工具description写得太模糊或者 systemMessage 没强调优先检索。把描述改成「当问题涉及产品参数、政策、内部文档时必须调用」并在系统提示里明确要求先检索。检索返回空检查 Fastgpt 知识库是否已完成向量化以及 MCP-Server 关联的知识库是否正确。常见坑是建了库但文档还在「待索引」状态。回答里没有出处Fastgpt 的问答配置里要开启引用返回MCP 透传时才会带上片段。这个在知识库应用的「引用」设置里勾选。n8n 版本太旧找不到 MCP Client Tool升级到较新版本或确认已安装 LangChain 节点包。旧版本没有这个节点只能退回手写 HTTP 请求。6. 把链路固定下来Key 管理与长期编码链路跑通后建议把模型接入这块也规范化。Fastgpt 里用到的对话模型和 embedding 模型如果走统一网关Key 的轮换和额度管理会省心很多。你可以在 TaoToken 控制台 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 里创建和管理 API Key接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API Keys 页面是 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。调试阶段想先验证模型通不通可以直接用模型对话页 https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 发一条消息试试。如果你打算把这条 RAG 工作流长期跑在编码助手或 Agent 场景里比如让 n8n 定时拉取工单、自动检索知识库再生成回复那模型调用量会持续上来用 Coding Plan https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 会比按次计费更划算也方便统一管理多个工作流的额度。Claude Code 这类工具要接 Anthropic 协议的话参考 https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 里的配置方式即可。最后给一个实用技巧把 MCP Client Tool 的description和 Agent 的 systemMessage 当成「提示词资产」来维护每次知识库更新后回归测几个固定问题确认召回没退化。工作流本身导出成 JSON 存进 Git换环境时改 SSE 地址和 Key 就能复用这才是「可复用 RAG 工作流」的真正含义。

看完文章,想为自己的企业也做一次专业网站诊断?

尧图顾问免费为您评估现有网站,并给出建站/改版建议与报价方案。

免费获取方案