ArXiv MCP Server
A flexible service for searching and analyzing academic papers on arXiv.
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.
๐ค Contribute โข ๐ Report Bug
โจ 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"
})
โ๏ธ 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 Pear Labs Team
Related Servers
DuckDuckGo Search
Provides web search functionality using the DuckDuckGo Search API.
SelfMemory
Let your memories live forever by passing your knowledge to the next generation with SelfMemory.
LLM Jukebox
Enables LLMs to search, download, and extract information from YouTube music videos.
MidOS Research Protocol
MidOS Research Protocol: curated skills & knowledge versioned.
Kagi
Kagi search API integration
Google Search
Web search and webpage content extraction using the Google Custom Search API.
MCP Agent
A lightweight, local MCP server in Python that enables RAG search through AWS Lambda.
Gemini AI MCP Server
Provides AI-powered web search and summarization using the Gemini API's grounding feature.
Agora MCP
Search and buy products across thousands of online stores using the SearchAgora universal product search engine.
arXiv Search
A server for searching academic papers and preprints on arXiv.org.