使用说明
🤖 MCP多智能体深度研究员
一个强大的多智能体研究系统建立在 模型上下文协议(MCP),使用 船员AI 对于代理编排, 链接起来 用于深层网络搜索,以及 phi3 用于本地AI处理的模型(通过Ollama)。具有API访问和漂亮的web界面,可轻松完成研究任务。
🌟 特性
- 🧠 多代理系统:三个专业的人工智能代理协同工作
- 网络搜索器:使用LinkUp API进行深度网络搜索
- 研究分析师:信息综合和核查
- 技术文档工程师:清晰、结构化的内容创建
- 🌐 漂亮的Web界面:现代、响应式前端,便于交互
- 🔌 API访问:带有FastAPI和自动文档的RESTful API
- 🏠 本地AI处理:使用Ollama和phi3模型-不需要外部AI API
- 📡 MCP协议:完全符合模型上下文协议以进行集成
- 🚀 一次指令发射:用一个命令开始一切
🎯 快速开始
通过3个简单步骤开始:
# 1. Clone the repository
git clone https://github.com/anubhav-77-dev/MCP-Multi-Agent-Deep-Researcher.git
cd MCP-Multi-Agent-Deep-Researcher
# 2. Run the setup script
python3 setup.py
# 3. Launch everything!
python3 launcher.py
就是这样!系统将在您的浏览器中自动打开 http://localhost:3000/frontend.html
📸 截图
web界面
API文档
🏗️ 建筑
建筑
该系统实现了一个三代理工作流:
- 网络搜索器:使用LinkUp API从多个来源查找相关信息
- 研究分析师:综合并验证信息,注重深度和清晰度
- 技术文档工程师:生成清晰、全面的降价答案
graph TD
A[Web Interface] --> B[FastAPI Backend]
B --> C[MCP Server]
C --> D[CrewAI Orchestrator]
D --> E[Web Searcher Agent]
D --> F[Research Analyst Agent]
D --> G[Technical Writer Agent]
E --> H[LinkUp API]
F --> I[Ollama + phi3]
G --> I
H --> J[Web Search Results]
I --> K[AI Analysis & Writing]
J --> F
K --> L[Final Research Output]
📋 先决条件
🚀 安装和设置
选项1:自动设置(推荐)
# Clone the repository
git clone https://github.com/anubhav-77-dev/MCP-Multi-Agent-Deep-Researcher.git
cd MCP-Multi-Agent-Deep-Researcher
# Run automated setup (checks dependencies, installs packages, configures environment)
python3 setup.py
# Launch the application (starts both frontend and backend)
python3 launcher.py
选项2:手动设置
Click to expand manual setup instructions
1.安装依赖项
# Install Poetry (if not already installed)
curl -sSL https://install.python-poetry.org | python3 -
# Install project dependencies
poetry install
2.安装和配置Olama
# Install Ollama (visit https://ollama.ai/ for OS-specific instructions)
# On macOS:
brew install ollama
# Start Ollama service
ollama serve
# Pull the phi3 model (in a new terminal)
ollama pull phi3:latest
# Verify installation
ollama list
3.配置环境
# Copy environment template
cp .env.example .env
# Edit .env file and add your LinkUp API key
nano .env
所需的环境变量:
LINKUP_API_KEY=your_linkup_api_key_here
OLLAMA_BASE_URL=http://localhost:11434
MODEL_NAME=phi3:latest
4.启动服务
# Option A: Use the launcher (recommended)
python3 launcher.py
# Option B: Start services manually
# Terminal 1 - Backend API
poetry run python Multi-Agent-deep-researcher-mcp-windows-linux/http_server.py
# Terminal 2 - Frontend
python3 -m http.server 3000
# Terminal 3 - MCP Server (optional, for MCP client integration)
poetry run python Multi-Agent-deep-researcher-mcp-windows-linux/server.py
🔑 获取LinkUp API密钥
- 访问 LinkUp.so
- 注册一个免费帐户
- 从仪表板获取API密钥
- 将其添加到您的
.env文件
🎮 用法
Web界面(最简单)
- 启动应用程序:
python3 launcher.py - 打开浏览器 到
http://localhost:3000/frontend.html(自动打开) - 输入您的研究查询 或者尝试示例查询
- 选择您的模式:
- 🔍 快速搜索:使用LinkUp API进行快速网络搜索
- 🧠 全面研究:完整的多代理分析工作流程
- 查看结果 具有格式化输出、复制/下载选项
API访问
快速搜索
curl -X POST http://localhost:8080/search \
-H "Content-Type: application/json" \
-d '{"query": "latest AI trends 2024"}'
全面研究
curl -X POST http://localhost:8080/research \
-H "Content-Type: application/json" \
-d '{"query": "comprehensive analysis of quantum computing applications"}'
健康检查
curl http://localhost:8080/health
MCP客户端集成
要与MCP兼容客户端集成,请添加以下配置:
{
"mcpServers": {
"crew_research": {
"command": "poetry",
"args": ["run", "python", "Multi-Agent-deep-researcher-mcp-windows-linux/server.py"],
"env": {
"LINKUP_API_KEY": "your_linkup_api_key_here"
}
}
}
}
可用端点
| 端点 | 方法 | 描述 |
|---|---|---|
/health |
GET | 健康检查 |
/search |
POST | 快速网络搜索 |
/research |
POST | 完整的多智能体研究 |
/docs |
获取 | 交互式API文档 |
📁 项目结构
MCP-Multi-Agent-Deep-Researcher/
├── 🚀 launcher.py # Single-command launcher
├── 🌐 frontend.html # Web interface
├── ⚙️ setup.py # Automated setup script
├── 📋 start.sh # Shell launcher script
├── 📖 QUICKSTART.md # Quick start guide
├── 🔧 Makefile # Development commands
├── 📦 pyproject.toml # Poetry dependencies
├── 🔐 .env.example # Environment template
├── ⚙️ mcp.config.json # MCP client configuration
└── Multi-Agent-deep-researcher-mcp-windows-linux/
├── 🖥️ server.py # MCP protocol server
├── 🌐 http_server.py # FastAPI REST server
├── 🧪 test_research.py # Testing utilities
└── agents/ # Multi-agent system
├── 🤖 research_crew.py # CrewAI orchestration
└── tools/ # Agent tools
├── 🔍 linkup_search.py # Web search integration
└── 🧠 ollama_tool.py # Local AI integration
🎯 查询示例
尝试以下示例研究查询:
快速搜索示例
- “2024年最新的人工智能趋势是什么?”
- “可再生能源的当前发展”
- “量子计算的最新突破”
完整研究示例
- “加密货币挖矿的环境影响综合分析”
- “量子计算是如何工作的,它在现实世界中的应用是什么?”
- “自动驾驶汽车的未来:技术、挑战和时间表”
- “人工智能对医疗保健的影响:机遇和风险”
代理工作流
该系统使用CrewAI来协调三个专门的代理:
1.Web搜索代理
- 角色:网络研究专家
- 目标:使用LinkUp API查找全面的相关信息
- 工具:链接搜索工具
- 输出:网络搜索结果及其来源的详细摘要
2.研究分析师代理人
- 角色:研究分析师
- 目标:分析和综合信息,提供全面的见解
- 输入:网络搜索结果
- 输出:具有关键见解和经过验证的信息的结构化分析
3.技术编剧代理
- 角色:技术作家
- 目标:创建清晰、全面、结构良好的书面内容
- 输入:研究分析
- 输出:全面、格式良好的降价文档
配置
环境变量
LINKUP_API_KEY:用于web搜索功能的LinkUp API密钥OLLAMA_BASE_URL:Ollama API的基本URL(默认值:http://localhost:11434)MODEL_NAME:要使用的Ollama模型(默认值:phi3)
自定义代理
您可以通过修改来自定义代理 agents/research_crew.py:
- 调整代理角色、目标和背景故事
- 修改任务描述和预期输出
- 添加或删除特定代理的工具
- 更改流程(顺序、层次等)
🐛 故障排除
常见问题及解决方案
🚫 "Address already in use" error
# Kill existing processes
pkill -f "python.*http_server"
pkill -f "http.server"
# Or restart with different ports
python3 launcher.py
🔗 Ollama connection failed
# Check if Ollama is running
ollama serve
# Verify model is available
ollama list
# Pull model if missing
ollama pull phi3:latest
# Check Ollama is accessible
curl http://localhost:11434/api/tags
🔑 LinkUp API errors
- 在中验证API密钥
.env文件 - 检查LinkUp仪表板的使用限制
- 测试API密钥:
curl -H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"q": "test"}' \
https://api.linkup.so/v1/search
🧩 Dependencies issues
# Reinstall dependencies
poetry install --no-cache
# Or use pip fallback
pip install -r requirements.txt
# Check Python version
python3 --version # Should be 3.10+
🌐 CORS/Frontend issues
- 确保两台服务器都在运行
- 检查浏览器控制台是否有错误
- 尝试直接访问后端:
http://localhost:8080/health - 清除浏览器缓存并重新加载
获取帮助
- 检查日志:启动器显示两台服务器的详细日志
- 运行诊断程序:
python3 setup.py验证设置 - 测试组件:
python3 simple_test.py用于单独测试 - 启用调试模式:设置
logging.basicConfig(level=logging.DEBUG)在服务器文件中
🛠️ 发展
快速命令
# Start everything
make start # or make launch, make demo
# Development setup
make dev-setup # Install deps + setup + verify
# Run tests
make test # Basic functionality test
make quick-test # Quick search test
# Maintenance
make clean # Clean cache files
make verify # Verify installation
添加自定义代理
- 创建新代理 在
agents/research_crew.py:
custom_agent = Agent(
role='Custom Specialist',
goal='Your specific goal',
backstory='Agent background',
tools=[your_tools]
)
- 添加到船员工作流程:
custom_task = Task(
description="Task description",
agent=custom_agent,
expected_output="Expected result format"
)
添加新工具
- 创建工具文件 在
agents/tools/:
class CustomTool(BaseTool):
name = "Custom Tool"
description = "Tool description"
def _run(self, query: str) -> str:
# Tool implementation
return result
- 在代理商处注册 在
research_crew.py
环境配置
| 变量 | 描述 | 默认值 |
|---|---|---|
LINKUP_API_KEY |
LinkUp搜索API密钥 | 必需 |
OLLAMA_BASE_URL |
Ollama服务器URL | http://localhost:11434 |
MODEL_NAME |
Olama型号名称 | phi3:latest |
OPENAI_API_KEY |
设置为 ollama 供当地使用 |
ollama |
OPENAI_API_BASE |
Ollama OpenAI兼容端点 | http://localhost:11434/v1 |
🤝 贡献
我们欢迎捐款!以下是如何开始:
开发环境设置
# Fork and clone the repo
git clone https://github.com/anubhav-77-dev/MCP-Multi-Agent-Deep-Researcher.git
cd MCP-Multi-Agent-Deep-Researcher
# Install development dependencies
poetry install --with dev
# Run pre-commit setup
pre-commit install
贡献指南
- 🍴 分叉存储库
- 🌿 创建要素分支:
git checkout -b feature/amazing-feature - ✨ 使用清晰的注释代码进行更改
- 🧪 添加新功能的测试
- ✅ 运行测试:
make test - 📝 根据需要更新文档
- 🚀 提交拉取请求
贡献领域
- 🔧 新的代理工具和集成
- 🎨 前端UI/UX改进
- 📚 文件和示例
- 🧪 测试覆盖范围扩展
- 🐛 Bug修复和性能改进
- 🌍 国际化
📊 性能和扩展
- 快速搜索:约2-5秒(取决于LinkUp API)
- 全面研究:约30-60秒(取决于查询复杂性)
- 并发用户:支持多个同时请求
- 内存使用:~500MB-1GB(取决于Olama型号)
- 磁盘空间:~3GB(包括phi3型号)
🔒 安全与隐私
- ✅ 本地AI处理:没有数据发送到外部人工智能服务
- ✅ API密钥安全:LinkUp API密钥仅存储在本地
- ✅ 无数据持久性:默认情况下不存储研究查询
- ✅ CORS保护:可配置的原产地限制
- ⚠️ 网页搜索:发送到LinkUp API的查询(请参阅其隐私政策)
📄 许可证
该项目根据 MIT许可证 -看看 许可证 文件以获取详细信息。
🙏 致谢
采用令人惊叹的开源技术构建:
- 🤖 船员AI -多代理编排框架
- 🔍 链接起来 -深度网络搜索API
- 🧠 奥拉玛 -本地LLM服务平台
- ⚡ 快速API -现代Python web框架
- 🎭 模型上下文协议 -AI集成标准
- 📦 诗歌 -Python依赖管理
⭐ 明星历史
由以下材料制成❤️ 面向人工智能研究界