🔍 GPT研究员MCP服务器
  
为什么选择GPT研究员MCP?
虽然LLM应用程序可以使用MCP访问网络搜索工具, GPT研究员MCP发表了深入的研究成果。 标准搜索工具返回需要手动过滤的原始结果,通常包含不相关的源并浪费上下文窗口空间。
GPT研究员自主探索和验证众多来源,只关注相关、可信和最新的信息。虽然比标准搜索稍慢(等待约30秒),但它提供了:
- ✨ 更高质量的信息
- 📊 优化上下文使用
- 🔎 综合结果
- 🧠 LLM的更好推理
💻 克劳德桌面演示
https://github.com/user-attachments/assets/ef97eea5-a409-42b9-8f6d-b82ab16c52a8
🚀 Claude Desktop快速入门
想立即将其与Claude Desktop一起使用吗? 以下是最快的路径:
- 安装依赖项:
git clone https://github.com/assafelovic/gptr-mcp.git
pip install -r requirements.txt- 设置您的Claude桌面配置 在
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"gptr-mcp": {
"command": "python",
"args": ["/absolute/path/to/gpt-researcher/gptr-mcp/server.py"],
"env": {
"OPENAI_API_KEY": "your-openai-key-here",
"TAVILY_API_KEY": "your-tavily-key-here"
}
}
}
}- 重新启动克劳德桌面 开始研究吧! 🎉
有关详细的设置说明,请参阅 完整的Claude桌面集成部分 在......下面
资源
research_resource:通过研究获取与给定任务相关的网络资源。
主要工具
deep_research:对某个主题进行深度网络研究,找到最可靠和最相关的信息quick_search:执行速度优于质量的快速网络搜索,返回包含片段的搜索结果。支持任何GPTR支持的网络检索器,如Tavily、Bing、Google等。了解更多 这里write_report:根据研究结果生成报告get_research_sources:获取研究中使用的来源get_research_context:了解研究的全部背景
提示
research_query:创建研究查询提示
先决条件
在运行MCP服务器之前,请确保您已经:
- 已安装Python 3.11或更高版本
- 重要GPT研究员>=0.12.16需要Python 3.11+
- 您计划使用的服务的API密钥:
- OpenAI API密钥 - Tavilly API密钥
您还可以使用GPTR支持的检索器连接任何其他网络搜索引擎或MCP。看看 文档在这里
⚙️ 安装
- 克隆GPT研究员存储库:
git clone https://github.com/assafelovic/gpt-researcher.git
cd gpt-researcher- 安装gptr-mcp依赖项:
cd gptr-mcp
pip install -r requirements.txt- 设置环境变量:
- 复制 .env.example file以创建名为的新文件 .env:
cp .env.example .env- 编辑 .env 文件并添加API密钥,并配置其他设置:
OPENAI_API_KEY=your_openai_api_key
TAVILY_API_KEY=your_tavily_api_key您还可以为GPT研究员配置添加任何其他env变量。
🚀 运行MCP服务器
您可以通过多种方式运行MCP服务器:
方法一:直接使用Python
python server.py方法2:使用MCP CLI(如果已安装)
mcp run server.py方法3:使用Docker(推荐用于生产环境)
快速开始
使用Docker运行的最简单方法:
# Build and run with docker-compose
docker-compose up -d
# Or manually:
docker build -t gptr-mcp .
docker run -d \
--name gptr-mcp \
-p 8000:8000 \
--env-file .env \
gptr-mcp用于n8n集成
如果您需要连接到现有的n8n网络:
# First, start the container
docker-compose up -d
# Then connect to your n8n network
docker network connect n8n-mcp-net gptr-mcp
# Or create a shared network first
docker network create n8n-mcp-net
docker network connect n8n-mcp-net gptr-mcp备注Docker镜像使用Python 3.11来满足gpt研究员>=0.12.16的要求。如果在构建过程中遇到错误,请确保您使用的是此存储库中的最新Dockerfile。
服务器运行后,您将看到输出,指示服务器已准备好接受连接。您可以通过以下方式验证它是否正常工作:
- SSE端点:访问位于的服务器发送事件端点http://localhost:8000/sse获取会话ID
- MCP通信:使用会话ID向发送MCP消息http://localhost:8000/messages/?session_id=YOUR_SESSION_ID
- 测试:使用以下命令运行测试脚本
python test_mcp_server.py
对Docker/n8n集成很重要:
- 服务器绑定到
0.0.0.0:8000使用Docker容器 - 使用SSE传输进行基于web的MCP通信
- 会话管理需要从以下位置获取会话ID
/sse端点优先 - 每个客户端连接都需要一个唯一的会话ID才能进行正确的通信
🚦 运输模式和最佳实践
GPT Researcher MCP服务器支持多种传输协议,并自动为您的环境选择最佳协议:
运输类型
| 运输 | 用例 | 何时使用 |
|---|---|---|
| 工作室 | Claude Desktop,本地MCP客户端 | 默认用于本地开发 |
| 上海证券交易所 | Docker、Web客户端、n8n集成 | 在Docker中自动启用 |
| 流式HTTP | 现代web部署 | 高级web部署 |
自动检测
服务器会自动检测您的环境:
# Local development (default)
python server.py
# ➜ Uses STDIO transport (Claude Desktop compatible)
# Docker environment
docker run gptr-mcp
# ➜ Auto-detects Docker, uses SSE transport
# Manual override
export MCP_TRANSPORT=sse
python server.py
# ➜ Forces SSE transport环境变量
| 变量 | 描述 | 默认值 | 示例 |
|---|---|---|---|
MCP_TRANSPORT | 部队专用运输 | stdio | sse, streamable-http |
DOCKER_CONTAINER | 强制Docker模式 | 自动检测 | true |
配置示例
适用于Claude Desktop(本地)
// ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"gpt-researcher": {
"command": "python",
"args": ["/absolute/path/to/server.py"],
"env": {
"..."
}
}
}
}用于Docker/Web部署
# Set transport explicitly for web deployment
export MCP_TRANSPORT=sse
python server.py
# Or use Docker (auto-detects)
docker-compose up -d用于n8n MCP集成
# Use the container name as hostname
docker run --name gptr-mcp -p 8000:8000 gptr-mcp
# In n8n, connect to: http://gptr-mcp:8000/sse传输端点
使用SSE或HTTP传输时:
- 健康检查:
GET /health - SSE端点:
GET /sse(获取会话ID) - MCP消息:
POST /messages/?session_id=YOUR_SESSION_ID
最佳实践
- 地方发展:使用Claude Desktop的默认STDIO
- 生产:使用带有自动SSE检测的Docker
- 测试:使用健康端点验证连接
- n8n集成:始终使用Docker的容器网络
- Web部署:考虑为现代客户端提供流式HTTP
与克劳德融合
您可以使用以下方式将MCP服务器与Claude集成:
Claude桌面集成 -适用于Mac上的Claude桌面应用程序
有关详细说明,请点击上面的链接。
💻 Claude桌面集成
要将本地运行的MCP服务器与Claude for Mac集成,您需要:
- 确保MCP服务器已安装并正在运行
- 配置Claude桌面:
- 在以下位置查找或创建配置文件 ~/Library/Application Support/Claude/claude_desktop_config.json - 将本地GPT研究员MCP服务器添加到配置中 有环境变量 - 重新启动Claude以应用配置
⚠️ 重要提示:需要环境变量
Claude Desktop将您的MCP服务器作为单独的子进程启动,因此您 必须 在配置中显式传递API密钥。服务器无法访问shell的环境变量或 .env 文件自动。
配置示例
{
"mcpServers": {
"gptr-mcp": {
"command": "python",
"args": ["/absolute/path/to/your/server.py"],
"env": {
"OPENAI_API_KEY": "your-actual-openai-key-here",
"TAVILY_API_KEY": "your-actual-tavily-key-here"
}
}
}
}安全说明
🔒 您的Claude Desktop配置包含敏感的API密钥。 保护它:
chmod 600 ~/Library/Application\ Support/Claude/claude_desktop_config.json切勿将此文件提交到版本控制。
替代方案:环境变量脚本
为了更好的安全性,创建一个包装器脚本:
run_gptr_mcp.sh:
#!/bin/bash
source /path/to/your/.env
python /absolute/path/to/server.py然后在Claude Desktop中使用它:
{
"mcpServers": {
"gptr-mcp": {
"command": "/absolute/path/to/run_gptr_mcp.sh"
}
}
}有关完整的分步说明,请参阅 Claude桌面集成指南.
📝 Claude使用示例
User: I'm considering investing in NVIDIA. Can you research the current state of the company, recent stock performance, latest product announcements, and analyst opinions?
Claude: I'll help you research NVIDIA for investment purposes. This will take a moment as I conduct deep research to find the most up-to-date information about their stock performance, recent developments, and expert analysis.
[Claude uses deep_research tool - this takes 30-40 seconds]
Claude: Based on my research, here's a comprehensive analysis of NVIDIA's current state:
## NVIDIA (NVDA) Current Status
### Recent Stock Performance
- Current price: $942.89 (as of my research)
- YTD performance: +90.4%
- 52-week range: $460.30 - $974.00
- Market cap: ~$2.32 trillion
### Recent Key Developments
1. **Blackwell AI Platform**: At GTC 2024, NVIDIA unveiled the Blackwell architecture, their next-generation AI chip platform promising 4x performance improvement over Hopper. Major cloud providers (AWS, Google, Microsoft) have already committed to integrating Blackwell.
2. **Q1 FY2025 Earnings (May 2024)**:
- Revenue: $26.0 billion (+262% YoY)
- Data Center revenue: $22.6 billion (+427% YoY)
- Gross margin: 78.4%
- Announced 10-for-1 stock split effective June 7, 2024
3. **Supply Chain Expansion**: Increased investments in manufacturing capacity with TSMC to address ongoing chip shortages for their high-demand AI GPUs.
### Analyst Consensus
- Strong Buy consensus with 37 analysts rating it "Buy," 5 "Hold," and 0 "Sell"
- Average price target: $1,042 (post-split adjusted: $104.20)
- Key bull thesis: Continued AI infrastructure spending and NVIDIA's dominant position in AI chips
- Key bear concerns: Valuation, potential competition from AMD, Intel, and custom silicon from tech giants
### Industry Position
- Dominant in AI GPU market with estimated 80-90% market share
- Expanding ecosystem through CUDA software platform and industry partnerships
- Diversifying beyond chips with DGX Cloud, AI software platforms, and automotive solutions🔧 故障排除
如果在运行MCP服务器时遇到问题:
一般问题
- API密钥:请确保在中正确设置了API密钥
.env文件 - Python版本:检查您是否使用Python 3.11或更高版本(gpt研究员要求>=0.14.0)
- 依赖项:确保所有依赖项都已正确安装:
pip install -r requirements.txt - 服务器日志:检查服务器日志中的错误消息
Docker问题
- 集装箱无法进入:
- 验证容器是否正在运行: docker ps | grep gptr-mcp - 检查容器日志: docker logs gptr-mcp - 确认服务器已绑定到0.0.0.0:8000(日志应显示此内容)
- n8n集成问题:
- 确保两个容器都在同一个Docker网络上 - 使用容器名称 gptr-mcp 作为n8n中的主机名 - 将MCP服务器URL设置为: http://gptr-mcp:8000/sse
- 会话ID问题:
- 服务器使用需要会话管理的SSE传输 - 首先,通过连接获取会话ID /sse 端点 - 在后续MCP请求中使用会话ID: /messages/?session_id=YOUR_ID - 每个客户端都需要自己的会话ID
n8n MCP集成步骤
- 获取会话ID:
curl http://gptr-mcp:8000/sse
# Look for: data: /messages/?session_id=XXXXX- 初始化MCP:
curl -X POST http://gptr-mcp:8000/messages/?session_id=YOUR_SESSION_ID \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"protocolVersion": "2024-11-05", "capabilities": {"roots": {"listChanged": true}}, "clientInfo": {"name": "n8n-client", "version": "1.0.0"}}}'- 呼叫工具:
curl -X POST http://gptr-mcp:8000/messages/?session_id=YOUR_SESSION_ID \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": {"name": "quick_search", "arguments": {"query": "test"}}}'测试服务器
运行附带的测试脚本以验证功能:
python test_mcp_server.py这将测试:
- SSE连接和会话ID检索
- MCP初始化
- 工具发现和执行
Claude桌面问题
如果您的MCP服务器无法与Claude Desktop配合使用:
- 服务器未出现在Claude中:
- 检查你的 claude_desktop_config.json 语法是有效的JSON - 确保您正在使用 绝对路径 (非相对) - 验证路径 server.py 是正确的 - 完全重新启动克劳德桌面
- “找不到OPENAI_API_KEY”错误:
- 请确保已将API密钥添加到 env 配置中的部分 - 别忘了 两者 OPENAI_API_KEY 和 TAVILY_API_KEY - API键应为实际键,而不是占位符
- 工具未显示:
- 寻找🔧 Claude Desktop中的工具图标 - 检查Claude Desktop配置文件是否在正确的位置: - macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 视窗: %APPDATA%\Claude\claude_desktop_config.json
- Python/权限问题:
- 确保Python可以从命令行访问: python --version - 尝试使用完整的Python路径: "command": "/usr/bin/python3" 或 "command": "python3" - 检查server.py文件的文件权限
- 仍然不工作吗?
- 手动测试服务器: python server.py (应显示STDIO传输消息) - 检查克劳德桌面日志(如果可用) - 尝试上面集成部分中的替代脚本方法
👣 后续步骤
- 探索 MCP协议文件 更好地了解如何与Claude整合
- 了解 GPT研究员的核心特征 提高你的研究能力
- 看看 高级用法 更多配置选项指南
📄 许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
📞 支持/联系
- 社区不和
- 电子邮件:assaf.elovic@gmail.com
⬆️ Back to Top
