基于 FastGPT 与 MCP 协议构建工具增强型智能体
MCP 协议简介
MCP(Model Context Protocol)是 Anthropic 在 2024 年 11 月推出的一种通信协议,旨在统一 AI 模型与外部系统的交互方式。随着 OpenAI 等主流厂商宣布支持该协议,越来越多的 AI 应用开始接入这一标准。
MCP 架构主要包含两部分:
- Client(客户端):通常是 AI 模型或集成平台,通过 Client 获取调用外部系统的能力。
- Server(服务端):提供具体功能的服务端,实际运行外部逻辑的主体。
FastGPT 从 v4.9.6 版本起原生支持两种 MCP 能力:
- MCP 服务:将 FastGPT 应用本身作为 MCP Server 对外暴露。
- MCP 工具集:导入外部 MCP 服务,让 FastGPT 能够调用第三方工具。
此外,mcp-proxy 作为一个开源聚合代理,可以将多个分散的 MCP 服务汇聚成统一的地址,方便集中管理。
本文将重点演示如何在 FastGPT 中集成和使用 MCP 工具集,并给出私有化部署下的服务聚合方案。
创建 MCP 工具集
获取 MCP 服务地址
首先需要准备一个支持 MCP 协议的服务端地址。以高德地图为例,访问其官方文档获取 MCP Server 地址,格式通常类似:
https://mcp.amap.com/sse?key=xxx
确保该地址可被你的 FastGPT 实例访问,如果是内网环境,需注意网络连通性。
在 FastGPT 中创建工具集
登录 FastGPT 控制台后,按以下步骤操作:
- 进入工作台,选择'新建应用'。
- 在配置窗口填入上一步获取的 MCP 服务地址。
- 点击'解析'按钮,系统会自动拉取并展示该服务提供的工具列表。
- 确认无误后点击'创建',即可完成工具集的初始化。
![创建界面示意]
测试 MCP 工具
工具集创建完成后,建议先进行单工具测试,确保连接正常。
- 进入 MCP 工具集详情页。
- 选择需要测试的具体工具,例如
maps_weather(天气查询)。 - 输入测试参数,如城市名称'杭州'。
- 点击'运行'查看返回结果。
如果配置正确,系统应能返回该城市的实时天气信息。这一步很关键,能提前发现鉴权或网络问题。
AI 模型调用 MCP 工具
FastGPT 提供了两种让 AI 模型使用工具的途径,分别适用于不同场景。
调用单个工具
如果你希望模型明确知道要调用哪个特定功能,可以在工作流中添加'工具调用'节点。
- 拖入'工具调用'节点。
- 关联之前创建的特定 MCP 工具(如
maps_weather)。 - 连接上下游节点,让数据流转起来。
这种方式适合任务明确的场景,比如用户直接问'杭州天气怎么样',模型会精准调用天气接口。
调用整个工具集
当用户意图不明确时,可以让 AI 自动判断使用哪个工具。这需要在流程中添加'MCP 工具集'节点。
- 添加'MCP 工具集'节点。
- 关联包含多个工具的整体集合。
- 使用'工具调用'节点连接该集合。
此时,AI 会根据用户问题的语义,智能选择最合适的工具获取信息后再作答。这种模式更适合开放式的助手场景。
私有化部署支持
对于本地部署的 FastGPT 实例,由于网络隔离,可能需要额外配置才能连接外部 MCP 服务。


