arxiv-mcp-server
by: blazickjp
A Model Context Protocol server for searching and analyzing arXiv papers
π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:
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.