arXiv Research Assistant
Interact with the arXiv.org paper database. Supports keyword search, paper lookups, author searches, and trend analysis.
π§ arXiv Research Assistant MCP Server
This project is an MCP (Model Context Protocol) server built to interact with the vast arXiv.org paper database.
It allows clients like Claude AI to search, explore, and compare arXiv papers efficiently β all through a custom-built, local server. Itβs built with Python and the FastMCP framework, and uses uv for lightweight package management.
β¨ Features
-
π Keyword-based Paper Search
Search arXiv papers by keywords, with options to sort by relevance or most recent. -
π Latest Papers by Category
Specify an arXiv category code (e.g.,cs.AI,math.AP) to fetch the most recent papers in that field. -
π Paper Details Lookup
Fetch detailed metadata using a paper's arXiv ID: title, authors, abstract, categories, DOI, PDF link, and more. -
π§βπ¬ Author-based Paper Search
Retrieve a list of papers published by a specific author. -
π Trend Analysis (Experimental)
Get an overview of trending keywords or topics based on recent papers in a category (currently uses mock data). -
π Summarization Prompt Generator
Dynamically generate prompts that help LLMs summarize a selected paper more effectively. -
π Comparison Prompt Generator
Provide two paper IDs to generate a structured prompt for comparing their content.
π οΈ Tech Stack
- Python 3.11+
- FastMCP
- uv (for dependency & environment management)
- requests (for API communication)
- xml.etree.ElementTree (for parsing XML responses)
π Getting Started
Installing via Smithery
To install arXiv Research Assistant MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install arxiv-paper-mcp --client claude
Installation from PyPI
uv pip install arxiv-paper-mcp
π§ Clone the repository (for development)
git clone https://github.com/daheepk/arxiv-mcp-server.git
cd arxiv-mcp-server
π§ Install Dependencies (for development)
Use uv to install all dependencies in editable mode:
uv pip install -e .
βοΈ How to Run
βΆοΈ Run the server (locally)
arxiv-paper-mcp
π Use with Claude
To use this MCP server with Claude, add the following JSON configuration to Claude's MCP settings:
{
"mcpServers": {
"arXivPaper": {
"command": "uv",
"args": [
"tool",
"run",
"arxiv-paper-mcp"
]
}
}
}
Project Structure
arxiv-mcp-server/
βββ arxiv_mcp/ # Main package
β βββ __init__.py
β βββ app.py # FastMCP app setup
β βββ server.py # Server entry point
β βββ utils.py # arXiv API communication logic
β βββ resources/ # MCP resources (categories, authors, etc.)
β βββ tools/ # MCP tools (search, detail lookup, trends)
β βββ prompts/ # Prompt templates (summarize, compare)
βββ pyproject.toml # Project config & dependencies
βββ README.md # This file
Related Servers
PubChem
Extracts basic chemical information about drugs and compounds from the PubChem API.
Google Search
Web search and webpage content extraction using the Google Custom Search API.
Google Web Search (Gemini)
Provides Google Web Search functionality using the Gemini API. Requires a Google API Key or OAuth credentials.
Gemini Search
Generates responses using the Gemini API and Google Search for up-to-date information.
Exa
Exa AI Search API
Google News
Google News search capabilities with automatic topic categorization and multi-language support via SerpAPI integration.
Dartpoint
Access public disclosure information for Korean companies (DART) using the dartpoint.ai API.
Brave Search
An MCP server for the Brave Search API, providing both web and local search capabilities.
MCP Registry Server
A server for discovering and retrieving other MCP servers via MCPulse.
Algolia Search
A server for searching an Algolia index using the Algolia Search API.