ArXiv Paper Search MCP
Pricing
from $0.01 / 1,000 results
ArXiv Paper Search MCP
Search ArXiv papers and retrieve paper details. AI agents can discover academic research, abstracts, authors, categories, and PDF links.
ArXiv Paper Search MCP: find research and retrieve paper metadata
ArXiv Paper Search MCP gives AI agents a focused interface to the ArXiv catalog. Search by keyword, collect concise paper summaries, or retrieve the complete metadata exposed by this server for a known ArXiv identifier. It is useful for literature discovery, research assistants, reading-list creation, and citation triage without requiring an ArXiv API key.
Use cases
- Find recent or relevant papers for a technical topic.
- Build a shortlist with titles, authors, dates, categories, links, and abstract previews.
- Resolve an ArXiv ID to its full abstract and available DOI, journal reference, comment, and PDF link.
- Feed structured paper metadata into a research or RAG workflow.
This service searches metadata and abstracts. It does not download PDFs, extract full text, summarize papers with an AI model, verify claims, or generate citations in a particular style.
MCP tools
| Tool | Arguments | Result |
|---|---|---|
search-arxiv | query — required string with at least 2 characters; maxResults — optional number from 1 to 100, default 20; sortBy — optional relevance, lastUpdatedDate, or submittedDate, default relevance | JSON text with total (ArXiv’s total matching count) and papers. Each paper contains id, title, authors, an abstract shortened to at most 500 characters plus an ellipsis when needed, published, updated, link, categories, and comment. |
get-arxiv-paper | paperId — required string, for example 2401.12345 | JSON text for the first matching entry with id, title, authors, full abstract, published, updated, link, categories, comment, journal_ref, doi, and pdf_link. |
String metadata that ArXiv does not provide is returned as an empty string. An unavailable optional link can be omitted from serialized JSON.
Connect from an MCP client
Use the exact Apify Streamable HTTP endpoint:
https://reverberant-equality--mcp-arxiv-search.apify.actor/mcp
Authenticate through Apify and send MCP-compatible headers:
Authorization: Bearer <APIFY_API_TOKEN>Content-Type: application/jsonAccept: application/json, text/event-stream
Use an MCP Streamable HTTP client, complete the normal initialization sequence, and send JSON-RPC requests with POST. The endpoint is not a conventional search REST route. GET /mcp and DELETE /mcp return method-not-allowed responses.
Example search call after initialization:
{"jsonrpc": "2.0","id": 1,"method": "tools/call","params": {"name": "search-arxiv","arguments": {"query": "retrieval augmented generation","maxResults": 10,"sortBy": "submittedDate"}}}
The JSON result is encoded in result.content[0].text; parse that text when you need a native object.
Pricing and upstream data
The live price is $0.005 per tool call. Each research tool emits one tool-call pay-per-event charge before contacting ArXiv. Empty results, unknown IDs, or an upstream failure after that charge can still consume a paid call. Apify platform usage is billed separately under the user’s Apify plan.
Data comes from the public ArXiv Atom API at http://export.arxiv.org/api/query. Searches use search_query=all:{query} and the selected result limit and sort field; detail requests use id_list={paperId}. The server parses the XML response and normalizes whitespace. No upstream API key is required.
Limitations and error behavior
- Search is an ArXiv
all:metadata query; this version does not expose field-specific author, title, category, date-range, pagination, or Boolean query controls. - A search returns at most 100 entries per call and does not fetch subsequent pages.
totalcan therefore be much larger thanpapers.length. - Search abstracts are deliberately shortened. Use
get-arxiv-paperfor the full abstract exposed in the Atom record. - ArXiv metadata may be revised, incomplete, or delayed. DOI, journal reference, comment, and PDF link are not guaranteed.
- ArXiv recommends considerate request pacing. High-frequency use may be throttled or fail, and this server does not cache or retry requests.
- An unknown paper ID returns JSON text containing
errorand sets the MCP result’sisErrorflag totrue. - Network, timeout, XML parsing, and other upstream failures return a readable error message with
isError: true; they do not return fabricated papers.
Privacy
The server does not persist searches or results in an Actor dataset, key-value store, or application database. Query text and paper IDs are processed in memory. The full ArXiv request URL, which can contain the query or ID, is written to operational logs, and ArXiv receives the request plus ordinary network metadata. Do not submit confidential research terms if that exposure is unacceptable. Store the Apify Bearer token securely in the MCP client.
Local development
Node.js 20 or newer is required.
npm installnpm run start:dev # http://localhost:3000/mcpnpm test # run Vitestnpm run build # compile TypeScript to dist/npm run start:prod # run the compiled serverapify validate-schema # validate Actor configuration/schema
Override the default port with APIFY_CONTAINER_PORT. In an ordinary local environment, Apify may report that PPE charging is ignored; production monetization still uses the configured event.