返回市场
代码研究MCP服务器

代码研究MCP服务器

作者:nahmanmate41 星标更新:2025-02-14

项目介绍

Code Research MCP Server

smithery 徽章

这是一个提供跨平台编程资源搜索和访问工具的模型上下文协议服务器。该服务器与流行的开发者平台集成,帮助大型语言模型(LLMs)找到相关的代码示例、文档和包。

<a href="https://glama.ai/mcp/servers/8ibodeufsz"><img width="380" height="200" src="https://gips1.baidu.com/it/u=3936984815,3230395797&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Code Research Server MCP 服务器" /></a>

功能

集成平台

  • Stack Overflow - 编程问答
  • MDN Web 文档 - 网络开发文档
  • GitHub - 代码和仓库搜索
  • npm - JavaScript 包注册表
  • PyPI - Python 包索引

工具

search_stackoverflow

在 Stack Overflow 上搜索编程问题和答案。

  • 参数:
    • query(必需):搜索查询字符串
    • limit(可选):最大结果数(1-10,默认值:5)
  • 返回:带有分数、答案数量和摘录的问题列表
  • 结果缓存时间为 1 小时

search_mdn

在 MDN Web 文档中搜索网络开发文档。

  • 参数:
    • query(必需):搜索查询字符串
  • 返回:前 5 个 MDN 文档匹配项及其摘要和链接
  • 结果缓存时间为 1 小时

search_github

在 GitHub 上搜索仓库和代码示例。

  • 参数:
    • query(必需):搜索查询字符串
    • language(可选):按编程语言过滤
    • limit(可选):每个类别的最大结果数(1-10,默认值:5)
  • 返回:两个部分:
    1. 按星数排序的顶级仓库
    2. 带有仓库上下文的相关代码文件
  • 结果缓存时间为 1 小时

search_npm

在 npm 注册表中搜索 JavaScript 包。

  • 参数:
    • query(必需):搜索查询字符串
    • limit(可选):最大结果数(1-10,默认值:5)
  • 返回:包括版本、描述和下载统计信息的包信息
  • 结果缓存时间为 1 小时

search_pypi

在 PyPI 中搜索 Python 包。

  • 参数:
    • query(必需):搜索查询字符串
  • 返回:包括版本、作者和链接的详细包信息
  • 结果缓存时间为 1 小时

search_all

同时搜索所有平台以获得全面的结果。

  • 参数:
    • query(必需):搜索查询字符串
    • limit(可选):每个平台的最大结果数(1-5,默认值:3)
  • 返回:来自所有平台的综合结果:
    1. Stack Overflow 的问题和答案
    2. MDN 文档
    3. GitHub 仓库和代码
    4. npm 包
    5. PyPI 包
  • 结果缓存时间为 1 小时
  • 注意:并行执行所有搜索以加快响应速度

要求

  • Node.js >= 20.11.0
  • npm >= 10.0.0
  • 可选:GitHub 个人访问令牌以提高 API 速率限制

安装

通过 Smithery 安装

要通过 Smithery 自动安装 Code Research Server for Claude Desktop:

npx -y @smithery/cli install @nahmanmate/code-research-mcp-server --client claude

手动安装

  1. 克隆仓库并安装依赖项:
git clone https://github.com/nahmanmate/code-research-mcp-server.git
cd code-research-server
npm install
  1. 构建服务器:
npm run build
  1. 配置 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
{
  "mcpServers": {
    "code-research": {
      "command": "node",
      "args": ["/absolute/path/to/code-research-mcp-server/build/index.js"],
      "env": {
        "GITHUB_TOKEN": "your_github_token"  // 可选:防止速率限制
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

注意:用实际克隆仓库的位置替换 /absolute/path/to

开发

在开发模式下运行

对于更改后自动重建的开发:

npm run watch

错误处理

服务器实现了强大的错误处理:

  • 每个平台的 API 特定错误消息
  • GitHub API 的速率限制处理
  • 服务不可用时的优雅回退
  • 使用缓存响应以减少 API 负载

调试

由于 MCP 服务器通过标准 I/O 进行通信,调试可能会很困难。使用 MCP Inspector 进行详细的请求/响应监控:

npm run inspector

Inspector 提供:

  • 实时请求/响应监控
  • 工具执行跟踪
  • 错误堆栈跟踪
  • 性能指标

在浏览器中访问提供的 URL 以访问调试界面。

缓存

结果使用 node-cache 进行缓存:

  • 默认 TTL:1 小时
  • 每个查询/限制组合单独的缓存键
  • 平台特定的缓存策略
  • 内存高效的存储

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建拉取请求

许可证

AGPLv3