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 服务器)。
  • 基本使用方法(流程性描述,容易操作)

    1. 启动服务器:按照上述配置,在服务器或开发机上启动 MCP 服务。
    2. MCP 客户端连接:在客户端的 MCP 配置中指定服务器地址与认证信息(若有)。
    3. 调用工具:通过 MCP 客户端的 JSON-RPC 调用,执行 start_research、get_research_status、wait_research 等方法来提交任务、查询状态和获取结果。
    4. 读取资源与日志:通过 panda_log 等资源接口查看运行日志或中间产物。
    5. 退出与清理:任务完成后,可断开连接或继续提交新的研究任务。
  • 其他注意事项

    • 服务器实现依赖 Panda 的运行逻辑与 LLM 调用能力,请确保相关环境变量与 API 密钥配置正确(如 OpenAI、Claude 等的 Keys)。
    • MCP 的客户端实现与配置可以灵活调整,确保 client.json 中的 server_name、command、args 与此 MCP 服务器匹配。

服务器信息