研究任务处理服务器

一个基于Gemini Deep Research能力的模型上下文协议(MCP)实现,用于执行全面、多步骤的研究任务。

  • by davoodwadi
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 davoodwadi/deep-research-mcp

使用说明

Gemini深度研究MCP服务器

模型上下文协议(MCP)的一种实现,利用Gemini的深度研究能力来执行全面、多步骤的研究任务。

EEE工作流程

此服务器遵循 EEE(评估、增强、执行) 工作流程,以确保高质量的研究成果和高效的资源利用。

1.评估

在任何研究开始之前,系统 评估 用户的提示。

  • 快速失败:它检查提示是否足够具体,以产生有意义的结果。
  • 反馈:如果提示太模糊(例如,只是“AI”),它会立即向用户提供反馈,要求提供更多细节,而不是在广泛的搜索中浪费标记。

2.加强

一旦提示被认为有效,系统 增强 它

  • 精炼:它将原始查询重写为研究人员的一组详细说明。
  • 约束处理:它以开放的形式填充未说明但必要的维度,避免不必要的假设,并指定格式要求(如表或标题)。
  • 结构:它确保输出格式为专业报告。

3.执行

最后,系统 执行 研究。

  • 深入研究:它利用Gemini 2.0 Flash的深度研究模式进行多步骤调查,在网络上导航以查找相关信息。
  • 进度跟踪:在整个执行过程中,它通过MCP任务API提供实时进度更新(例如,“搜索…”、“分析…”)。
  • 最终报告:编制一份全面、结构合理的最终报告,并注明来源。

入门指南

先决条件

  • 包子 安装。
  • Google Gemini API密钥。

安装

bun install

环境变量

  • GEMINI_API_KEY:(必需)您的Google Gemini API密钥。
  • ENABLE_TASKS:(可选)设置为 true 以实现实验性MCP任务API(带轮询的异步研究)。默认为 false (标准同步工具)。
export GEMINI_API_KEY="your_api_key_here"
export ENABLE_TASKS="true" # Optional: enable Tasks API

运行服务器

要在stdio上运行MCP服务器:

bun run index.ts

添加到IDE

VS代码(通过Claude Dev或Roo代码)

如果你使用的是类似的扩展 克劳德·德夫 或 Roo代码 支持MCP:

  1. 打开IDE的MCP配置设置。
  2. 添加新的服务器配置:
"gemini-deep-research": {
  "command": "bun",
  "args": ["run", "/absolute/path/to/research-mcp/index.ts"],
  "env": {
    "GEMINI_API_KEY": "your_api_key_here"
  }
}

光标

  1. 首选 设置 > 将军 > 主控程序.
  2. 点击 +添加新的MCP服务器.
  3. 姓名: Gemini Deep Research
  4. 类型: command
  5. 命令: export GEMINI_API_KEY=your_api_key_here && bun run /absolute/path/to/research-mcp/index.ts

克劳德桌面版

将此添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "gemini-deep-research": {
      "command": "bun",
      "args": ["run", "/absolute/path/to/research-mcp/index.ts"],
      "env": {
        "GEMINI_API_KEY": "your_api_key_here"
      }
    }
  }
}

特性

  • 灵活的API:支持标准同步MCP工具和实验异步MCP任务。
  • Gemini 2.0 Flash深度研究:利用最新的研究模型进行全面的信息收集。
  • 快速验证失败:通过在执行前验证提示来节省时间和成本。

项目结构

  • index.ts:服务器入口点和MCP注册。
  • lib/deep-research-tool.ts:研究工具和EEE逻辑的实施。
  • lib/gemini.ts:与Google Gen AI SDK集成。
  • lib/tasks.ts:MCP任务的全局任务存储和消息队列。
  • examples/:示例客户端实现和启发模式。

许可证

麻省理工学院