AgentPool MCP 服务器

使用说明

  • 项目简介
    • 该仓库实现了一个面向 MCP(Model Context Protocol)的服务端框架,能托管资源(Resources)、注册并执行工具(Tools)、定义并渲染提示模板(Prompts),并通过 JSON-RPC 与客户端进行通信。服务器侧负责会话管理、能力声明和多传输协议支持(如 Stdio、SSE、WebSocket),以为 LLM 应用提供安全、可扩展的上下文服务框架。
  • 主要功能点
    • MCP 服务端核心功能
      • 资源管理:提供对资源的托管、读取、写入与查询能力,便于 LLM 客户端获取上下文所需的数据。
      • 工具注册与执行:注册外部工具/方法,LLM 可以通过 MCP 调用并获取结果。
      • Prompt 模板:支持定义与渲染可自定义的 Prompt 模板,便于多种交互模式。
    • JSON-RPC 通信:服务器端接收来自客户端的 JSON-RPC 请求,返回标准化的 JSON-RPC 响应,或发送通知。
    • 会话与能力:会话管理、能力声明,以及对不同传输协议的支持,提升互操作性和扩展性。
    • 多传输协议支持:默认或可扩展的传输层实现,便于在不同环境下部署(如本地、终端、浏览器等)。
  • 安装步骤
    • 安装 Python 依赖并获取代码:
      • 将代码克隆到本地环境,进入项目目录后安装依赖。
    • 运行方式
      • 使用仓库内的脚本/命令启动 MCP 服务器(具体命令请参考文档中的“快速启动”章节,示例在本文末列出)。
  • 服务器配置示例(JSON 格式,适用于 MCP 客户端的启动/连接信息) { "servers": [ { "name": "tools_bridge_mcp", "command": "uv", "args": ["run", "agentpool", "serve-mcp", "--config", "agents.yml"] }, { "name": "external_bridge", "command": "uv", "args": ["run", "agentpool", "serve-mcp", "tests/mcp_server/server.py"] } ] } 说明:
    • 服务器名称(name):用于标识 MCP 服务实例,客户端通过名称与之建立连接。
    • 启动命令(command):启动 MCP 服务器所需的执行命令,例如使用 uv 工具启动。
    • 启动参数(args):命令参数,包含服务脚本、配置文件路径等,确保 MCP 服务能正确暴露工具、资源与端点。
    • 实际使用时,请将上述示例中的路径替换为你本地/环境中的真实路径与配置。
  • 基本使用方法
    • 部署 MCP 服务后,使用 MCP 客户端连接并读取/写入资源、调用工具、获取/渲染 Prompts,结合你的 LLM 进行上下文驱动的对话。
    • 通过服务器提供的接口,可以实现对外部工具的调用、跨 Agent 的协作、以及自定义 Prompt 的渲染与投喂。

服务器信息