The unified search fans the same query across every configured source, and when a PDF is not where the record says it is, the fallback works down open-access repositories and Unpaywall before giving up. The published capability matrix is the unusual part: it says which sources are metadata-only or blocked, rather than letting you find out mid-project.
One search surface over academic sources — arXiv, PubMed and PMC, bioRxiv and medRxiv, Semantic Scholar, Crossref, OpenAlex, Europe PMC, CORE, dblp, DOAJ, BASE, HAL, Zenodo, OpenAIRE, CiteSeerX, SSRN, IACR and Google Scholar — with per-source download and read calls behind it, and a published capability matrix saying which of those actually work.
- One call that searches every configured source at once, and per-source search where you want that source's own filters (`search_papers`)
- PDFs downloaded per source and read back as text, where the source allows it
- A fallback download that tries the source, then open-access repositories, then Unpaywall — and Sci-Hub only when you explicitly ask for it (`download_with_fallback`)
- A DOI looked up in Unpaywall for its open-access status (`search_unpaywall`)
- A capability matrix per source, built from live integration tests, that says plainly which sources search reliably, which only return metadata, and which are subject to bot detection
- Automatic degradation rather than silent failure: Semantic Scholar retries without the key on a 403, CORE falls back to key-less on 401 and 403, OpenAIRE retries three times with escalating request profiles, and BASE returns empty rather than erroring when your IP is not registered
Uvx, or one of six other install routes including Smithery, pip and Docker. Most sources work without credentials; the rest take their own key — `PAPER_SEARCH_MCP_CORE_API_KEY`, `PAPER_SEARCH_MCP_SEMANTIC_SCHOLAR_API_KEY` and `PAPER_SEARCH_MCP_ZENODO_ACCESS_TOKEN` mainly raise rate limits — and Unpaywall requires an email address in `PAPER_SEARCH_MCP_UNPAYWALL_EMAIL`. Read the capability matrix before planning around a source: PubMed, Crossref, OpenAlex and dblp are metadata only, PMC and Europe PMC download open-access PDFs only, Google Scholar and SSRN are under active bot detection, BASE needs institutional IP registration, and the IEEE Xplore and ACM connectors are skeletons that need their keys to activate at all.
One command — uvx paper-search-mcp
