article
README
🚀 研究MCP
研究MCP是一款强大的研究工具,它将模型上下文协议(MCP)与Brave Search、Tavily Search等工具相结合,致力于实现类似于ChatGPT的DeepResearch功能。通过集成这些工具,用户能够在研究过程中更高效地获取信息,提升研究效率。
✨ 主要特性
- 网络搜索:借助Brve和Tavily搜索API,可通过Claude Desktop进行网络搜索,为用户提供丰富的信息来源。
- MCP协议:完全符合Model Context Protocol标准,确保系统的兼容性和稳定性。
- 缓存机制:对搜索结果进行缓存,不仅能提升性能,还可减少API调用次数,降低使用成本。
📦 安装指南
本地开发设置
- 安装 Deno。
- 克隆仓库。
- 设置环境变量:
BRAVE_API_KEY:Brave Search API 密钥。TAVILY_API_KEY:Tavily Search API 密钥(可选)。
- 运行应用程序:
make dev # 启动 HTTP 服务器 make mcp # 启动 MCP 服务器用于 Claude Desktop
容器环境设置
- 安装 Docker 和 Docker Compose。
- 在
.env文件中设置环境变量。 - 构建并运行容器:
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 集成
- 运行 MCP 服务器:
make mcp。 - 在 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 对非拉丁字符的支持有限。使用日语、汉语、韩语等其他非拉丁字母的语言进行搜索可能会导致编码错误。建议使用英文查询以获得最佳效果。
扫码加入微信群