当前位置: 首页 > news >正文

AI Agent新范式:FastGPT+MCP协议实现工具增强型智能体构建

AI Agent新范式:FastGPT+MCP协议实现工具增强型智能体构建

作者:高瑞冬

本文目录

  • AI Agent新范式:FastGPT+MCP协议实现工具增强型智能体构建
    • 一、MCP协议简介
    • 二、创建MCP工具集
      • 1. 获取MCP服务地址
      • 2. 在FastGPT中创建MCP工具集
    • 三、测试MCP工具
    • 四、AI模型调用MCP工具
      • 1. 调用单个工具
      • 2. 调用整个工具集
    • 五、私有化部署支持
      • 1. 环境准备
      • 2. 修改docker-compose.yml文件
      • 3. 修改FastGPT配置
      • 4. 重启服务
    • 六、使用MCP-Proxy集成多个MCP服务
      • 1. MCP-Proxy简介
      • 2. 安装MCP-Proxy
      • 3. 配置MCP-Proxy
      • 4. 将MCP-Proxy与FastGPT集成
      • 5. 高级配置
    • 七、最佳实践建议
    • 八、总结

一、MCP协议简介

MCP协议(Model Context Protocol)是由Anthropic在2024年11月初发布的一种协议,旨在统一AI模型与外部系统之间的通信方式,简化它们之间的交互问题。随着OpenAI官方宣布支持MCP协议,越来越多的AI厂商也开始支持这一协议。

MCP协议主要包含Client和Server两部分:

  • Client(客户端):使用AI模型的一方,通过MCP Client可以为模型提供调用外部系统的能力
  • Server(服务端):提供外部系统调用的一方,实际运行外部系统的主体

FastGPT从v4.9.6版本开始,新增了两种MCP相关的功能:

  1. MCP服务:可以将FastGPT应用以MCP协议对外提供
  2. MCP工具集:可以导入外部MCP服务,让FastGPT使用外部工具

mcp-proxy是开源的mcp协议聚合代理,可以聚合多个mcp服务,并提供统一的mcp服务地址。

本文将重点介绍如何在FastGPT中集成和使用MCP工具集。另外,对于私有化部署的fastgpt,本文给出了mcp服务聚合的解决方案。从而实现海量的开源mcp组件能够快速接入Fastgpt平台,为平台上的智能体应用提供丰富的集成能力。给出了开源mcp社区和fastgpt社区资源和平台的完整对接路径。

二、创建MCP工具集

1. 获取MCP服务地址

首先,您需要获取一个支持MCP协议的服务地址。这里以高德地图的MCP服务为例,访问高德地图MCP Server获取MCP地址,格式如:https://mcp.amap.com/sse?key=xxx

2. 在FastGPT中创建MCP工具集

  1. 登录FastGPT平台

  2. 在工作台中选择"新建应用",然后选择"MCP工具集"

    创建MCP工具集

  3. 在弹出窗口中填入MCP服务地址

  4. 点击"解析"按钮,系统会自动解析出该MCP服务提供的一系列工具

  5. 点击"创建"按钮完成MCP工具集的创建

三、测试MCP工具

创建完MCP工具集后,您可以对工具集中的单个工具进行测试:

  1. 进入MCP工具集详情页面

  2. 选择需要测试的具体工具,例如maps_weather(天气查询工具)

    测试MCP工具

  3. 输入测试参数,如城市名称"杭州"

  4. 点击"运行"按钮,查看工具返回的结果

  5. 系统会显示该城市的具体天气信息

四、AI模型调用MCP工具

FastGPT支持两种方式让AI模型调用MCP工具:

1. 调用单个工具

  1. 在工作流中添加"工具调用"节点

  2. 选择之前创建的特定MCP工具,例如选择maps_weathermaps_text_search

    调用单个工具

  3. 连接工作流节点,让AI模型能够调用这些工具

  4. 测试效果:分别提问天气和地点相关问题

    左图:AI调用天气查询工具 | 右图:AI调用地点搜索工具

    天气查询结果 地点搜索结果

