arXiv MCP Server
Allows searching and fetching scientific papers from arXiv, enabling users to query papers by category, date, and title, and retrieve full abstracts for specific research papers.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@arXiv MCP Server Find the latest papers about large language models in cs.CL"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
arXiv MCP Server
An MCP (Model Context Protocol) server that lets LLMs like Claude search and fetch arXiv papers directly.
Features
Fetch recent papers from any arXiv category and store them locally
Query papers with flexible filtering by date, category, title, and entry ID
Retrieve full abstracts on demand for papers of interest
Clean up old papers from the local database
Database statistics by publication date and category
Tools
Tool | Parameters | Description |
|
| Fetch recent papers from arXiv API and store in local database |
|
| Count how many papers were published in a category on a specific date |
|
| Query local database with flexible filtering and field selection |
|
| Delete papers by date and/or category |
| — | Paper counts by publication date and top categories |
Design principle: fetch_papers and query_papers return only titles and metadata by default to save context. Use query_papers(fields=["abstract"]) when you need abstracts for specific papers.
Installation
Claude Code (recommended)
Add to your ~/.claude.json under mcpServers:
{
"mcpServers": {
"arxiv": {
"command": "uvx",
"args": ["arxiv-today-mcp"],
"type": "stdio"
}
}
}Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"arxiv": {
"command": "uvx",
"args": ["arxiv-today-mcp"]
}
}
}Usage Example
Browse today's papers: Ask Claude "What's new in cs.AI today?" — Claude will call
fetch_papersthenquery_papers, returning titles grouped by topic.Get details: "Tell me more about papers 2 and 5" — Claude will call
query_paperswith those entry IDs andfields=["abstract"]to summarize the abstracts.
Configuration
The database path can be overridden with an environment variable:
{
"mcpServers": {
"arxiv": {
"command": "uvx",
"args": ["arxiv-today-mcp"],
"env": {
"ARXIV_MCP_DB_PATH": "/your/custom/path/papers.db"
}
}
}
}Requirements
Available Tools
5 toolscleanup_papersA
Delete papers from the local database by date and/or category.
At least one filter must be provided to prevent accidental full deletion.
Filters are combined with AND logic.
Args:
before_date: Delete papers published before this date (exclusive), e.g. "2026-03-01"
date: Delete papers published on this specific date, e.g. "2026-03-18"
categories: Delete only papers in these categories (OR logic), e.g. ["cs.AI", "cs.LG"]
Inputs: before_date, date, categories. Returns: result
count_papers_on_dateA
Count how many papers were published in an arXiv category on a specific date.
Use this before fetch_papers to check the volume of papers for a given day,
so you can decide how many to fetch with fetch_papers(max_results=N).
Args:
category: arXiv category (e.g. "cs.AI", "cs.CL", "stat.ML")
date: Date in YYYY-MM-DD format (e.g. "2026-03-18")
Inputs: category (required), date (required). Returns: result
fetch_papersA
Fetch recent papers from arXiv API and store them in the local database.
Returns only fetched paper titles (not abstracts) to save context.
Use query_papers(entry_ids=[...], fields=["abstract"]) to retrieve abstracts for specific papers.
Args:
category: arXiv category (e.g. "cs.AI", "cs.CL", "stat.ML")
date: Fetch papers published on a specific date in YYYY-MM-DD format.
When provided, takes priority over num_days.
num_days: Number of days to look back (default: 3). Ignored when date is set.
max_results: Maximum number of papers to fetch (default: 100)
Inputs: category (required), date, num_days, max_results. Returns: result
get_statsA
Get statistics about papers stored in the local database.
Returns total count, date range, per-date breakdown, and top categories.
Inputs: no named parameters. Returns: result
query_papersA
Query papers from the local database with flexible filtering and field selection.
All filter parameters are combined with AND logic. Within categories, OR logic is used.
If no filter parameters are provided, returns the most recent papers up to max_results.
Args:
date: Filter by publication date in YYYY-MM-DD format (e.g. "2026-03-18")
categories: Filter by one or more arXiv categories (OR logic), e.g. ["cs.AI", "cs.LG"]
title: Filter by title keyword (title field only, not abstract; case-insensitive for ASCII)
entry_ids: Fetch specific papers by their arXiv entry IDs. Typically used alone;
combining with other filters applies AND logic and may return fewer results
than expected if the other conditions do not match.
fields: Fields to return. Valid: entry_id, title, authors, abstract, url, published, updated, categories.
Defaults to: entry_id, title, authors, published, url
max_results: Maximum number of results to return (default: 500)
Inputs: date, categories, title, entry_ids, +2 more. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose with no overlap: cleanup_papers deletes papers, count_papers_on_date counts papers for a specific date/category, fetch_papers retrieves papers from arXiv API, get_stats provides database statistics, and query_papers queries the local database with flexible filtering. The descriptions clearly differentiate their functions and intended use cases.
All tool names follow a consistent verb_noun pattern with snake_case: cleanup_papers, count_papers_on_date, fetch_papers, get_stats, query_papers. The naming is predictable and readable throughout the set, with clear action-object relationships.
Five tools is well-scoped for an arXiv server focused on fetching, querying, and managing papers in a local database. Each tool earns its place by covering distinct aspects of the workflow: data acquisition (fetch_papers), querying (query_papers), counting (count_papers_on_date), cleanup (cleanup_papers), and monitoring (get_stats).
The tool set provides complete coverage for the arXiv paper management domain: fetch_papers acquires data, query_papers allows flexible retrieval, count_papers_on_date supports planning, cleanup_papers handles deletion, and get_stats offers monitoring. There are no obvious gaps—agents can perform the full lifecycle from fetching to querying to cleanup with appropriate statistics.
Maintenance
Related MCP Connectors
Queries ArXiv for AI/CS/math papers and returns structured abstracts, authors, PDF links, and BibT
arXiv and OpenAlex/Crossref paper search (an open Google Scholar alternative) as agent tools.
Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.
Queries ArXiv for AI/CS/math papers and returns structured abstracts, authors, PDF links, and Bib.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables searching, downloading, and managing academic papers from arXiv.org through natural language interactions. Provides tools for paper discovery, PDF downloads, and local paper collection management.41MIT
- AlicenseAqualityDmaintenanceEnables interaction with arXiv.org to search scholarly articles, retrieve metadata, download PDFs, and load article content directly into LLM context for analysis.53MIT
- AlicenseNot gradedqualityDmaintenanceEnables agents to search, analyze, and explore arXiv academic papers with advanced multi-field search, author lookup, category browsing, citation extraction, and bibliography export.33 npmApache 2.0
- AlicenseAqualityBmaintenanceEnables AI assistants to search arXiv papers, retrieve metadata, browse categories, and read paper text.4MIT