M

MCP-深度研究

chevalblanc/MCP-deep-research
1 Stars 450 次浏览 chevalblanc 更新于 2026-08-23

一个由AI驱动的研究助手,能够对任何主题进行深入、迭代的研究。它结合了搜索引擎、网络爬虫和人工智能技术,深入探索主题并生成全面的报告。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "deep-research": {
      "args": [
        "npm",
        "run",
        "start"
      ],
      "command": "npx",
      "env": {
        "FIRECRAWL_BASE_URL": "${FIRECRAWL_BASE_URL}"
      }
    }
  }
}

服务介绍

Open Deep Research MCP 服务器

一个由 AI 驱动的研究助手,能够对任何主题进行深入、迭代的研究。它结合了搜索引擎、网络爬虫和 AI 技术来深入探索主题并生成全面的报告。可用作 Model Context Protocol (MCP) 工具或独立的 CLI。请查看 exampleout.md 以了解报告可能的样子。

快速开始

  1. 克隆并安装:
    bash
    git clone https://github.com/Ozamatash/deep-research
    cd deep-research
    npm install

  2. .env.local 中设置环境:
    bash

复制示例环境文件

cp .env.example .env.local

  1. 构建:
    bash

构建服务器

npm run build

  1. 运行 CLI 版本:
    bash
    npm run start

  2. 使用 Claude Desktop 测试 MCP 服务器:
    按照 server quickstart 底部的指南将服务器添加到 Claude Desktop:
    https://modelcontextprotocol.io/quickstart/server

对于远程服务器:可流式传输的 HTTP
bash
npm run start:http

服务器运行在 http://localhost:3000/mcp 上,不包含会话管理。

功能

  • 通过生成有针对性的搜索查询来进行深入、迭代的研究
  • 使用深度(多深)和广度(多宽)参数控制研究范围
  • 通过详细的评分(0-1)和理由评估来源可靠性
  • 优先考虑高可靠性来源(≥0.7),并验证不太可靠的信息
  • 生成后续问题以更好地理解研究需求
  • 生成带有发现、来源和可靠性评估的详细 Markdown 报告
  • 可作为 AI 代理的 Model Context Protocol (MCP) 工具使用
  • 目前 MCP 版本不会询问后续问题

模型选择(OpenAI, Anthropic, Google, xAI)

每次运行时选择一个提供商和模型。

  • CLI:系统将提示您选择提供商和模型。例如:openai + gpt-5
  • MCP/HTTP:传递 model,例如 openai:gpt-5

.env.local 中设置相应的 API 密钥:

OPENAI_API_KEY=...
ANTHROPIC_API_KEY=...
GOOGLE_API_KEY=...
XAI_API_KEY=...

工作原理

mermaid
flowchart TB
subgraph Input
Q[用户查询]
B[广度参数]
D[深度参数]
FQ[反馈问题]
end

subgraph Research[深入研究]
    direction TB
    SQ[生成 SERP 查询]
    SR[搜索]
    RE[来源可靠性评估]
    PR[处理结果]
end

subgraph Results[研究输出]
    direction TB
    L((带有
    可靠性分数的学习))
    SM((来源元数据))
    ND((下一步方向:
    优先目标,
    新问题))
end

%% 主流程
Q & FQ --> CQ[组合查询]
CQ & B & D --> SQ
SQ --> SR
SR --> RE
RE --> PR

%% 结果流程
PR --> L
PR --> SM
PR --> ND

%% 深度决策与递归
L & ND --> DP{depth > 0?}
DP -->|是| SQ

%% 最终输出
DP -->|否| MR[Markdown 报告]

%% 样式
classDef input fill:#7bed9f,stroke:#2ed573,color:black
classDef process fill:#70a1ff,stroke:#1e90ff,color:black
classDef output fill:#ff4757,stroke:#ff6b81,color:black
classDef results fill:#a8e6cf,stroke:#3b7a57,color:black,width:150px,height:150px

class Q,B,D,FQ input
class SQ,SR,RE,PR process
class MR output
class L,SM,ND results

高级设置

使用本地 Firecrawl(免费选项)

您可以运行一个本地实例,而不是使用 Firecrawl API。您可以使用官方仓库或我的分叉版本,该版本使用 searXNG 作为搜索后端,从而避免使用搜索 API 密钥:

  1. 设置本地 Firecrawl:
    bash
    git clone https://github.com/Ozamatash/localfirecrawl
    cd localfirecrawl

按照 localfirecrawl README 中的说明进行设置

  1. 更新 .env.local
    bash
    FIRECRAWL_BASE_URL="http://localhost:3002"

可选:可观测性

使用 Langfuse 添加可观测性,以跟踪研究流程、查询和结果:

bash

添加到 .env.local

LANGFUSE_PUBLIC_KEY="your_langfuse_public_key"
LANGFUSE_SECRET_KEY="your_langfuse_secret_key"如果未提供Langfuse密钥,应用程序在没有可观测性的情况下也能正常工作。

许可证

MIT许可证

相关 MCP 服务