Skip to main content
Glama

arXiv MCP Server

A Model Context Protocol (MCP) server that provides AI assistants with a seamless, programmatic interface to search and read academic papers from the open-access arXiv repository.

This project is AI-Optimized, meaning the returned data is carefully formatted to remain within context windows and provide exactly what large language models need for efficient, hallucination-free research.

Documentation

  • API Documentation Focus: Detailed breakdown of the arXiv API tools, parameters, and rate limit protections.

  • Client Configurations: Additional examples for running this server on different AI Clients.

  • Agent Skill Pack: An official agentskills.io compliant instruction profile to teach AI assistants the most efficient way to chain these arxiv_* MCP tools.

Related MCP server: arXiv MCP Server

Features & Tools

  • arxiv_search: Fast discovery tool. Pass a search string (like "quantum gravity") and get a lightweight list of IDs, Titles, and Authors.

  • arxiv_search_trending_papers: Retrieves the newest papers for a specific category without keywords.

  • arxiv_search_related_papers: Semantic discovery tool to find papers related to a specific paper_id.

  • arxiv_get_paper_details: In-depth reading tool. Pass a paper ID to retrieve the full abstract, categories, and author metadata neatly formatted in Markdown.

  • arxiv_get_paper_summary: Provides an AI-ready prompt wrapper to generate a rapid summary of the thesis, methodology, and limitations of a paper.

  • arxiv_get_paper_citations: Generates a perfectly formatted citation in BibTeX, APA, or MLA format for any paper.

  • arxiv_download_paper: Direct integration tool. Pass a paper ID and a local system path to have the MCP server automatically download the full PDF to your machine.

Installation

This server is written in TypeScript and runs via node.

  1. Clone this repository (or install via your preferred package manager).

  2. Install dependencies:

    npm install
  3. Build the TypeScript project:

    npm run build

Usage

This server communicates over standard input/output (stdio). You can integrate it natively via Node or run it completely isolated using Docker.

Native Node.js

Use the following command configuration in your MCP client:

node /path/to/arxic-mcp/build/index.js

Docker

We provide a lightweight Alpine-based container. First, build the image:

docker build -t arxic-mcp .

Then, run your MCP client using this command configuration:

docker run -i --rm -v /home/user/Downloads:/home/user/Downloads arxic-mcp

(Note: Passing -v ensures the download_pdf tool has permission to save files to your local host machine!)

Client Configurations

You can add this server to any MCP-compatible client.

Important: Replace /absolute/path/to/ with the actual path on your system.

This method ensures the arxiv_download_paper tool has permission to save PDFs to your machine via the -v volume mount. Because Docker handles permissions differently across operating systems, please use the correct configuration for your machine:

Linux / macOS

If you use Mac or Linux, you must pass your User ID -u 1000:1000 (or 501:20 for some Macs) so the downloaded PDF isn't locked as a root file.

{
  "mcpServers": {
    "arxic-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-u",
        "1000:1000",
        "-v",
        "/Users/yourname/Downloads:/Users/yourname/Downloads", 
        "arxic-mcp"
      ]
    }
  }
}

Windows (WSL2 / Docker Desktop)

Windows Docker Desktop generally handles file mount translations automatically. You can safely omit the User ID flag, but be sure to use the proper /c/Users/... or WSL absolute path format.

{
  "mcpServers": {
    "arxic-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-v",
        "/c/Users/yourname/Downloads:/c/Users/yourname/Downloads", 
        "arxic-mcp"
      ]
    }
  }
}

Option 2: Native Node.js

If you prefer running natively without Docker:

{
  "mcpServers": {
    "arxic-mcp": {
      "command": "node",
      "args": [
        "/absolute/path/to/arxic-mcp/build/index.js"
      ]
    }
  }
}

Pro-Tip: Running natively enables the arxiv_download_paper tool to save PDFs to any folder on your actual system (like ~/Downloads), removing the need to configure complex volume mounts!

IDE Specific Instructions

  • Antigravity: Add the JSON block above to your local .gemini/ configuration file.

  • Claude Desktop: Add to ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) or %APPDATA%\Claude\claude_desktop_config.json (Windows).

  • Cursor: Navigate to Settings > Features > MCP Servers. Add a new command server using the raw commands above (e.g., node /path/to/index.js).

  • Claude Code (CLI): Run claude mcp add arxic-mcp -- node /absolute/path/to/arxic-mcp/build/index.js

  • Windsurf: Add to ~/.codeium/windsurf/mcp_config.json

  • Zed: Add to settings.json under "experimental.mcp"

Attribution

Thank you to arXiv for use of its open access interoperability. This project acknowledges and respects the hard work of the arXiv team and the scientific community they support.

License

MIT


Made with ❤️ by Traves Theberge

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Traves-Theberge/arXiv-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server