{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_q9v2sb2jwrr5","handle":"arxiv-mcp-search","url":"https://wellknown.network/agents/arxiv-mcp-search","links":{"self":"https://wellknown.network/agents/arxiv-mcp-search/record.json","html":"https://wellknown.network/agents/arxiv-mcp-search","markdown":"https://wellknown.network/agents/arxiv-mcp-search/record.md","api":"https://wellknown.network/api/v1/agents/arxiv-mcp-search","status":"https://wellknown.network/api/v1/agents/arxiv-mcp-search/status","claim":"https://wellknown.network/agents/arxiv-mcp-search/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/arxiv-mcp-search/claim.json","badge":"https://wellknown.network/agents/arxiv-mcp-search/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/arxiv-mcp-search/history","tools":"https://wellknown.network/api/v1/agents/arxiv-mcp-search/tools"},"ard":{"identifier":"urn:air::server:arxiv-mcp-search","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"arxiv-mcp-search","summary":"MCP server for arXiv paper search with semantic search, citation enrichment, and PDF extraction","description":"# arXiv MCP Server\n\nMCP (Model Context Protocol) server for searching, downloading, and analyzing arXiv papers. Supports keyword search, Semantic Scholar-backed semantic search, PDF text extraction, and SQLite caching.\n\n## Features\n\n- **Keyword Search** — full arXiv API query syntax (`ti:`, `au:`, `cat:`, `all:`)\n- **Semantic Search** — server-side semantic search via the Semantic Scholar API\n- **Hybrid Search** — arXiv keyword results enriched with Semantic Scholar citation counts\n- **PDF Download** — download and extract full text via PyMuPDF\n- **Smart Caching** — SQLite cache with configurable TTL (24h metadata, 30-day PDFs)\n- **Categories** — built-in taxonomy of ~150 arXiv categories\n- **Graceful Degradation** — semantic/hybrid fall back to keyword when Semantic Scholar is unavailable\n- **Lightweight** — no local ML model; depends only on `mcp` and `pymupdf`\n\n## Install\n\n```bash\npip install arxiv-mcp-server\n```\n\nNo model download — the server starts instantly.\n\n## Claude Code Integration\n\nAdd to `~/.claude/settings.json` or `.claude/settings.local.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"arxiv\": {\n      \"command\": \"arxiv-mcp-server\"\n    }\n  }\n}\n```\n\nOr from a virtual environment:\n\n```json\n{\n  \"mcpServers\": {\n    \"arxiv\": {\n      \"command\": \"python\",\n      \"args\": [\"-m\", \"arxiv_mcp_server.server\"]\n    }\n  }\n}\n```\n\n## Configuration\n\nAll via environment variables:\n\n| Variable | Default | Description |\n|---|---|---|\n| `ARXIV_CACHE_DIR` | `~/.arxiv-mcp-server` | Cache root (DB + PDFs) |\n| `ARXIV_CACHE_TTL_HOURS` | `24` | Metadata cache lifetime |\n| `ARXIV_PDF_TTL_DAYS` | `30` | PDF retention period |\n| `ARXIV_RATE_LIMIT_SEC` | `1.0` | Min seconds between API calls |\n| `ARXIV_REQUEST_TIMEOUT` | `30` | API request timeout (seconds) |\n| `ARXIV_MAX_RESULTS` | `50` | Max results per search |\n| `ARXIV_LOG_LEVEL` | `INFO` | Python log level |\n\n## Tools\n\n### `search_papers`\n\nSearch arXiv papers.\n\n```\nquery: string (required) — search query\nmax_results: int (default 10, max…","publisher":{"name":"arxiv-mcp-server contributors","url":null},"homepage":"https://github.com/Hjh-12138/arxiv-mcp-server","repository":"https://github.com/Hjh-12138/arxiv-mcp-server","version":"0.1.0","license":"MIT","protocols":["mcp"],"tags":["arxiv","mcp","model-context-protocol","papers","pdf-extraction","research","semantic-search"],"pricing":null,"endpoints":[{"url":"pypi:arxiv-mcp-search","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"documents.extraction","name":"Data Extraction","confidence":1,"provenance":"derived"},{"slug":"data.vector-search","name":"Vector Search","confidence":1,"provenance":"derived"},{"slug":"research.academic","name":"Academic Research","confidence":1,"provenance":"declared"},{"slug":"data.database","name":"Databases","confidence":0.768,"provenance":"derived"}],"categories":["data","documents","research"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"arxiv-mcp-search","registry":"pypi","observedAt":"2026-10-21T17:28:01.858Z","publishedAt":"2026-07-09T15:04:08.754660Z","latestVersion":"0.1.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"arxiv-mcp-search","url":"https://pypi.org/project/arxiv-mcp-search/","firstSeenAt":"2026-09-09T09:23:48.344Z","fetchedAt":"2026-10-21T17:26:27.055Z","normalizedAt":"2026-10-21T17:26:27.055Z"}]},"firstSeenAt":"2026-09-09T09:23:48.344Z","updatedAt":"2026-10-21T17:28:01.858Z"}