项目简介

GemForge-MCP是一个基于Model Context Protocol (MCP) 构建的应用后端,专注于通过标准化的方式为LLM客户端提供强大的Google Gemini模型能力。它不是一个聊天机器人,而是作为LLM的上下文服务,提供访问特定工具的接口。

主要功能点

GemForge-MCP作为MCP服务器,核心功能是通过JSON-RPC协议提供以下专业工具:

  • 'gemini_search': 利用Gemini模型结合Google Search进行智能搜索,提供基于最新信息的回答。适合处理需要实时信息或广泛知识的查询。
  • 'gemini_reason': 调用高级Gemini模型处理复杂问题,提供详细的推理步骤和解决方案。适用于数学、科学、编程等需要逻辑推理的场景。
  • 'gemini_code': 结合Repomix工具和Gemini模型,分析代码库结构和内容,回答关于代码的问题。支持直接分析目录或预打包的Repomix文件。
  • 'gemini_fileops': 对各种文件(文本、PDF、图片等)执行操作,如摘要、提取或分析。支持单文件或多文件处理,并能为大文件选择合适的模型。

服务器还包含智能模型选择逻辑,根据任务类型和文件特征自动选用最合适的Gemini模型,并实现了文件处理、速率限制处理和错误恢复等功能。

安装步骤

  1. 确保您已安装 Node.js 和 npm。
  2. 克隆仓库到本地:
    git clone https://github.com/PV-Bhat/GemForge-mcp.git
    cd GemForge-mcp
  3. 安装项目依赖:
    npm install
  4. 构建项目(将TypeScript代码编译为JavaScript):
    npm run build

服务器配置 (供MCP客户端参考)

MCP客户端需要启动并连接到此服务器进程。典型的MCP客户端配置会包含启动服务器进程的命令和参数。

服务器名称 (MCP客户端配置中通常为 'serverName'): 'gemini-tools-gemforge-server'

启动命令 (MCP客户端配置中通常为 'command' 和 'args'):

  • 对于开发模式 (从源代码运行):
    • 'command': 'npm'
    • 'args': '["run", "start"]'
  • 对于生产模式 (从编译后的代码运行):
    • 'command': 'node'
    • 'args': '["dist/index.js"]'

环境变量 (需要在服务器进程启动前设置):

  • 'GEMINI_API_KEY': 您的 Google Gemini API 密钥 (必填)
  • 'DEFAULT_MODEL_ID': 默认使用的 Gemini 模型 ID (可选,例如 'gemini-2.5-flash-preview-04-17')
  • 'GEMINI_PAID_TIER': 如果使用付费层级,设置为 'true' (可选,默认为 'false')

MCP客户端应使用 'stdio' 传输类型连接到此服务器进程。

基本使用方法

一旦服务器进程启动并通过Stdio传输与MCP客户端连接,LLM应用即可通过标准的MCP JSON-RPC请求调用服务器暴露的工具。

例如,调用 'gemini_search' 工具的标准MCP请求大致如下:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "callTool",
  "params": {
    "name": "gemini_search",
    "arguments": {
      "query": "最新的量子计算进展是什么?",
      "enable_thinking": true
    }
  }
}

服务器将处理请求,调用相应的Gemini API,并通过Stdio返回标准的JSON-RPC响应。具体的参数和返回格式请参考各工具的详细描述和MCP协议规范。

信息

分类

开发者工具