项目简介

该仓库包含了一系列与AI Agent相关的代码示例,其中包括一个基于Model Context Protocol (MCP) 实现的简单工具服务。此服务利用'FastMCP'库构建,提供了通过标准化协议调用外部功能的能力。

主要功能点

  • 工具注册与执行: 提供了两个示例工具,一个用于根据ID从CSV文件查询任务详情,另一个用于查询指定城市的天气信息。
  • MCP协议支持: 服务端实现了MCP协议,能够接收客户端发起的工具调用请求,执行相应功能,并返回结果。
  • Stdio传输: 支持通过标准输入/输出流进行通信,方便本地测试和集成。

安装步骤

  1. 克隆仓库: 将整个Agent仓库克隆到本地。
  2. 安装依赖: 确保您已安装Python 3.11+。导航到仓库根目录,通常需要安装包含LangChain、LangGraph等依赖,具体请查看项目中的依赖管理文件(如'requirements.txt'或'pyproject.toml')。运行相应的命令安装依赖。
  3. 配置环境变量: 创建一个'.env'文件在仓库根目录,并根据需要配置API密钥和其他设置。虽然MCP服务本身可能不需要所有LLM相关的API KEY,但为了运行仓库中的其他示例或完整的Agent应用,这些配置是必需的。
  4. 准备数据: MCP服务中的任务查询工具需要一个名为'task.csv'的文件。请在'mcp/'目录下创建此文件,包含'Task ID', 'Description', 'Status'等列并填充示例数据。

服务器配置 (供 MCP 客户端使用)

MCP客户端需要配置如何启动并连接到服务器。对于此服务器,典型的配置信息(以JSON格式表示时)将包含以下关键参数:

  • 'server_name': 一个描述服务器的名称,例如 '"我的MCP工具服务"'(字符串类型)。
  • 'transport': 指定客户端与服务器通信的传输协议,对于此服务,应设置为 '"stdio"'(字符串类型)。
  • 'command': 启动服务器进程的命令及其初始参数。这是一个字符串数组,例如 '["python", "path/to/your/cloned/repo/mcp/mcp_tool.py"]'。数组的第一个元素是可执行文件(如'python'),后续元素是脚本路径和启动脚本所需的其他固定参数(字符串数组)。
  • 'args': 传递给启动命令的额外命令行参数,一个字符串数组(可选)。
  • 'env': 启动服务器进程时所需的环境变量,一个键值对对象(可选)。

客户端将使用这些信息启动并连接到MCP服务器进程。

基本使用方法

  1. 启动MCP服务器: 打开终端,导航到仓库根目录,运行命令 'python mcp/mcp_tool.py'。服务器将通过标准输入/输出运行,并等待客户端连接。
  2. 启动MCP客户端: 在另一个终端中,导航到仓库根目录,运行命令 'python mcp/client.py mcp/mcp_tool.py'。客户端将连接到已启动的服务端,并允许您输入查询进行交互。客户端会利用连接到的MCP服务提供的工具(任务查询、天气查询)来处理您的输入。
  3. 进行交互: 在客户端终端输入问题,例如“查询任务ID为1的任务详情”或“查询北京天气”,客户端将通过MCP协议调用服务端的相应工具,并显示结果。

注意: 在生产环境中,您可能需要将MCP服务部署为长期运行的进程,并使用更健壮的传输方式(如WebSocket)。此示例主要用于演示通过Stdio进行的基本交互。

信息

分类

网页与API