mcpField
C
Code Research MCP Server

Code Research MCP Server

本地服务
github.com/nahmanmate数据与分析4289 周前更新

关于 Code Research MCP Server

Code Research MCP Server 为 LLM 提供跨平台编程资源搜索,适合查找代码示例、文档和软件包信息。它汇集 Stack Overflow、MDN、GitHub、npm 和 PyPI 的搜索结果,并缓存结果以减少重复请求。

主要功能

  1. 01搜索 Stack Overflow 问答
  2. 02搜索 MDN 文档
  3. 03搜索 GitHub 仓库与代码
  4. 04查询 npm 和 PyPI 软件包
  5. 05并行搜索多个平台并缓存结果

适用场景

  1. 01查找编程问题的解答
  2. 02检索 Web 开发文档
  3. 03比较代码仓库、示例或软件包

MCP 相关

它通过 MCP 向客户端提供跨平台编程资源搜索工具,包括分别搜索各来源及同时搜索所有平台。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"code-research": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@smithery/cli

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Code Research MCP Server

smithery badge

一个 Model Context Protocol 服务,提供用于搜索和访问多个平台上的编程资源的工具。此服务集成了热门开发者平台,帮助大模型查找相关代码示例、文档和软件包。

Code Research Server MCP server

功能

集成平台
  • Stack Overflow - 编程问答
  • MDN Web Docs - Web 开发文档
  • GitHub - 代码和仓库搜索
  • npm - JavaScript 软件包注册表
  • PyPI - Python 软件包索引
工具
search_stackoverflow

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

  • 参数:
    • query(必需):搜索查询字符串
    • limit(可选):结果数量上限(1-10,默认值:5)
  • 返回:格式化的问题列表,包含评分、答案数量和摘要
  • 结果会缓存 1 小时
search_mdn

在 MDN Web Docs 中搜索 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 自动为 Claude Desktop 安装 Code Research Server:

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"  // Optional: Prevents rate limiting
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

注意:将 /absolute/path/to 替换为克隆仓库所在的实际路径。

开发

在开发模式下运行

如需在开发过程中于更改时自动重新构建:

npm run watch
错误处理

服务实现了完善的错误处理:

  • 针对各个平台的 API 专属错误消息
  • GitHub API 限流处理
  • 服务不可用时的平稳回退
  • 缓存响应以减少 API 负载
调试

由于 MCP 服务通过标准输入输出进行通信,调试可能颇具挑战。使用 MCP Inspector 详细监控请求和响应:

npm run inspector

Inspector 提供:

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

在浏览器中访问提供的 URL,即可使用调试界面。

缓存

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

  • 默认 TTL:1 小时
  • 根据查询和限制组合使用独立的缓存键
  • 针对平台的缓存策略
  • 高效利用内存的存储

贡献

  1. Fork 此仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建 Pull Request

许可证

AGPLv3

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。