Claude Gemini MCP 服务器

使用说明

  • 项目简介

    • 该仓库实现了一个完整的 MCP 服务器,名称为 Gemini MCP 服务器。它将资源、工具、以及提示模板等以标准化方式暴露给 MCP 客户端,通过 JSON-RPC 请求进行交互,并借助 Gemini/Ai 能力完成代码生成、代码分析、计划与监督等任务,同时提供对项目管理(epics/stories/tasks)的持久化存储与操作脚本。
  • 主要功能点

    • MCP 核心能力:实现一个可运行的 MCP 服务器框架,暴露多种工具模块,客户端可通过 JSON-RPC 请求调用相应工具。
    • Gemini 集成:内置工具集包含 gemini_generate、gemini_chat、plan、analyze、fetch_doc 等,支持文本生成、对话、计划与分析等能力。
    • PM(项目管理)工具:提供 pm_create_epic、pm_create_story、pm_add_task、pm_update_story 等丰富的项目管理功能,并含有数据库后端(epics/stories/tasks 等表结构及迁移逻辑)。
    • 基于 SQLite 的持久化存储:epics.db 等数据以 SQLite 持久化,包含迁移、依赖关系、分支信息等丰富字段。
    • 会话与恢复:通过 epics.db 与 git 工作流实现会话状态、跨会话恢复等能力。
    • 多传输协议支持:默认通过 stdio 传输,也可切换为基于 HTTP 的传输,方便 MCP 客户端的不同使用场景。
  • 安装与运行

    • 该服务器的核心运行依赖 Python 环境,以及 Gemini CLI(gemini)可执行程序。
    • 服务器启动点位于 mcp-servers/gemini/server.py,提供 mcp.run(...) 接口用于不同传输模式(stdio 或 streamable-http)。
    • 启动前需确保 Gemini CLI 已安装并在系统 PATH 可执行,且 Python 版本符合运行要求(通常 Python 3.8+)。此外,数据库迁移会在启动时执行,确保 epics.db 的表结构正确。
  • 服务器配置(客户端无需,供 MCP 客户端理解后使用) 说明:下面给出一个示例性配置字段说明,实际配置应以客户端使用的 MCP 客户端格式为准。配置的核心信息包括服务器名称、启动命令以及参数等,用于 MCP 客户端连接并与服务器进行 JSON-RPC 交互。

    • server_name: gemini
    • command: python3
    • args: ["-u", "mcp-servers/gemini/server.py"]
    • transport: stdio 或 http(若要使用 HTTP,请设置 transport: "streamable-http" 并在命令行或环境中开启 http 转发)
    • 说明:MCP 客户端仅需要知道服务器的启动指令与通讯方式,客户端不需要读取服务器内部实现细节。上述字段用于描述如何在客户端环境中启动和连接到该 MCP 服务器。
  • 基本使用方法

    • 启动服务器后,客户端通过 MCP 协议向 gemini 工具集合发送请求(如调用 gemini_generate、pm_plan、pm_view 等)并接收 JSON-RPC 风格的响应。
    • 服务器内置 migrate/startup 逻辑,启动时会进行数据库迁移,确保 epics/db 表结构就绪。
    • 对于计划、分析、审核等任务,服务器会调用 Gemini CLI(gemini)进行推理与产出,结果以 JSON 字符串返回给客户端。
    • 使用场景包括:创建/更新 epic、创建/story、分派任务、计划多故事、分析代码/设计、生成/分析文档等。
  • 基本注意事项

    • 运行时请确保 Gemini CLI 可访问,否则 Gemini 相关工具将无法工作。
    • 服务器对数据库的写操作开放,使用前请注意权限与备份策略。
    • 提供的 PM/PM-Analytics 等工具具有较高的 I/O 与计算需求,生产环境请留出资源与并发控制。
  • 参考要点

    • 服务器实现覆盖 MCP 的核心场景:工具注册、JSON-RPC 调用、跨模块协作、跨会话状态保存、以及可扩展的工具集合。
    • 服务器内部包含大量与项目管理相关的操作、数据结构和计划执行逻辑,以及对 Gemini 的调用封装,体现了完整的 MCP 服务端能力。

服务器信息