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 响应,或发送通知。
- 会话与能力:会话管理、能力声明,以及对不同传输协议的支持,提升互操作性和扩展性。
- 多传输协议支持:默认或可扩展的传输层实现,便于在不同环境下部署(如本地、终端、浏览器等)。
- MCP 服务端核心功能
- 安装步骤
- 安装 Python 依赖并获取代码:
- 将代码克隆到本地环境,进入项目目录后安装依赖。
- 运行方式
- 使用仓库内的脚本/命令启动 MCP 服务器(具体命令请参考文档中的“快速启动”章节,示例在本文末列出)。
- 安装 Python 依赖并获取代码:
- 服务器配置示例(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 的渲染与投喂。