码帮服务
有助于在不同平台(如Stack Overflow、MDN、GitHub、npm和PyPI)上搜索和访问编程资源,帮助大型语言模型查找代码示例和文档。
可用工具 (6 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
search_stackoverflow 2 个参数 需填 1 项
Search Stack Overflow for programming questions and answers
必填参数:query
search_mdn 1 个参数 需填 1 项
Search MDN Web Docs for web development documentation
必填参数:query
search_github 3 个参数 需填 1 项
Search GitHub for repositories and code
必填参数:query
search_npm 2 个参数 需填 1 项
Search npm registry for JavaScript packages
必填参数:query
search_pypi 1 个参数 需填 1 项
Search PyPI for Python packages
必填参数:query
search_all 2 个参数 需填 1 项
Search all platforms simultaneously
必填参数:query
服务介绍
Code Research MCP Server
这是一个模型上下文协议服务器,提供跨多个平台搜索和访问编程资源的工具。该服务器集成了流行的开发者平台,帮助大型语言模型找到相关的代码示例、文档和包。
功能
集成平台
- Stack Overflow - 编程问答
- MDN Web Docs - 网络开发文档
- GitHub - 代码和仓库搜索
- npm - JavaScript 包注册表
- PyPI - Python 包索引
工具
search_stackoverflow
在 Stack Overflow 上搜索编程问题和答案。
- 参数:
query(必需):搜索查询字符串limit(可选):最大结果数(1-10,默认:5)
- 返回:格式化的问题列表,包含得分、答案数量和摘录
- 结果缓存1小时
search_mdn
在 MDN Web Docs 上搜索网络开发文档。
- 参数:
query(必需):搜索查询字符串
- 返回:前5个匹配的MDN文档摘要和链接
- 结果缓存1小时
search_github
在 GitHub 上搜索仓库和代码示例。
- 参数:
query(必需):搜索查询字符串language(可选):按编程语言过滤limit(可选):每类别的最大结果数(1-10,默认:5)
- 返回:两个部分:
- 按星星数排序的顶级仓库
- 带有仓库上下文的相关代码文件
- 结果缓存1小时
search_npm
在 npm 注册表中搜索 JavaScript 包。
- 参数:
query(必需):搜索查询字符串limit(可选):最大结果数(1-10,默认:5)
- 返回:包信息,包括版本、描述和下载统计
- 结果缓存1小时
search_pypi
在 PyPI 上搜索 Python 包。
- 参数:
query(必需):搜索查询字符串
- 返回:详细的包信息,包括版本、作者和链接
- 结果缓存1小时
search_all
同时搜索所有平台以获得综合结果。
- 参数:
query(必需):搜索查询字符串limit(可选):每个平台的最大结果数(1-5,默认:3)
- 返回:来自所有平台的合并结果:
- Stack Overflow 问题和答案
- MDN 文档
- GitHub 仓库和代码
- npm 包
- PyPI 包
- 结果缓存1小时
- 注意:并行执行所有搜索以加快响应速度
要求
- Node.js >= 20.11.0
- npm >= 10.0.0
- 可选:GitHub 个人访问令牌以提高 API 速率限制
安装
通过 Smithery 安装
要通过 Smithery 自动安装适用于 Claude Desktop 的 Code Research Server:
npx -y @smithery/cli install @nahmanmate/code-research-mcp-server --client claude
手动安装
- 克隆仓库并安装依赖项:
git clone https://github.com/nahmanmate/code-research-mcp-server.git
cd code-research-server
npm install
- 构建服务器:
npm run build
- 配置 MCP 设置:
将服务器配置添加到您的 MCP 设置文件中:
- VSCode:
~/.vscode-server/data/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json - Claude Desktop:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json
- MacOS:
{
"mcpServers": {
"code-research": {
"command": "node",
"args": ["/absolute/path/to/code-research-mcp-server/build/index.js"],
"env": {
"GITHUB_TOKEN": "your_github_token" // Optional: Prevents rate limiting
},
"disabled": false,
"alwaysAllow": []
}
}
}
注意:请将 /absolute/path/to 替换为您克隆仓库的实际路径。
开发
以开发模式运行
对于更改时自动重建的开发:
npm run watch
错误处理
服务器实现了强大的错误处理机制:
- 每个平台特定的 API 错误消息
- GitHub API 的速率限制处理
- 服务不可用时的优雅回退
- 缓存响应以减少 API 负载
调试
由于 MCP 服务器通过 stdio 通信,调试可能会有挑战。使用 MCP Inspector 进行详细的请求/响应监控:
npm run inspector
Inspector 提供:
- 实时请求/响应监控
- 工具执行追踪
- 错误堆栈跟踪
- 性能指标
在浏览器中访问提供的 URL 以访问调试界面。
缓存
结果使用 node-cache 进行缓存:
- 默认 TTL:1 小时
- 每个查询/限制组合独立的缓存键
- 平台特定的缓存策略
- 内存高效的存储
贡献
- 分叉仓库
- 创建功能分支
- 提交您的更改
- 推送到分支
- 创建 Pull Request
许可证
AGPLv3