2. 调用整个工具集

FastGPT还支持让AI自动选择合适的工具进行调用:

  1. 在工作流中添加"MCP工具集"节点

  2. 使用"工具调用"节点连接该工具集

    工具集配置 调用效果

  3. 此时AI会根据用户问题智能选择合适的工具,获取所需信息后回答问题

五、私有化部署支持

如果您使用的是FastGPT私有化部署版本,需要以下步骤来支持MCP功能:

1. 环境准备

确保您的FastGPT版本升级到v4.9.6或更高版本。

2. 修改docker-compose.yml文件

在您的docker-compose.yml文件中添加fastgpt-mcp-server服务:

fastgpt-mcp-server:container_name: fastgpt-mcp-serverimage: ghcr.io/labring/fastgpt-mcp_server:v4.9.6ports:- 3005:3000networks:- fastgptrestart: alwaysenvironment:- FASTGPT_ENDPOINT=http://fastgpt:3000

3. 修改FastGPT配置

编辑config.json配置文件,添加以下配置(末尾不要携带"/"):

{"feConfigs": {"lafEnv": "https://laf.dev","mcpServerProxyEndpoint": "https://mcp.您的域名.com" }
}

4. 重启服务

执行以下命令重启服务:

docker-compose down
docker-compose up -d

重启完成后,您就可以在工作台看到MCP服务和MCP工具集选项了。

六、使用MCP-Proxy集成多个MCP服务

在实际应用场景中,我们可能需要使用多个MCP服务,这就需要一个聚合代理来整合这些服务。MCP-Proxy是一个开源工具,它可以将多个MCP资源服务器聚合并通过单一HTTP服务器提供。

1. MCP-Proxy简介

MCP-Proxy具有以下特点:

  • 代理多个MCP客户端:连接多个MCP资源服务器并聚合它们的工具和功能
  • SSE支持:提供SSE(Server-Sent Events)服务器以实现实时更新
  • 灵活配置:支持多种客户端类型(stdio、sse或streamable-http),可自定义设置

2. 安装MCP-Proxy

有多种方式可以安装MCP-Proxy:

通过Docker安装(推荐)

docker run -d -p 9090:9090 -v /path/to/config.json:/config/config.json ghcr.io/tbxark/mcp-proxy:latest

从源码构建

git clone https://github.com/TBXark/mcp-proxy.git
cd mcp-proxy
make build
./build/mcp-proxy --config path/to/config.json

通过Go安装

go install github.com/TBXark/mcp-proxy@latest

3. 配置MCP-Proxy

创建一个config.json文件,内容如下:

{"mcpProxy": {"baseURL": "https://mcp.example.com:5678","addr": ":9090","name": "MCP Proxy","version": "1.0.0","options": {"panicIfInvalid": false,"logEnabled": true,"authTokens": ["DefaultTokens"]}},"mcpServers": {"github": {"command": "npx","args": ["-y","@modelcontextprotocol/server-github"],"env": {"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"}},"fetch": {"command": "uvx","args": ["mcp-server-fetch"]},"amap": {"url": "https://mcp.amap.com/sse?key=<YOUR_TOKEN>"}}
}

注意:1,为了方便测试,配置文件的authTokens部分可以删除
2,baseURL需要填写外部可以访问的MCP-Proxy的地址(包含端口)(比如使用frpc内网穿透后的外部访问地址),例如https://mcp.example.com:5678

这个配置文件定义了三个MCP服务:

  • github:使用@modelcontextprotocol/server-github提供GitHub功能
  • fetch:使用mcp-server-fetch提供网络请求功能
  • amap:使用高德地图的MCP服务提供位置服务

4. 将MCP-Proxy与FastGPT集成

