mcp-sage

mcp-sage

site icon
2025.04.22 1
JavaScript代码审查工具大上下文模型集成开发效率
mcp-sage 是一个基于 MCP(Model Context Protocol)的服务器,主要用于向 OpenAI 的 O3 模型或 Google 的 Gemini 2.5 Pro 发送提示(prompt),并根据 token 数量自动选择合适的模型。该工具能够递归地嵌入所有引用的文件路径,适用于获取第二意见或详细的代码审查,尤其适合处理需要大量上下文的复杂代码库。
View on GitHub

Overview

基本能力

产品定位

mcp-sage 是一个用于增强开发工作流的工具,通过利用大上下文模型(如 OpenAI O3 和 Google Gemini 2.5 Pro)来补充现有工具(如 Claude Code)的上下文限制。

核心功能

  1. 模型自动选择
  2. 根据 token 数量自动选择 OpenAI O3(≤ 200K tokens)或 Google Gemini 2.5 Pro(> 200K 且 ≤ 1M tokens)。
  3. 提供 API 密钥和网络连接的备用机制。

  4. 工具功能

  5. sage-opinion:发送提示和文件路径,获取模型的响应。
  6. sage-review:发送代码修改指令和文件路径,获取格式化的 SEARCH/REPLACE 块建议。

  7. 文件嵌入:递归地将文件路径嵌入到提示中,支持复杂代码库的上下文处理。

适用场景

  1. 代码审查:获取详细的代码审查意见。
  2. 第二意见:在开发过程中获取模型的第二意见。
  3. 大上下文处理:处理需要大量上下文的复杂代码库。

工具列表

  1. sage-opinion
  2. 功能:发送提示和文件路径,获取模型的响应。
  3. 参数:prompt(字符串,必需)、paths(文件路径数组,必需)。

  4. sage-review

  5. 功能:发送代码修改指令和文件路径,获取格式化的 SEARCH/REPLACE 块建议。
  6. 参数:instruction(字符串,必需)、paths(文件路径数组,必需)。

常见问题解答

  1. 模型选择失败:检查 API 密钥是否设置正确,并确保网络连接正常。
  2. token 超出限制:如果内容超过 1M tokens,会返回错误信息。
  3. 文件嵌入失败:确保文件路径正确且可访问。

使用教程

使用依赖

  1. Node.js:v18 或更高版本。
  2. API 密钥
  3. OpenAI API 密钥(用于 O3 模型)。
  4. Google Gemini API 密钥(用于 Gemini 2.5 Pro)。

安装教程

# 克隆仓库
git clone https://github.com/your-username/mcp-sage.git
cd mcp-sage

# 安装依赖
npm install

# 构建项目
npm run build

环境变量

设置以下环境变量:

  • OPENAI_API_KEY:OpenAI API 密钥。
  • GEMINI_API_KEY:Google Gemini API 密钥。

调试方式

  1. 运行测试: ```bash # 测试 sage-opinion 工具 OPENAI_API_KEY=your_openai_key GEMINI_API_KEY=your_gemini_key node test/run-test.js

# 测试 sage-review 工具 OPENAI_API_KEY=your_openai_key GEMINI_API_KEY=your_gemini_key node test/test-expert.js

# 测试模型选择逻辑 OPENAI_API_KEY=your_openai_key GEMINI_API_KEY=your_gemini_key node test/test-o3.js ```

  1. 查看日志:服务器通过 MCP 协议的 notifications/message 方法提供详细的监控信息,包括 token 使用统计、模型选择、文件数量和处理时间等。

许可证

该项目遵循 None 开源许可条款。