使用说明
arXiv MCP Server
通过模型上下文协议访问世界上最大的学术论文库
简化版 模型上下文协议 该服务器将AI助手与arXiv庞大的学术论文库连接起来。您可以直接在AI工作流中搜索、分析和下载研究论文。
🚀 快速入门
先决条件
- Python 3.12及以上版本
- 紫外线 包管理器
安装
选项1:Docker(推荐)
# Pull and run the Docker image
docker run --rm -it ghcr.io/tejas242/arxiv-mcp:latest
# Or using docker-compose
git clone https://github.com/tejas242/arxiv-mcp.git
cd arxiv-mcp
docker compose up
选项2:本地开发
# Clone and setup
git clone https://github.com/tejas242/arxiv-mcp.git
cd arxiv-mcp
uv sync
# Test the server
uv run main.py
🛠️ 可用功能
| 功能 | 状态 | 描述 | 参数 |
|---|---|---|---|
search_papers ✅ 工作 |
使用灵活的查询语法搜索arXiv论文 | query, max_results, sort_by, sort_order |
|
get_paper_details ✅ 工作 |
获取任何arXiv论文的完整元数据 | arxiv_id |
|
build_advanced_query ✅ 工作 |
使用多个字段构建复杂的搜索查询 | title_keywords, author_name, category, abstract_keywords |
|
get_arxiv_categories ✅ 工作 |
列出所有可用的arXiv主题类别 | 无 | |
search_by_author ⚠️ 有限的 |
按特定作者查找论文(建议使用search_papers功能) | author_name, max_results |
|
search_by_category ⚠️ 有限的 |
按类别浏览论文(建议使用search_papers功能) | category, max_results |
|
download_paper_pdf 螺丝刀 需要修复 |
下载论文PDF文件(处理重定向问题) | arxiv_id, save_path |
函数详情
✅ 全部功能正常运作
search_papers - 主要搜索功能
- 支持完整的arXiv查询语法
- 处理关键词、作者、类别、标题
- 可配置的排序和分页
- 返回包含摘要和链接的格式化结果
get_paper_details - 详细的论文信息
- 完整的元数据提取
- 作者信息及所属机构
- 类别分类及链接
- 出版日期和更新信息
build_advanced_query - 查询构建助手
- 结合多个搜索条件
- 支持标题、作者、类别和摘要搜索
- 返回格式正确的查询字符串
get_arxiv_categories - 类别参考
- arXiv主题分类的完整列表
- 每个类别的描述
- 有助于构建有针对性的搜索
⚠️ 功能有限(有替代方案可用)
search_by_author - 使用 search_papers('au:"Author Name"') 相反;而是
search_by_category - 使用 search_papers('cat:category_code') 相反
🔧 需要修复的功能
download_paper_pdf - HTTP重定向处理需要改进
- 当前由于HTTPS/HTTP重定向问题而失败
- 可以直接通过搜索结果中提供的链接访问PDF文件
⚙️ 配置
Claude 桌面设置
Configuration Instructions
对于本地安装:
在你的Claude桌面配置文件中添加:
macOS(苹果电脑操作系统): ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"arxiv-mcp": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/arxiv-mcp",
"run",
"main.py"
]
}
}
}
对于Docker安装:
{
"mcpServers": {
"arxiv-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/tejas242/arxiv-mcp:latest"
]
}
}
}
VS Code MCP 扩展
VS Code Configuration
{
"mcp": {
"servers": {
"arxiv-mcp": {
"command": "uv",
"args": ["--directory", "/path/to/arxiv-mcp", "run", "main.py"]
}
}
}
}
💡 使用示例
核心搜索操作
# Search for papers about transformers
search_papers("transformer architecture")
# Advanced query with specific fields
search_papers('ti:"attention mechanism" AND cat:cs.LG')
# Author-specific search (recommended approach)
search_papers('au:"Geoffrey Hinton"')
# Category browsing (recommended approach)
search_papers('cat:cs.AI')
研究工作流程
# 1. Find the famous "Attention" paper
search_papers('ti:"Attention Is All You Need"')
get_paper_details("1706.03762")
# 2. Explore related work
search_papers("transformer neural networks")
# 3. Build complex queries
query = build_advanced_query(
title_keywords="few-shot learning",
author_name="Tom Brown",
category="cs.LG"
)
search_papers(query)
📊 arXiv分类参考
Popular Categories
| 代码 | 描述 | 示例主题 |
|---|---|---|
| 项目 | 英文名称 | 中文名称 |
| 人工智能 | 机器学习、神经网络、人工智能理论 | cs.LG |
| 机器学习 | 深度学习、强化学习、统计学习 | cs.CV |
| 计算机视觉 | 图像处理、目标检测、视觉识别 | cs.CL |
| 计算与语言 | 自然语言处理(NLP)、语言模型、文本处理 | cs.CR |
| 密码学与安全 | 安全协议、加密、隐私 | stat.ML |
| 机器学习(统计学) | 统计学习理论,贝叶斯方法 | physics.gen-ph |
| 普通物理学 | 理论物理学,量子力学 | math.NA |
| 数值分析 | 计算数学,算法 | q-bio.NC |
| 量化生物学 | 神经科学,计算生物学 | get_arxiv_categories() 使用
以获取完整的可用类别列表。
🧪 测试结果
基于对所有功能的全面测试:
- ✅ 可靠的功能使用关键词、作者、类别进行论文搜索
- 100%的成功率论文细节检索
- 完整的元数据提取工作已完成查询构造
- 支持所有语法组合类别列表
所有arXiv分类均可访问
- ⚠️ 推荐替代方法作者搜索
search_papers('au:"Author Name"')使用search_by_author() - 而不是按类别浏览
search_papers('cat:category')使用search_by_category()
而不是
- 🔧 已知问题PDF文件下载
重定向处理有待改进(可通过直接链接访问的PDF文件)
🔧 开发
arxiv-mcp/
├── src/arxiv_mcp/ # Main package
│ ├── server.py # MCP server implementation
│ ├── arxiv_client.py # arXiv API wrapper
│ ├── models.py # Pydantic data models
│ └── utils.py # Helper functions
├── tests/ # Test suite
├── main.py # Entry point
└── pyproject.toml # Project config
项目结构
uv run pytest tests/ -v
运行测试
# Enable detailed logging
PYTHONPATH=src uv run python -c "
import logging
logging.basicConfig(level=logging.DEBUG)
from arxiv_mcp.server import main
main()
"
调试模式
Common Issues & Solutions
⚠️ 故障排除
- 服务器未检测到
- ✅ 验证MCP配置中的绝对路径
uv run main.py - ✅ 测试服务器运行中:
✅ 配置更改后重启Claude桌面版
- 搜索问题
- ✅ 使用arXiv查询语法(参见上面的示例)
get_arxiv_categories() - ✅ 检查类别名称:
- ✅ 尝试使用更广泛的搜索词
search_papers()✅ 使用
而不是特定的搜索功能
- PDF下载失败
- ✅ 通过搜索结果中的链接访问PDF文件
- ✅ 检查网络连接
✅ 验证arXiv ID格式(例如,“1706.03762”)
模型上下文协议