ArXiv MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HOST | No | Host to bind to in HTTP mode | 127.0.0.1 |
| PORT | No | Port to listen on in HTTP mode | 8000 |
| TRANSPORT | No | Transport type: stdio, http, or streamable-http | stdio |
| MAX_RESULTS | No | Maximum search results | 50 |
| ALLOWED_HOSTS | No | Comma-separated extra allowed Host header values for Streamable HTTP DNS rebinding protection | |
| ALLOWED_ORIGINS | No | Comma-separated extra allowed Origin header values for Streamable HTTP DNS rebinding protection | |
| REQUEST_TIMEOUT | No | API timeout in seconds | 60 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_papersA | Search for papers on arXiv with advanced filtering and query optimization. QUERY CONSTRUCTION GUIDELINES:
ADVANCED SEARCH PATTERNS:
CATEGORY FILTERING (highly recommended for relevance): Computer Science:
EXAMPLES OF EFFECTIVE QUERIES:
DATE FILTERING: Use YYYY-MM-DD format for historical research:
RESULT QUALITY: Default sort is RELEVANCE (most pertinent results first). Use sort_by: "date" to get newest papers first. Choose relevance for focused topic searches; choose date for monitoring recent developments. RATE LIMITING: arXiv enforces a 3-second minimum between requests. This server handles that automatically. If you see a rate limit error, wait 60 seconds before retrying — do not call the tool repeatedly in a loop. TIPS FOR FOUNDATIONAL RESEARCH:
|
| download_paperA | Download a paper from arXiv and return its text content. Tries the HTML version first for clean extraction; falls back to PDF conversion if HTML is unavailable. Stores the paper locally and supports start/max_chars pagination for very large papers. |
| list_papersA | List all papers that have been downloaded and stored locally via download_paper. Returns arXiv IDs only — use read_paper to access content. Returns an empty list if no papers have been downloaded yet. Workflow: search_papers -> download_paper -> list_papers -> read_paper. |
| read_paperA | Read the text content of a paper that was previously downloaded via download_paper. Returns the paper in markdown format and supports start/max_chars pagination for large papers. Will fail with a clear error if the paper has not been downloaded yet — call download_paper first. Workflow: search_papers -> download_paper -> read_paper. |
| get_abstractA | Fetch the abstract and metadata of an arXiv paper by ID, WITHOUT downloading the full paper. Use this before download_paper to assess relevance and save tokens. Returns: title, authors, abstract, categories, published date, and PDF URL. Workflow tip: search_papers -> get_abstract (check relevance) -> download_paper (if needed) -> read_paper. |
| semantic_searchA | Semantic similarity search over papers you have already downloaded locally via download_paper. Supports free-text queries (e.g. 'attention mechanisms for long sequences') or finding papers similar to a given paper_id. IMPORTANT: only searches your local downloaded collection — will return empty results if no papers have been downloaded yet. Use search_papers to find papers on arXiv, then download_paper to add them to the local index before using this tool. Requires pro dependencies: uv pip install -e ".[pro]" |
| reindexA | Rebuild the local semantic index for downloaded papers. |
| citation_graphA | Return papers citing an arXiv paper and papers that it references using Semantic Scholar's citation graph. |
| watch_topicA | Save or update a persistent research topic watch. When checked via check_alerts, returns only papers published since the last check — acting as a standing alert for new work on a topic. The topic string uses the same query syntax as search_papers (quoted phrases, field specifiers, boolean operators). Examples: '"diffusion models" AND ti:"video generation"', 'au:"LeCun" AND cs.LG'. Calling watch_topic with the same topic string updates the existing watch rather than creating a duplicate. Pair with check_alerts to poll for new papers. |
| check_alertsA | Check all saved topic watches for newly published papers since the last check. Omitting the topic parameter runs ALL saved watches and returns new papers for each. Passing a topic string checks only that specific watch. Updates each watch's last_checked timestamp after running, so subsequent calls only return newer papers. Use watch_topic to register topics before calling this. Returns a summary with new paper counts and full paper metadata per topic. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| research-discovery | Begin research exploration on a specific topic |
| deep-paper-analysis | Analyze a specific paper in detail |
| summarize_paper | Summarize a paper with key methods, results, and limits |
| compare_papers | Compare two or more papers on methods and results |
| literature_review | Synthesize a literature review for a topic and paper set |
| literature-synthesis | Synthesize findings across multiple papers |
| research-question | Formulate research questions based on literature |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Each tool has a clear, distinct purpose: remote search, local paper management, reading, metadata retrieval, semantic search, index maintenance, citation analysis, and topic alerts. There is no overlap between search_papers (remote) and semantic_search (local), and the download/read/list workflow is unambiguous.
Most tools follow a verb_noun snake_case pattern (search_papers, download_paper, read_paper, get_abstract, watch_topic, check_alerts). However, semantic_search, reindex, and citation_graph deviate (compound noun or bare verb), breaking the otherwise consistent imperative style.
Ten tools is well-scoped for a research assistant server. Each tool addresses a distinct stage of the arXiv workflow (search, evaluate, download, read, manage local collection, analyze citations, monitor new papers), with no redundant or filler tools.
The core workflow is covered: search → get_abstract → download → read → semantic_search, plus citation analysis and topic alerts. Minor gaps include no tool to delete downloaded papers or remove topic watches, but these are not critical for the primary research use case.