Panda MCP Server
使用说明(Markdown 格式,尽量直观易用)
-
项目简介
- Panda MCP Server 是将 Panda 的研究代理能力暴露为一个 MCP(Model Context Protocol)服务端,通过 MCP 协议向 MCP 客户端提供对资源、工具和提示模板的注册、查询与执行能力。服务器端负责任务调度、会话与能力声明,并通过 JSON-RPC 与客户端交互。
-
主要功能点
- 注册与执行工具(Tools):提供 start_research、get_research_status、wait_research、start_auto_research 等工具,实现对异步研究任务的调度与查询。 可通过工具读取运行中的任务状态、获取摘要、以及检查结果。
- 资源与日志支持(Resources):提供 Panda 运行过程中的日志资源(如 panda_log),便于客户端查看运行状态与中间产物。
- 任务流与并发:支持在后台开启研究任务并通过轮询获取状态,便于与前端/其他系统集成。
- Cursor 集成与工作区:包含对 Cursor 的工作流适配能力(如 start_auto_research),可结合 Cursor 进行任务组织与结果浏览。
- MCP 规范实现:通过 mcp.server.fastmcp 提供工具装饰器、资源装饰器、以及 mcp.run() 启动服务,实现 MCP 的核心请求/响应处理。
-
安装步骤(简化版)
- 确保环境中已安装 Python 3.7+。
- 安装 MCP 库及本项目所需依赖(例如通过 pip 安装 mcp、其他依赖如 panda、requests 等)。
- 将代码放到合适的位置,确保 panda/mcp_server.py 能作为 MCP 服务入口运行。
- 启动 MCP 服务器(推荐方式为直接执行 Python 模块):
- 运行命令,例如:python -m panda.mcp_server
- 或直接运行脚本:python panda/mcp_server.py
- 启动后,MCP 客户端即可按照 MCP 协议向该服务注册工具与资源,并通过 JSON-RPC 调用开始任务、轮询状态等。
-
服务器配置(MCP 客户端需要的连接信息) 说明:MCP 客户端需要一个 JSON 配置来指明服务器名称、启动命令和参数。以下信息用于客户端的连接配置,不是服务器代码。 { "server_name": "panda-mcp", "command": "python3", "args": ["-m", "panda.mcp_server"] } 注释说明:
- server_name:在客户端侧注册时的名称标识,应与服务器端功能对应。
- command:用于启动服务器的可执行程序(如 python3)。
- args:启动服务器的参数(此处使用 -m panda.mcp_server 以模块方式运行 Panda 的 MCP 服务器)。
-
基本使用方法(流程性描述,容易操作)
- 启动服务器:按照上述配置,在服务器或开发机上启动 MCP 服务。
- MCP 客户端连接:在客户端的 MCP 配置中指定服务器地址与认证信息(若有)。
- 调用工具:通过 MCP 客户端的 JSON-RPC 调用,执行 start_research、get_research_status、wait_research 等方法来提交任务、查询状态和获取结果。
- 读取资源与日志:通过 panda_log 等资源接口查看运行日志或中间产物。
- 退出与清理:任务完成后,可断开连接或继续提交新的研究任务。
-
其他注意事项
- 服务器实现依赖 Panda 的运行逻辑与 LLM 调用能力,请确保相关环境变量与 API 密钥配置正确(如 OpenAI、Claude 等的 Keys)。
- MCP 的客户端实现与配置可以灵活调整,确保 client.json 中的 server_name、command、args 与此 MCP 服务器匹配。