mcpField
D
Developer Research MCP Server

Developer Research MCP Server

本地服务
github.com/ali-nr数据与分析069 周前更新

关于 Developer Research MCP Server

这是一个模块化的 MCP 网络研究服务,主要面向需要技术和软件开发内容的 AI Agent 与开发工具。当前使用 OpenRouter,架构也为接入其他研究服务提供支持。

主要功能

  1. 01通过 OpenRouter 搜索网页
  2. 02聚焦技术与开发内容
  3. 03模块化服务提供方架构
  4. 04错误处理与重试
  5. 05结构化 JSON 响应

适用场景

  1. 01让 AI Agent 研究技术主题
  2. 02以 JSON 获取开发相关网页结果
  3. 03接入其他研究服务提供方

MCP 相关

向 MCP 客户端提供 `search_web` 工具,支持查询词、结果数量和搜索重点参数。服务通过 stdio 通信,文档列出 Roo Code 等工具作为使用对象。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

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

详细介绍

Developer Research MCP 服务

此代码仓库包含一个 Model Context Protocol(MCP)服务,旨在为 AI Agent 或其他开发工具提供结构化研究能力,主要是网络搜索。MCP 可在客户端(例如 AI Agent)与提供专业工具的服务之间实现标准化通信。

此服务最初使用 OpenRouter 提供网络搜索功能,但采用了可扩展架构,便于将来轻松集成其他研究提供方(例如其他搜索引擎、数据库)。

目录

功能

  • 通过 OpenRouter 等提供方提供网络搜索能力。
  • 针对检索技术和软件开发内容进行了优化。
  • 采用可扩展设计,支持多个研究提供方。
  • 实现了可靠的错误处理和重试机制。
  • 以结构良好、一致的 JSON 格式提供结果,适用于程序化使用。

架构与可扩展性

此服务采用模块化架构。每个研究提供方(例如 OpenRouter)都作为独立模块实现,并遵循通用接口。这种设计使以下操作变得简单:

  1. 添加对新搜索引擎或数据源的支持。
  2. 根据配置或请求参数切换提供方(未来增强功能)。
  3. 独立维护和更新特定于提供方的逻辑。

先决条件

  • Node.js v18 或更高版本
  • npm(随 Node.js 一同安装)
  • 所需研究提供方的 API 密钥(例如 OpenRouter)

安装

  1. 克隆代码仓库:

    git clone https://github.com/yourusername/developer-research-server.git # Replace with the actual URL
    cd developer-research-server
    
  2. 安装依赖项: 使用 npm 安装项目依赖项。

    npm install
    
  3. 构建项目: 将 TypeScript 代码编译为 JavaScript。

    npm run build
    

    编译后的输出位于 build/ 目录中。

配置

此服务使用环境变量进行配置。

  1. 创建 .env 文件: 将 mcp-config-sample.json(如果存在,也可以手动创建)复制到项目根目录下的 .env 文件中。

    # Example .env file content:
    OPENROUTER_API_KEY=your_openrouter_api_key_here
    OPENROUTER_API_URL=https://openrouter.ai/api/v1
    

    注意:请确保将 .env 文件添加到 .gitignore,以免提交机密信息。

  2. 必需的环境变量:

    • OPENROUTER_API_KEY(OpenRouter 提供方必需):你的专属 OpenRouter API 密钥。
    • OPENROUTER_API_URL(可选):OpenRouter API 的基础 URL。默认为 https://openrouter.ai/api/v1。

    未来的提供方可能需要不同的环境变量。

使用

直接运行时,此 MCP 服务通过标准输入/输出(stdio)监听请求。它旨在集成到 Roo Code 等工具中。

与 Roo Code 搭配使用

若要在 Roo Code 中使用此服务,请将以下配置添加到 .roo/mcp.json 文件中。请调整 args 路径,使其指向克隆的代码仓库目录中的已编译 index.js 文件。

{
  "mcpServers": {
    "developer-research": {
      // Changed name to be more generic
      "command": "node",
      "args": ["/full/path/to/your/developer-research-server/build/index.js"], // <-- IMPORTANT: Update this path
      "env": {
        // Environment variables are typically loaded from the .env file
        // Or can be explicitly set here if needed, but .env is recommended for secrets
        // "OPENROUTER_API_KEY": "your-openrouter-api-key", // <-- Replace or load from .env
        // "OPENROUTER_API_URL": "https://openrouter.ai/api/v1"
      },
      "alwaysAllow": ["search_web"], // List tools the agent can always use
      "timeout": 60 // Timeout in seconds
    }
  }
}

重要:

  • 将 /full/path/to/your/developer-research-server/build/index.js 替换为系统上的正确绝对路径。
  • 请安全地配置 OPENROUTER_API_KEY,最好通过服务进程自身加载的 .env 文件进行配置,而不是将其硬编码到 mcp.json 中。

可用工具

目前,此服务提供以下工具:

search_web

使用已配置的提供商(当前为 OpenRouter)执行网络搜索,并返回相关结果。

参数
  • query(字符串,必填):搜索查询。
  • num_results(整数,可选):期望的搜索结果数量。必须介于 1 和 10 之间。默认为 5。
  • focus(字符串,可选):指定搜索重点领域。支持的值为 "technical"、"development"、"general"。默认为 "technical"。
示例(Roo Code 用法概念示例)
// Within a Roo Code agent or script
const searchResults = await useMcpTool("developer-research", "search_web", {
  query: "advanced typescript patterns",
  num_results: 3,
  focus: "technical",
});

console.log(searchResults);
响应格式

该工具返回一个具有以下结构的 JSON 对象:

{
  "success": true, // Boolean indicating if the search was successful
  "results": [
    // Array of result objects
    {
      "title": "Title of the search result",
      "url": "https://example.com/page",
      "content": "A snippet or summary of the page content...",
      "domain": "example.com"
    }
    // ... more results
  ],
  "total_results": 3 // The actual number of results returned
}

发生错误时,响应可能如下所示:

{
  "success": false,
  "error": "Description of the error that occurred."
}

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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