
mcp-sage

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)的上下文限制。
核心功能
- 模型自动选择:
- 根据 token 数量自动选择 OpenAI O3(≤ 200K tokens)或 Google Gemini 2.5 Pro(> 200K 且 ≤ 1M tokens)。
-
提供 API 密钥和网络连接的备用机制。
-
工具功能:
sage-opinion
:发送提示和文件路径,获取模型的响应。-
sage-review
:发送代码修改指令和文件路径,获取格式化的 SEARCH/REPLACE 块建议。 -
文件嵌入:递归地将文件路径嵌入到提示中,支持复杂代码库的上下文处理。
适用场景
- 代码审查:获取详细的代码审查意见。
- 第二意见:在开发过程中获取模型的第二意见。
- 大上下文处理:处理需要大量上下文的复杂代码库。
工具列表
- sage-opinion:
- 功能:发送提示和文件路径,获取模型的响应。
-
参数:
prompt
(字符串,必需)、paths
(文件路径数组,必需)。 -
sage-review:
- 功能:发送代码修改指令和文件路径,获取格式化的 SEARCH/REPLACE 块建议。
- 参数:
instruction
(字符串,必需)、paths
(文件路径数组,必需)。
常见问题解答
- 模型选择失败:检查 API 密钥是否设置正确,并确保网络连接正常。
- token 超出限制:如果内容超过 1M tokens,会返回错误信息。
- 文件嵌入失败:确保文件路径正确且可访问。
使用教程
使用依赖
- Node.js:v18 或更高版本。
- API 密钥:
- OpenAI API 密钥(用于 O3 模型)。
- 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 密钥。
调试方式
- 运行测试: ```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 ```
- 查看日志:服务器通过 MCP 协议的
notifications/message
方法提供详细的监控信息,包括 token 使用统计、模型选择、文件数量和处理时间等。