深度研究MCP服务器
Deep Research是一个基于代理的工具,提供网络搜索和高级研究功能。它利用了HuggingFace的 smolagents 并且被实现为MCP服务器。
该项目基于 HuggingFace的open_deep_research示例.
特性
- 网络搜索和信息收集
- PDF和文档分析
- 图像分析和描述
- YouTube文字记录检索
- 存档网站搜索
需求
- Python 3.11或更高版本
uv包管理器- 以下API密钥:
- OpenAI API密钥 - 拥抱脸令牌 - SerpAPI密钥
安装
- 克隆存储库:
git clone https://github.com/Hajime-Y/deep-research-mcp.git
cd deep-research-mcp- 创建虚拟环境并安装依赖项:
uv venv
source .venv/bin/activate # For Linux or Mac
# .venv\Scripts\activate # For Windows
uv sync环境变量
创建一个 .env 在项目的根目录中创建文件,并设置以下环境变量:
OPENAI_API_KEY=your_openai_api_key
HF_TOKEN=your_huggingface_token
SERPER_API_KEY=your_serper_api_key您可以在以下网址注册以获得SERPER_API_KEY Serper.dev.
用法
启动MCP服务器:
uv run deep_research.py这将启动 deep_research 代理作为MCP服务器。
Docker使用
您还可以在Docker容器中运行此MCP服务器:
# Build the Docker image
docker build -t deep-research-mcp .
# Run with required API keys
docker run -p 8080:8080 \
-e OPENAI_API_KEY=your_openai_api_key \
-e HF_TOKEN=your_huggingface_token \
-e SERPER_API_KEY=your_serper_api_key \
deep-research-mcp向MCP客户端注册
要在不同的客户端中将此Docker容器注册为MCP服务器:
克劳德桌面
将以下内容添加到您的Claude Desktop配置文件中(通常位于 ~/.config/Claude/claude_desktop_config.json 在Linux上, ~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上,或 %APPDATA%\Claude\claude_desktop_config.json 在Windows上):
{
"mcpServers": {
"deep-research-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "OPENAI_API_KEY=your_openai_api_key",
"-e", "HF_TOKEN=your_huggingface_token",
"-e", "SERPER_API_KEY=your_serper_api_key",
"deep-research-mcp"
]
}
}
}光标IDE
对于Cursor IDE,添加以下配置:
{
"mcpServers": {
"deep-research-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "OPENAI_API_KEY=your_openai_api_key",
"-e", "HF_TOKEN=your_huggingface_token",
"-e", "SERPER_API_KEY=your_serper_api_key",
"deep-research-mcp"
]
}
}
}与远程MCP服务器一起使用
如果您在远程计算机上运行MCP服务器或将其作为服务公开,则可以使用基于URL的配置:
{
"mcpServers": {
"deep-research-mcp": {
"url": "http://your-server-address:8080/mcp",
"type": "sse"
}
}
}关键组件
deep_research.py:MCP服务器的入口点create_agent.py:代理创建和配置scripts/:各种工具和实用程序
- text_web_browser.py:基于文本的web浏览器 - text_inspector_tool.py:文件检查工具 - visual_qa.py:图像分析工具 - mdconvert.py:将各种文件格式转换为Markdown
许可证
此项目是在Apache许可证2.0下提供的。
致谢
该项目使用HuggingFace的代码 smolagents 微软的 autogen 项目。
