返回 MCP 目录
public公开dns本地运行

Research Multi-API Search

ResearchMCP是一个结合Model Context Protocol (MCP)与多搜索引擎的研究工具,旨在提供类似ChatGPT DeepResearch的研究能力。

article

README

🚀 研究MCP

研究MCP是一款强大的研究工具,它将模型上下文协议(MCP)与Brave Search、Tavily Search等工具相结合,致力于实现类似于ChatGPT的DeepResearch功能。通过集成这些工具,用户能够在研究过程中更高效地获取信息,提升研究效率。

✨ 主要特性

  • 网络搜索:借助Brve和Tavily搜索API,可通过Claude Desktop进行网络搜索,为用户提供丰富的信息来源。
  • MCP协议:完全符合Model Context Protocol标准,确保系统的兼容性和稳定性。
  • 缓存机制:对搜索结果进行缓存,不仅能提升性能,还可减少API调用次数,降低使用成本。

📦 安装指南

本地开发设置

  1. 安装 Deno
  2. 克隆仓库。
  3. 设置环境变量:
    • BRAVE_API_KEY:Brave Search API 密钥。
    • TAVILY_API_KEY:Tavily Search API 密钥(可选)。
  4. 运行应用程序:
    make dev  # 启动 HTTP 服务器
    make mcp  # 启动 MCP 服务器用于 Claude Desktop
    

容器环境设置

  1. 安装 Docker 和 Docker Compose。
  2. .env 文件中设置环境变量。
  3. 构建并运行容器:
    make d-build
    make d-up
    

💻 使用示例

开发命令

# 本地开发
make dev     # 启动 HTTP 服务器带看护模式
make mcp     # 启动 MCP 服务器用于 Claude Desktop
make test    # 运行测试
make lint    # 运行代码检查工具
make format  # 格式化代码
make check   # 类型检查

# Docker 开发
make d-build  # 构建镜像
make d-dev    # 启动带实时重载的容器
make d-up     # 在后台运行
make d-logs   # 查看日志
make d-down   # 停止容器

与 Claude Desktop 的 MCP 集成

  1. 运行 MCP 服务器:make mcp
  2. 在 Claude Desktop 中添加一个新的 MCP 服务器,配置如下:
{
    "mcpServers": {
        "MCPSearch": {
            "description": "由 Brave、Tavily 等提供支持的网络搜索",
            "command": "/absolute/path/to/ResearchMCP/cli.ts",
            "args": [],
            "transport": "stdio",
            "env": {
                "BRAVE_API_KEY": "你的 Brave API 密钥",
                "TAVILY_API_KEY": "你的 Tavily API 密钥"
            }
        }
    }
}

请将 /absolute/path/to/ResearchMCP/cli.ts 替换为实际的 cli.ts 文件路径。

🔧 技术细节

技术栈

| 属性 | 详情 | |------|------| | 运行时环境 | Deno | | 框架 | Hono | | 错误处理 | Neverthrow (Result<T, E> 模式) | | 部署 | Docker 容器 |

已知限制

⚠️ 重要提示

Brave Search API 对非拉丁字符的支持有限。使用日语、汉语、韩语等其他非拉丁字母的语言进行搜索可能会导致编码错误。建议使用英文查询以获得最佳效果。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端