Skip to main content
Glama
blazickjp

ArXiv MCP Server

by blazickjp

download_paper

Retrieve a paper from arXiv by ID and get its text content. Returns up to 12,000 characters, with options to continue chunks or fetch full text.

Instructions

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. Returned text is bounded to roughly 12,000 characters by default so one call cannot return an unbounded paper body. When is_truncated is true, call again with start=next_start (see next_retrieval) to continue, or pass return_full_text=true for the entire remaining paper. Set force=true to re-fetch and overwrite a cached paper (required to replace a newer stored arXiv version with an older one).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceNoIf true, re-download and overwrite the local markdown and metadata sidecar even if the paper is already cached, including when replacing a newer stored arXiv version with an older one. Default false.
startNoZero-based character offset for returning large papers in chunks; pass next_start from a prior truncated response to continue
paper_idYesThe arXiv ID of the paper to download (e.g. '2103.12345')
max_charsNoMaximum raw paper characters to return from start; omit for the bounded default (12,000 chars)
return_full_textNoSet true to opt out of the bounded default and return the entire remaining paper from start in one call
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations only say readOnlyHint=false and openWorldHint=true, so the description carries the burden for behavior. It discloses meaningful side effects: it stores locally, permits overwriting cached versions, and can return truncated paginated responses. It also explains fallback behavior between HTML and PDF conversion, which annotations cannot capture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loads the core action before diving into edge cases. Every sentence earns its place; the pagination, cache overwrite, and full-text options are all tightly packed without rambling.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description adequately covers what an agent needs for correct invocation: return length cap, truncation behavior, continuation semantics, and cache invalidation. The operational contract is complete enough to use the tool without additional research.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all parameters with 100% coverage, so the baseline is 3. The description adds value beyond schema by explaining the bounded default (~12,000 chars), the interaction between start and next_retrieval, and the real-world use at force=true. This raises it slightly above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('download'), a precise resource ('a paper from arXiv'), and the delivered output ('text content'). It clearly explains retrieval strategy (HTML first, PDF fallback) and local storage, making the tool's purpose distinguishable from simple reading siblings like read_paper.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear operational guidance: how to handle truncated results with start and return_full_text, and when force=true is needed to overwrite a cached paper. It does not explicitly route away from siblings like read_paper or search_paper_text, so it lacks explicit exclusions, but the usage context is otherwise clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/blazickjp/arxiv-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server