MCP HubMCP Hub
blazickjp

arxiv-mcp-server

by: blazickjp

A Model Context Protocol server for searching and analyzing arXiv papers

895created 29/11/2024
Visit
arXiv
analysis

πŸ“ŒOverview

Purpose: To provide a seamless interface for AI assistants to search and access research papers on arXiv using the Message Control Protocol (MCP).

Overview: The ArXiv MCP Server acts as a bridge connecting AI models with arXiv's extensive database of research papers, enabling users to programmatically search for, access, and manage academic content efficiently.

Key Features:

  • Paper Search: Allows users to query arXiv for papers with advanced filters like date ranges and categories, enhancing the searching experience.

  • Paper Access: Provides the capability to download and read papers directly, simplifying the retrieval of academic content.

  • Paper Listing: Facilitates tracking of all downloaded papers for easy reference and organization.

  • Local Storage: Ensures papers are saved locally, leading to faster access during repeated inquiries.

  • Prompts for Research: Offers a comprehensive set of research prompts designed to assist in analyzing academic papers effectively.


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 Message Control Protocol (MCP). It allows AI models to search for papers and access their content in a programmatic way.

✨ 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:

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 the development environment
git clone https://github.com/blazickjp/arxiv-mcp-server.git
cd arxiv-mcp-server

# Create and activate the 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"
            ]
        }
    }
}

πŸ’‘ 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 instructions for using available tools and a systematic workflow for paper analysis.

βš™οΈ 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.