CodeDB MCP 服务器

使用说明(Markdown 格式)

  • 项目简介 CodeDB MCP 服务器是一套用 Zig 实现的完整 MCP 后端,遵循 Model Context Protocol(MCP)的核心思想,通过 JSON-RPC 与客户端通信,提供托管资源、注册与调用工具、以及定义和渲染提示模板等能力。服务器具备多工具集成、代码图引擎、并行子代理等特性,适用于在大语言模型场景下提供可扩展的上下文服务。

  • 主要功能点

    • MCP 核心能力:通过 JSON-RPC 与客户端协商会话、读取资源、执行工具、获取与渲染提示等。
    • 资源与数据访问:提供对仓库/代码相关资源的读取与管理能力。
    • 工具注册与调用:集成 30+(后续扩展至 33)MCP 工具,支持对外部任务的调用与结果返回。
    • 提示模板与渲染:支持 Prompts 的定义与渲染,辅助 LLM 的交互模式。
    • 子代理与并发执行:Agent‑Swarm 设计,支持并行子代理执行并汇总结果。
    • Code Graph 引擎:符号提取、依赖分析、等高线查询等能力,辅助代码理解与分析。
    • 会话与安全:会话管理、JWT/权限等机制(README 中提及)。
    • 二进制与测试:提供 Zig 构建、单元测试和端到端测试脚本,便于持续集成与回归测试。
  • 安装步骤(易懂、可操作)

    1. 安装依赖
      • 安装 Zig 编译工具链(推荐版本 0.15.1 及以上)。
    2. 获取源码并构建
      • 从 GitHub 获取代码并进入仓库根目录。
      • 执行命令:zig build
    3. 启动 MCP 服务器
      • 直接运行(自动检测仓库内当前工作目录的仓库位置): REPO_PATH=/path/to/your/repo ./zig-out/bin/gitagent-mcp
      • 或在当前仓库内直接启动(auto‑detect),无需额外参数: ./zig-out/bin/gitagent-mcp
      • 说明:REPO_PATH 为可选环境变量,若服务器能够自行检测到当前 Git 仓库路径则可省略。
    4. 运行测试与验证
      • 本仓库提供端到端测试与 MCP 协议回归测试脚本,可在本地执行 zig build test 或运行 test_e2e.py 进行端到端验证(需要 Python、Git、gh 等工具环境)。
    5. MCP 集成(客户端对接示例)
      • MCP 客户端需要知道服务器的启动命令及参数以建立连接。示例配置如下(仅为参考,实际路径按你的系统调整): { "serverName": "gitagent", "type": "stdio", "command": "/path/to/gitagent-mcp", "args": [], "env": { "REPO_PATH": "/path/to/your/repo" } // 说明:type 指定为 stdio,server 通过标准输入/输出与客户端通信。env 可选,用于向服务器传递仓库路径等信息。 }
      • MCP 客户端不需要服务器的源代码,但需要上述启动命令与环境变量来建立连接。
  • 服务器配置(示例说明,便于理解客户端如何接入】 服务器名称(serverName): gitagent 启动方式(command): /path/to/gitagent-mcp 启动参数(args): [] 环境变量(env):

    • REPO_PATH: 指定要操作的目标仓库路径(若服务器能自动从当前工作目录检测则可不设置) 说明:MCP 客户端通过服务器启动命令与Env 参数建立连接,并通过 JSON-RPC 2.0 进行后续交互。配置信息仅用于客户端了解如何启动与连接服务器,不需要把服务器源码暴露给客户端。
  • 基本使用方法

    • 启动后,客户端首先发送 initialize 请求,约定协议版本与客户端信息,随后可以通过 tools/call 请求调用已注册的工具。
    • 常用操作包括读取/写入资源、执行分析工具、调用子代理、查看并操作分支、PR/Issue 管理等,根据具体工具的参数文档进行调用。
    • 典型工作流示例:通过 MCP 客户端发出 initialize,随后依次调用 get_project_state、blast_radius、git_history_for、create_issue、create_pr 等工具,得到 JSON-RPC 的响应结果并据此驱动后续流程。
    • 端到端测试与回归在仓库中提供了 Python 脚本 test_e2e.py,可对多工具链进行自动化验证。
  • 备注

    • 该仓库提供了 MCP 服务器实现的完整代码与示例测试,具备“服务器端代码、可运行、功能明确”的特征,符合 MCP 服务器的定义要求。

服务器信息