完成MCP-Proxy配置和部署后,您将得到一个统一的MCP服务地址,例如https://mcp.example.com:5678/{clientName}/sse。这个地址可以直接在FastGPT中使用:

  1. 在FastGPT工作台中选择"新建应用",然后选择"MCP工具集"
  2. 在MCP地址框中填入MCP-Proxy的地址,例如https://mcp.example.com:5678/amap/ssehttps://mcp.example.com:5678/github/ssehttps://mcp.example.com:5678/fetch/sse
  3. 点击"解析",系统会自动解析出该服务提供的所有工具
  4. 点击"创建"完成工具集创建

5. 高级配置

MCP-Proxy提供了丰富的高级配置,包括:

  • 工具过滤:可以设置允许或阻止特定工具
"options": {"toolFilter": {"mode": "block","list": ["create_or_update_file"]}
}
  • 认证令牌:可以为每个服务设置不同的认证令牌
"options": {"authTokens": ["SpecificTokens"]
}
  • 多种通信协议:支持stdio、sse和streamable-http三种通信协议

七、最佳实践建议

  1. 工具组合:不同类型的MCP工具可以组合使用,例如将地图查询与天气查询结合,为用户提供更全面的信息。

  2. 参数调试:在正式使用前,建议对每个工具进行充分测试,了解其参数要求和返回结果格式。

  3. 错误处理:在工作流设计中,考虑添加错误处理节点,处理工具调用可能出现的异常情况。

  4. 提示词优化:为AI模型提供清晰的指引,说明何时应该调用哪些工具,以及如何解析工具返回的结果。

八、总结

FastGPT的MCP工具集成功能极大地扩展了平台的能力边界,通过统一的MCP协议,使FastGPT能够轻松对接各种外部服务和工具。不管是地图服务、天气查询,还是其他各类API服务,都可以通过MCP协议集成到FastGPT中,让AI模型能够获取实时、准确的外部信息,为用户提供更加智能、全面的服务。

而mcp-proxy的集成使用,则可以让FastGPT平台上的智能体应用,快速接入海量的开源mcp组件,从而实现更加丰富的应用场景。两者结合实现了AI开源生态集成的闭环。

随着越来越多的服务提供商支持MCP协议,FastGPT的MCP工具集将变得更加丰富和强大,为用户带来更多可能性。

http://www.xdnf.cn/news/230275.html

相关文章:

  • 2024睿抗CAIP-编程技能赛-本科组(省赛)题解
  • 软考:硬件中的CPU架构、存储系统(Cache、虚拟内存)、I/O设备与接口
  • iview内存泄漏
  • Copilot重磅更新:引用文件夹创建Word文档
  • OpenCV 4.7企业级开发实战:从图像处理到目标检测的全方位指南
  • 二进制如何与三生原理实现统一?
  • LVGL -按键介绍 下
  • C# 高效操作excel文件
  • JavaWeb学习打卡-Day6-SpringBean管理、SpringBoot自动装配、Maven高级
  • JConsole监控centos服务器中的springboot的服务
  • AbMole小百科:OK432如何为肿瘤和免疫研究开辟新路径?
  • huggingface下载数据和模型,部分下载,本地缓存等常见问题踩坑
  • 计算机视觉综合实训室解决方案
  • Java 未来技术栈:从云原生到 AI 融合的企业级技术演进路线
  • 正向代理、反向代理机制与 Windows和Linux系统代理设置
  • 插入到word里面的用origin画的图,怎么获取图片细节?
  • AI伦理与监管:全球政策对比与中国实践
  • 【MongoDB篇】MongoDB的文档操作!
  • 数字中国的建设之路:超聚变以“智算数能”四大密钥,共建智能体时代
  • Django 学习指南:从入门到精通(大体流程)
  • VSU虚拟化主机
  • Qwen3 模型架构和能力概览
  • C# 接口 概述
  • 数据结构之双链表
  • Vue3中到达可视区域后执行
  • mac电脑pytest生成测试报告
  • Java高阶程序员学习计划(详细到天,需有一定Java基础)
  • Webug4.0通关笔记06- 第8关CSV注入
  • golang接口和具体实现之间的类型转换
  • 分布式架构:Dubbo 协议如何做接口测试