Back to Catalog

arxiv-mcp-server

blazickjp/arxiv-mcp-server
๐Ÿ”— Latest commit:6d3419a
๐Ÿ•’ Updated:Aug 3, 2025, 08:24 PM
Python
AI Tools

A Model Context Protocol server for searching and analyzing arXiv papers

MCP Trust Score
Based on our comprehensive evaluation criteria
๐Ÿค– Evaluated by gemini-2.5-flashFix
Trust Score67/100
GitHub Metrics
Repository statistics and activity
โญ GitHub Stars:1523
๐Ÿ‘ฅ Contributors:8
๐Ÿ“‹ Total Issues:20
๐Ÿ“ฆ Has Releases:No
๐Ÿ”ง Has CI/CD Pipeline:Yes
MCP Protocol Support
Implemented MCP protocol features
๐Ÿค– Evaluated by gemini-2.5-flashFix
Tools:โœ“
Prompts:โœ“
Resources:โœ“
Sampling:โœ—
Roots:โœ—
Logging:โœ—
STDIO Transport:โœ“
HTTP Transport:โœ—
OAuth2 Auth:โœ—
Dependencies
13 dependencies
Libraries and frameworks used by this MCP server
๐Ÿค– Evaluated by gemini-2.5-flashFix
Configuration
Configuration example extracted from README.md for Claude Desktop and other clients.
๐Ÿค– Evaluated by gemini-2.5-flashFix
{
  "mcpServers": {
    "arxiv-mcp-server": {
      "command": "uv",
      "args": [
        "tool",
        "run",
        "arxiv-mcp-server",
        "--storage-path",
        "/path/to/paper/storage"
      ],
      "env": {}
    },
    "arxiv-mcp-server-dev": {
      "command": "uv",
      "args": [
        "--directory",
        "path/to/cloned/arxiv-mcp-server",
        "run",
        "arxiv-mcp-server",
        "--storage-path",
        "/path/to/paper/storage"
      ],
      "env": {}
    }
  }
}
Add Quality Badge
Show your MCP trust score in your README
Trust Score Badge
[![Trust Score](https://archestra.ai/mcp-catalog/api/badge/quality/blazickjp/arxiv-mcp-server)](https://archestra.ai/mcp-catalog/blazickjp__arxiv-mcp-server)
README.md

Twitter Follow
smithery badge
Python Version
Tests
License: MIT
PyPI Downloads
PyPI Version

ArXiv MCP Server

๐Ÿ” Enable AI assistants to search and access arXiv papers through a simple MCP interface.

The ArXiv MCP Server provides a bridge between AI assistants and arXiv's research repository through the Model Context Protocol (MCP). It allows AI models to search for papers and access their content in a programmatic way.

๐Ÿค Contribute โ€ข
๐Ÿ“ Report Bug

Pulse MCP Badge

โœจ Core Features

  • ๐Ÿ”Ž Paper Search: Query arXiv papers with filters for date ranges and categories
  • ๐Ÿ“„ Paper Access: Download and read paper content
  • ๐Ÿ“‹ Paper Listing: View all downloaded papers
  • ๐Ÿ—ƒ๏ธ Local Storage: Papers are saved locally for faster access
  • ๐Ÿ“ Prompts: A Set of Research Prompts

๐Ÿš€ Quick Start

Installing via Smithery

To install ArXiv Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install arxiv-mcp-server --client claude

Installing Manually

Install using uv:

uv tool install arxiv-mcp-server

For development:

# Clone and set up development environment
git clone https://github.com/blazickjp/arxiv-mcp-server.git
cd arxiv-mcp-server

# Create and activate virtual environment
uv venv
source .venv/bin/activate

# Install with test dependencies
uv pip install -e ".[test]"

๐Ÿ”Œ MCP Integration

Add this configuration to your MCP client config file:

{
    "mcpServers": {
        "arxiv-mcp-server": {
            "command": "uv",
            "args": [
                "tool",
                "run",
                "arxiv-mcp-server",
                "--storage-path", "/path/to/paper/storage"
            ]
        }
    }
}

For Development:

{
    "mcpServers": {
        "arxiv-mcp-server": {
            "command": "uv",
            "args": [
                "--directory",
                "path/to/cloned/arxiv-mcp-server",
                "run",
                "arxiv-mcp-server",
                "--storage-path", "/path/to/paper/storage"
            ]
        }
    }
}

๐Ÿ’ก Available Tools

The server provides four main tools:

1. Paper Search

Search for papers with optional filters:

result = await call_tool("search_papers", {
    "query": "transformer architecture",
    "max_results": 10,
    "date_from": "2023-01-01",
    "categories": ["cs.AI", "cs.LG"]
})

2. Paper Download

Download a paper by its arXiv ID:

result = await call_tool("download_paper", {
    "paper_id": "2401.12345"
})

3. List Papers

View all downloaded papers:

result = await call_tool("list_papers", {})

4. Read Paper

Access the content of a downloaded paper:

result = await call_tool("read_paper", {
    "paper_id": "2401.12345"
})

๐Ÿ“ Research Prompts

The server offers specialized prompts to help analyze academic papers:

Paper Analysis Prompt

A comprehensive workflow for analyzing academic papers that only requires a paper ID:

result = await call_prompt("deep-paper-analysis", {
    "paper_id": "2401.12345"
})

This prompt includes:

  • Detailed instructions for using available tools (list_papers, download_paper, read_paper, search_papers)
  • A systematic workflow for paper analysis
  • Comprehensive analysis structure covering:
    • Executive summary
    • Research context
    • Methodology analysis
    • Results evaluation
    • Practical and theoretical implications
    • Future research directions
    • Broader impacts

โš™๏ธ Configuration

Configure through environment variables:

VariablePurposeDefault
ARXIV_STORAGE_PATHPaper storage location~/.arxiv-mcp-server/papers

๐Ÿงช Testing

Run the test suite:

python -m pytest

๐Ÿ“„ License

Released under the MIT License. See the LICENSE file for details.


Made with โค๏ธ by the Pearl Labs Team

ArXiv Server MCP server

arxiv-mcp-server MCP Server | Documentation & Integration | Archestra