blazickjp/arxiv-mcp-server
A local MCP server for agent literature work. Original-LaTeX section reads, BibTeX from arXiv metadata, and topic watches. Papers stay on disk. Search is optional.
arxiv‑mcp‑server – 用于阅读和组织 arXiv 论文的本地 MCP 工具
简介 – 一个基于 Python 的小型服务器,使用 Model Context Protocol (MCP) 进行通信。它在本地运行(通过 uvx 或作为常规命令),并公开一组“工具”,让 AI 助手/代理能够搜索 arXiv、下载论文、逐节阅读(包括渲染的 Markdown 版本和原始 LaTeX)、保留 BibTeX 引用,并设置主题监视,以便在新论文出现时发出提醒。该服务器不托管任何模型;它只向已有语言模型的客户端提供数据。
主要功能
| 功能 | 使用方法 | 获得的输出 |
|---|---|---|
搜索 arXiv (search_papers) |
提供查询、可选类别、日期范围、排序 | 最多 5 个简洁结果(标题、作者、摘要片段) – 可翻页并请求完整摘要 |
下载与阅读 (download_paper, read_paper) |
提供 arXiv ID;服务器获取 HTML → Markdown(PDF 回退)并本地存储 | 论文的受限块(默认 12,000 字符)以及分页信息。可明确请求全文。 |
章节级访问 (get_paper_outline, read_paper_section) |
首先请求大纲,然后请求特定的标题 ID | 单个章节的精确 Markdown,适合逐步分析 |
原始 LaTeX (get_paper_latex, list_paper_latex_sections, get_paper_latex_section) |
与 Markdown 相同的流程,但获取作者提交的 LaTeX 源码 | 有限的 LaTeX 片段,当需要精确方程或宏时很有用 |
引用处理 (citation_graph, export_citations) |
查询论文的参考文献和引用文献(Semantic Scholar)或导出 BibTeX | 小型引用图和可直接粘贴的 BibTeX 条目 |
主题监视 (watch_topic, check_alerts, 等) |
保存关键词 + 可选的 arXiv 类别;服务器记录最后检查时间戳 | 调用 check_alerts 时,收到匹配监视的新论文 |
语义搜索 (semantic_search, reindex) – pro 扩展 |
下载论文后,运行本地嵌入索引按语义搜索 | 无需联系 arXiv 即可找到相似论文;需要可选的 pro 扩展 |
如何运行
- 最快 –
uvx arxiv-mcp-server。uvx创建隔离环境,从 PyPI 下载包(arxiv-mcp-server==0.8.2),并在 stdio 上启动服务器。 - 永久安装到 PATH –
uv tool install arxiv-mcp-server(或添加[pdf]/[pro]扩展)。 - HTTP 模式 – 设置
TRANSPORT=http和HOST/PORT环境变量;客户端随后连接到http://host:port/mcp。
客户端集成
README 提供了各种支持 MCP 的工具(Claude Code、OpenAI Codex、Hermes Agent、VS Code/Kiro、Claude Desktop)的现成 JSON 片段。该片段指示客户端使用 uvx(或已安装的二进制文件)启动服务器,并可选地指定自定义存储目录(默认为 ~/.arxiv-mcp-server/papers)。
为什么不仅仅是搜索包装器 服务器不执行搜索或引用图构建的重任;这些调用发送到官方 arXiv API、Semantic Scholar 等。留在您机器上的是文献工作流 – 下载论文、保留本地 Markdown/LaTeX 副本、提取大纲和管理监视。这使 LLM 实际看到的数据受到您的控制,避免反复将大型 PDF 拉入模型的上下文。
谁将受益
- 使用 LLM 助手探索新主题并希望助手按需获取真实论文的研究人员或学生。
- 构建自定义 AI 代理的开发者,需要可靠的本地学术内容源,而不必构建自己的 arXiv 抓取器。
- 任何需要可重现的引用数据(BibTeX)并能够直接从源码阅读 LaTeX 章节的人。
安装陷阱
- 该包仅在 PyPI 上发布;存在一个同名的无关 npm 包 – 不要使用
npm安装。 - 在 macOS/Windows GUI 应用中,
PATH可能与终端不同;您可能需要替换 `。
相关
- 项目
- 项目
- 项目
- 项目
- 项目