Skip to main content

A flexible arXiv search and analysis service with MCP protocol support - simplified version

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paper_retrieval_mcp-0.4.3.tar.gz (26.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paper_retrieval_mcp-0.4.3-py3-none-any.whl (27.1 kB view details)

Uploaded Python 3

File details

Details for the file paper_retrieval_mcp-0.4.3.tar.gz.

File metadata

  • Download URL: paper_retrieval_mcp-0.4.3.tar.gz
  • Upload date:
  • Size: 26.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for paper_retrieval_mcp-0.4.3.tar.gz
Algorithm Hash digest
SHA256 883f69a1f0bcc8baf82c23b951c82a59b7394ffc8022891339f3bfb510ec0620
MD5 1fd881ec171cc5a449524e4cf72124b2
BLAKE2b-256 63d2088e2ffb2a96a725be65ab26eaa833fa7bb2834fe8e5fea1a94bef71e4c0

See more details on using hashes here.

File details

Details for the file paper_retrieval_mcp-0.4.3-py3-none-any.whl.

File metadata

File hashes

Hashes for paper_retrieval_mcp-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 fbe0049c6a3703e1fd4321c8766300d4c1db41b4a2cfdba939fc3b4afa92b582
MD5 c4a264501838ce5c21e8d6a18eb6c327
BLAKE2b-256 009c1125556dc0b36e8931a096e2b96d5f7349f63d8538e1fb1e7135a935db24

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page