arxiv-mcp-server

MCP.Pizza Chef: blazickjp

The ArXiv MCP Server is a specialized Model Context Protocol server designed to facilitate AI assistants in searching, accessing, and analyzing academic papers from arXiv. It acts as a bridge between AI models and the vast repository of scientific literature on arXiv, providing a simple and efficient MCP interface. This server supports Python 3.11+ and is open-source under the MIT license, ensuring easy integration and extensibility. It is ideal for developers building AI-powered research tools, academic assistants, or knowledge discovery systems that require real-time access to scholarly articles.

Use This MCP server To

Search arXiv papers by keywords or topics Retrieve abstracts and metadata of scientific papers Analyze research trends from arXiv datasets Integrate arXiv paper search into AI assistants Enable real-time academic literature discovery Support citation extraction and paper summarization

README

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:

Variable Purpose Default
ARXIV_STORAGE_PATH Paper 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 FAQ

How do I install the arXiv MCP Server?
You can install it via PyPI using 'pip install arxiv-mcp-server'. It requires Python 3.11 or higher.
Is the arXiv MCP Server open source?
Yes, it is licensed under the MIT license and available on GitHub for contributions and issue tracking.
Can the arXiv MCP Server be used with different LLM providers?
Yes, it is designed to work with any MCP-compatible AI models, including OpenAI, Anthropic Claude, and Google Gemini.
Does the server provide full-text access to arXiv papers?
It primarily provides search, abstracts, and metadata access. Full-text retrieval depends on arXiv's availability and policies.
How does the server handle updates to arXiv papers?
The server periodically syncs with arXiv to keep its index current, ensuring up-to-date search results.
What programming languages is the server compatible with?
The server is implemented in Python 3.11+, but it exposes an MCP interface usable by any language supporting MCP clients.
Are there any usage limits or rate limits?
Usage limits depend on your deployment and arXiv's API policies; the server itself does not impose additional limits.
How can I contribute to the arXiv MCP Server project?
Contributions are welcome via GitHub by submitting issues, feature requests, or pull requests.