Debate Hall MCP 服务器

使用说明

  • 项目简介

    • 该仓库实现了一个基于模型上下文协议(MCP)的后端服务器,用于向大语言模型客户端提供统一的上下文资源、可调用工具和可渲染的提示模板,支持三方角色(Wind、Wall、Door)的辩论工作流,以及对 PROMPT、资源、工具等的注册、执行和渲染。
  • 主要功能点

    • 资源管理(Resources):提供并管理辩论中需要的数据资源,确保资源的可访问性与一致性。
    • 工具注册与执行(Tools):注册并执行用于辩论的工具,允许 LLM 客户端调用外部功能。
    • Prompt 模板(Prompts):定义并渲染用于各角色的 Prompt 模板,支持可定制的交互模式。
    • JSON-RPC 通信:通过 JSON-RPC 与客户端通信,接收请求并返回标准化的响应。
    • 会话与能力管理:对辩论会话进行生命周期管理,声明服务器能力,支持多种传输协议。
    • 多传输协议支持:内置对 Stdio、SSE、WebSocket 等传输的支持,以适应不同部署场景。
  • 安装步骤

    • 通过 PyPI 安装:pip install debate-hall-mcp
    • 或从源码安装并进入开发环境,安装依赖并运行测试以确保环境就绪
  • 服务器配置(MCP 客户端需要的配置信息)

    • 为了让 MCP 客户端能够连接并与服务器交互,需提供一个 JSON 配置,包含以下字段:
      • server_name:服务器名称,推荐使用 debate-hall-mcp,与仓库标识保持一致
      • command:启动命令,示例值为 debate-hall-mcp
      • args:启动参数数组,示例值可包含用于指定状态目录、配置文件等的参数,例如 ["--state-dir", "/var/lib/debate-hall", "--config", "./config.yaml"]
    • 该配置用于 MCP 客户端在连接服务器时了解服务器标识及启动方式;客户端在连接时不需要了解内部实现细节,只需要能够按照该命名启动对应进程即可使用。
  • 基本使用方法

    • 启动服务器后,客户端通过 JSON-RPC 请求与服务器进行资源读取、工具调用、Prompt 获取等操作。具体的请求路径、方法及参数由 MCP 协议规定,客户端通过描述的 server_name、command、args 进行配置并建立连接。
    • 服务器自动管理会话、轮次、以及可能的状态持久化,确保在多轮辩论中保持一致性与可追溯性。
  • 额外信息

    • 该实现针对 Wind/Wall/Door 三角色的辩论场景提供完整的端到端能力,包含集成 GitHub、ADR、PROMPT 渲染等扩展功能,适用于生产和小规模部署的上下文服务框架。

服务器信息