Hive MCP 服务器实现

使用说明(Markdown 格式)

  • 项目简介

    • 该仓库实现了一个 MCP 服务器,核心职责是通过 JSON-RPC 与客户端通信,提供对 Hive 系统中资源、工具和提示模板等上下文信息的访问与执行能力,便于 LLM 客户端在对话中获取上下文、调用外部功能、以及查询和渲染 Prompts。
    • 服务器通过标准输入输出(STDIN/STDOUT)接收请求并返回 JSON-RPC 响应,当前实现包含如下核心能力:资源查询、工具执行及基础的工具信息暴露,以及对请求的解析与响应。
  • 主要功能点(面向非技术读者的要点版)

    • 资源暴露:提供关于 Hive 的资源状态信息(如 drone 状态、PRD 等),便于 LLM 客户端了解系统上下文。
    • 工具注册与执行:列出可用工具、并可对指定工具进行调用,返回工具执行结果。
    • 基础的 JSON-RPC 支持:支持 initialize、tools/list、tools/call 等 MCP 请求,按 MCP 标准格式返回结果或错误。
    • 与现有系统的互操作:集成 Hive 的资源与消息总线,方便在对话中对资源和任务进行查询和操作。
    • STDIO 通信模式:通过 STDIN Read 行驱动的 MCP 服务,便于在 Claude Code 等环境中嵌入和执行。
  • 安装步骤

    • 使用 Rust 构建项目:在仓库根目录执行 cargo build --release
    • 启动 MCP 服务器:在命令行执行 hive mcp-server(或者直接运行编译产物 hive mcp-server),MCP 服务器将监听并通过 STDIN/STDOUT 与 Claude Code 客户端通信。
    • 与 Claude Code 集成:将 MCP 服务器的启动命令和参数配置到 Claude Code 的 MCP 客户端设置中,以建立 JSON-RPC 通信。
  • 服务器配置(MCP 客户端需要的连接信息说明,以下信息为 JSON 形式的配置示例,便于理解,不作为代码直接执行)

    • server name: hive
    • command: hive
    • args: ["mcp-server"] 说明:该 JSON 配置用于 MCP 客户端在连接 Hive 的 MCP 服务器时,指定服务器的启动命令与参数。客户端需要读取该配置以便正确启动和连接 MCP 服务器;仓库提供的 MCP 服务器实现本身不要求客户端再额外的启动参数。

    配置示例(描述性文本,不是代码片段)

    • server name: hive
    • command: hive
    • args: ["mcp-server"]
  • 基本使用方法

    • 启动服务器:在项目根目录执行 hive mcp-server,服务器启动后将等待标准输入上的 JSON-RPC 请求。
    • 客户端请求示例(描述性):
      • initialize:客户端向服务器发送初始化请求,获取能力描述、协议版本等信息。
      • tools/list:客户端请求当前暴露的工具信息列表。
      • tools/call:客户端调用具体工具,并获取执行结果或错误信息。
    • 客户端与服务器的对接要遵循 MCP 的 JSON-RPC 结构,服务器将返回标准的 JSON-RPC 响应对象。
    • 错误处理:服务器对无法识别的方法返回方法未找到错误,RPC 错误码遵循标准的 JSON-RPC 错误表示。
  • 重要注意

    • 当前实现的 MCP 服务器主要用于资源查询与工具执行的对接,以及对 Hive 系统状态信息的暴露,具体的提示模板(Prompts)渲染等可能在未来扩展中逐步完善。
    • 若要进一步扩展,请参考现有工具信息与资源查询路径,并通过 MCP 的工具调用接口扩展更多能力。
  • 其他信息

    • MCP 服务器的实现与 Hive 的现有后端、资源和消息总线集成良好,能够在 JSON-RPC 层面实现基本的 MCP 需求。

服务器信息