MCP server that connects Cursor to the arXiv public API
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"mcp-arxiv","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# arXiv MCP for Cursor [](LICENSE) [](https://pypi.org/project/mcp-arxiv/) Small **MCP server in Python** that connects Cursor (or any MCP client) to the public [arXiv](https://arxiv.org) API — **no API key required**. ```text Cursor → MCP → arXiv MCP Server → arXiv API ``` - GitHub: https://github.com/easimawen/mcp-arxiv - PyPI: https://pypi.org/project/mcp-arxiv/ *(after the first publish)* > The PyPI name `arxiv-mcp` is already taken by another project. This package is published as **`mcp-arxiv`**. ## Tools | Tool | Purpose | |------|---------| | `search_papers` | Search arXiv; return structured metadata | | `get_paper` | Fetch one paper by arXiv ID | | `get_recent_papers` | Recent papers in a category (`cs.AI`, `cs.LG`, …) | Design docs: [RFC-0001](docs/rfc/RFC-0001-arxiv-mcp-mvp.md) · [architecture](docs/architecture.md) ## Requirements - Python 3.14+ - [uv](https://docs.astral.sh/uv/) (recommended) ## Quick usage (after PyPI publish) ```json { "mcpServers": { "arxiv": { "command": "uvx", "args": ["mcp-arxiv"] } } } ``` ## Install from the repository ```bash git clone https://github.com/easimawen/mcp-arxiv.git cd mcp-arxiv uv sync ``` Cursor MCP config (use the absolute path to your clone): ```json { "mcpServers": { "arxiv": { "command": "uv", "args": ["--directory", "/ABSOLUTE/PATH/TO/mcp-arxiv", "run", "mcp-arxiv"] } } } ``` ## CLI smoke test ```bash uv run python -c " import asyncio from arxiv_mcp.arxiv_client import ArxivClient async def main(): async with ArxivClient() as c: p = await c.get_paper('2510.16079') print(p.title, p.url) asyncio.run(main()) " ``` ## Development ```bash uv sync --group dev uv run pytest uv run mcp-arxiv ``` ## Publish (maintainers) 1. Create a [PyPI](https://pypi.org) account if needed. 2. Add a pending trusted publisher…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.