Comprehensive PubMed MCP Server to search, retrieve, and analyze biomedical literature from NCBI.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Search PubMed/Europe PMC, fetch articles and full text (PMC/EPMC/Unpaywall), citations, MeSH terms via MCP. STDIO or Streamable HTTP.
Public Hosted Server: https://pubmed.caseyjhand.com/mcp
11 tools for working with PubMed, PubMed Central, and Europe PMC data:
| Tool | Description |
|---|---|
pubmed_search_articles | Search PubMed with full query syntax, field-specific filters, date ranges, pagination, and optional brief summaries |
pubmed_europepmc_search | Search Europe PMC for preprints, patents, Agricola, and EPMC-only OA records that don't surface in PubMed. Cursor-based pagination. |
pubmed_europepmc_fetch | Fetch complete Europe PMC records β including the untruncated abstract β by source + epmcId, the only identifier many preprint, patent, and Agricola records carry |
pubmed_fetch_articles | Fetch full article metadata by PMIDs β abstract, authors, journal, MeSH terms, grants |
pubmed_fetch_fulltext | Fetch full-text articles via a chain: NCBI PMC EFetch β Europe PMC fullTextXML β Unpaywall. Accepts PMIDs, PMCIDs, or DOIs. |
pubmed_format_citations | Generate formatted citations in APA 7th, MLA 9th, BibTeX, RIS, or Vancouver (ICMJE/NLM) |
pubmed_find_related | Find similar articles, citing articles, or references for a given PMID |
pubmed_spell_check | Spell-check biomedical queries using NCBI's ESpell service |
pubmed_lookup_mesh | Search and explore MeSH vocabulary β tree numbers, scope notes, entry terms |
pubmed_lookup_citation | Resolve partial bibliographic references to PubMed IDs via ECitMatch |
pubmed_convert_ids | Convert between DOI, PMID, and PMCID using the PMC ID Converter API |
pubmed_search_articlesSearch PubMed with full NCBI query syntax and filters.
pubmed_fetch_articlesFetch full article metadata by PubMed IDs.
pubmed_fetch_fulltextFetch full-text articles via a three-stage chain: NCBI PMC EFetch β Europe PMC fullTextXML β Unpaywall.
pmcids (direct PMC IDs), pmids (PubMed IDs, auto-resolved), or dois (auto-resolved to PMC via the ID Converter; preprints and EPMC-only OA fall through to Europe PMC / Unpaywall)viaSource: "pmc" | "europepmc" | "unpaywall"EUROPEPMC_ENABLED=false) recovers PMC-counterpart records that NCBI PMC EFetch missed, and resolves DOI input to PMC counterparts when one exists. EPMC's fullTextXML is PMC-keyed, so preprints (PPR), patents (PAT), and Agricola (AGR) are reachable via pubmed_europepmc_search for metadata but have no full text via this chain.UNPAYWALL_EMAIL) resolves DOIs to legal OA copies; extracts HTML landing pages to Markdown via Defuddle or PDFs to text via unpdfsource: "pmc" (structured sections, regardless of whether it came from PMC or EPMC) or source: "unpaywall" (best-effort body + contentFormat: html-markdown or pdf-text)not-found, no-pmc-fallback-disabled, no-epmc-fulltext, no-doi, no-oa, fetch-failed, parse-failed, service-error) so callers can retry or explain to users without parsing textunavailable entry carries idType (pmid / pmcid / doi) and triedTiers β per-tier outcomes (not-attempted, miss, no-fulltext, service-error, β¦) in execution order, so callers can see which stage failed and why["methods", "results"]) and configurable max sections apply to PMC outputmaxCharacters caps body text per article (PMC sections and subsections, or the Unpaywall body), maxCharactersPerSection caps a single PMC section, and overflowMode picks between truncate (fill sections in document order) and outline (split the budget evenly so every heading survives with an excerpt). Budgets run after the semantic filters, and a truncation object reports per-article and per-section character counts whenever anything was shortenedpubmed_europepmc_searchSearch Europe PMC (EBI/EMBL-EBI), a broader open-access biomedical corpus than PubMed alone.
source: PPR), patents (source: PAT), Agricola (source: AGR), plus everything in PubMed (MED) and PMC (PMC). On recent queries this can mean dozens of relevant hits with zero PubMed overlap.["MED", "PMC", "PPR"]; pass sources to include PAT / AGRcursorMark (unlike pubmed_search_articles, which uses offset) β * for the first page, return nextCursorMark for the nextsource plus optional pmid / pmcId / doi cross-walkingabstractSnippet is capped at 400 characters to keep a page bounded; abstractTruncated says whether it was cut, and pubmed_europepmc_fetch returns the whole abstract for the records worth reading in fullEUROPEPMC_ENABLED=false; tool is not registered in that casepubmed_europepmc_fetchFetch complete Europe PMC records by source + epmcId, the detail counterpart to pubmed_europepmc_search.
source and epmcId of a search hit, the only identifier preprint (PPR), patent (PAT), and Agricola (AGR) records reliably carry β pubmed_fetch_articles needs a PMID and pubmed_fetch_fulltext needs a PMCID, PMID, or DOInotFound instead of failing the batchEUROPEPMC_ENABLED=false; tool is not registered in that casepubmed_format_citationsGenerate formatted citations for articles.
pubmed_find_relatedFind articles related to a source article via ELink.
similar (content similarity), cited_by, referencespubmed_spell_checkSpell-check a biomedical query using NCBI's ESpell.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/pubmed-mcp-server-2)<a href="https://allmcps.com/mcp/pubmed-mcp-server-2"><img src="https://allmcps.com/api/badge/pubmed-mcp-server-2?style=directory" alt="Pubmed MCP Server on AllMCPs" /></a>