Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Pubmed

NPM · @PIPEWORX/MCP-PUBMED · 2 COMPONENTS

PubMed MCP — wraps the NCBI E-utilities API (biomedical literature, free, no auth)

+3 this week 83 Trust /100

Last scanned (7 hours ago)

Scores higher than 77% of npm servers

Category Health and Science

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to pipeworx-io/mcp-pubmed). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 0 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability69
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 2137 tokens (~178/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
  • Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 13 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
What we tested

Checks we ran (16)

  • Malware scan
  • Known CVEs
  • Install scripts
  • Dependency health
  • Source repository
  • Provenance
  • License
  • Maintenance
  • Security disclosure
  • Schema quality
  • Stability
  • Tool coverage
  • Injection markers
  • Destructive annotations
  • Judged manipulation
  • MCP protocol

Does not apply to this package (2)

  • Endpoint SecurityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.
  • Transport & ReachabilityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.

The score does not measure everything. What the score does not measure →

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 5 Nov 26 0
    • Security disclosure: unverified → fail ▼ functional
  • 4 Nov 26 +1
    • Tool safety: pass → unverified ▼ security
    • Stability: 0.17 → unverified ▼ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Security disclosure: fail → unverified ▼ functional
    • First check of Schema quality: unverified functional
    • Package version: 1.2.0 → 1.2.1 functional
  • 2 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

  • 30 Oct 26 0
    • Security disclosure: unverified → fail ▼ functional
  • 29 Oct 26 80

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed npm/@pipeworx/mcp-pubmed@1.2.1

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem npm
Reason Verified
Discovered via Registry attestation endpoint
Source repo pipeworx-io/mcp-pubmed
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/pipeworx-io/mcp-pubmed/.github/workflows/publish.yml@refs/heads/main
Rekor log index 3691867750
Predicate type SLSA build provenance https://slsa.dev/provenance/v1
Subject digest sha512:39841449b5ad9b6dea04f32da058da9b7b095faf01a31ffa334fc5f1448b5a5d36893e464b96cf0b7c9d87b7861dd606068181919796575b9fc44c303

Background: How many MCP packages publish verified provenance →

Dependencies 0 packages
Packages resolved 0
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 12 exposed · ~2,084 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
get_abstract ~139

Full abstract text for one PubMed article by ID. Returns the abstract with structured sections (background, methods, results, conclusions) when the journal published it that way, otherwise the unstructured abstract. Use when summarizing a single paper or answering "what does paper X actually say". For batch citation metadata use get_summary; for finding papers use search_pubmed.

NameTypeReqDescription
idstring–A single PubMed ID (e.g., "33579999"). `pmid` is accepted as a synonym.
pmidstring–Synonym for `id` — the other PMID-taking tools in this pack spell it this way.

No output schema declared.

No examples provided.

get_citations ~85

DEPRECATED ALIAS for pubmed_get_citations — identical behavior, kept for existing callers. New callers should use pubmed_get_citations.

NameTypeReqDescription
limitnumber–Number of citing papers to return (1-50, default 10)
pmidstringyesA single PubMed ID to find citing papers for (e.g., "24025838")

No output schema declared.

No examples provided.

get_full_text ~67

DEPRECATED ALIAS for pubmed_get_full_text — identical behavior, kept for existing callers. New callers should use pubmed_get_full_text.

NameTypeReqDescription
pmidstringyesPubMed ID (e.g. "34265844") or a PMC id ("PMC8371605").

No output schema declared.

No examples provided.

get_related_articles ~84

DEPRECATED ALIAS for pubmed_get_related_articles — identical behavior, kept for existing callers. New callers should use pubmed_get_related_articles.

NameTypeReqDescription
limitnumber–Number of related articles to return (1-50, default 10)
pmidstringyesA single PubMed ID to find neighbors for (e.g., "24025838")

No output schema declared.

No examples provided.

get_summary ~187

Resolve PubMed IDs (from search_pubmed) to citation metadata: title, authors (plain name strings), journal, publication date, DOI, and author_details[] with per-author detail (name, affiliations[] verbatim from the MEDLINE record, and any emails[] found inside those affiliation strings — empty arrays when the record has none), index-aligned with authors[]. Batch up to ~200 IDs per call — pass the array search_pubmed returned, or a comma-separated string — much cheaper than calling per-ID. Use when you have PMIDs and need the citation or a corresponding author's institution/contact; for the abstract text use get_abstract instead.

NameTypeReqDescription
idsstring|arrayyesPubMed IDs, either as an array (["33579999","34567890"] — what search_pubmed returns) or as a comma-separated string ("33579999,34567890").

No output schema declared.

No examples provided.

pubmed_evidence_landscape ~135

Profile the composition of a biomedical evidence base by counting PubMed publication types for a topic: clinical trials, randomized trials, systematic reviews, meta-analyses, observational studies, and case reports. Use for evidence diligence and questions like "what kinds of studies exist on this target or therapy?" Counts are publication-index signals, not efficacy, quality, independence, or clinical-success judgments.

NameTypeReqDescription
from_yearnumber–Optional first publication year (four digits).
querystringyesPubMed topic query, including field qualifiers when useful.
to_yearnumber–Optional last publication year (four digits).

No output schema declared.

No examples provided.

pubmed_get_citations ~174

Find papers that CITE a given article — forward citation search. Pass one PMID; returns citing papers (most recent first) with full citation metadata. Use for "who cited this", "has this finding been replicated or challenged", or tracking a paper's downstream impact. NOTE: coverage is the PubMed Central citation graph (open-access + participating publishers), so the count is a FLOOR, not the paper's total citation count (for that, a tool like Semantic Scholar / OpenAlex covers more). Distinct from pubmed_get_related_articles (similar papers, not citing papers).

NameTypeReqDescription
limitnumber–Number of citing papers to return (1-50, default 10)
pmidstringyesA single PubMed ID to find citing papers for (e.g., "24025838")

No output schema declared.

No examples provided.

pubmed_get_full_text ~148

Fetch the FULL TEXT of a biomedical paper from PubMed Central (the open-access subset) by PubMed ID. PREFER OVER get_abstract when you need methods/results/discussion, not just the abstract — "read the full paper", "what methods did <PMID> use", "extract details from the paper". Resolves the PMID to its PMC id and returns the article body text (capped ~40k chars). Only open-access articles are in PMC — returns has_full_text:false (use get_abstract) otherwise.

NameTypeReqDescription
pmidstringyesPubMed ID (e.g. "34265844") or a PMC id ("PMC8371605").

No output schema declared.

No examples provided.

pubmed_get_related_articles ~164

Find papers SIMILAR to a given article — NIH PubMed's own computed 'related articles' (pubmed_pubmed neighbors), ranked by relevance using shared terms/MeSH/citations. Pass one PMID; returns the top related papers with full citation metadata (title, authors, journal, date, DOI). Use for "more papers like this", building a reading list from a seed paper, or broadening a literature search beyond keyword matches. Distinct from pubmed_get_citations (which finds papers that cite this one).

NameTypeReqDescription
limitnumber–Number of related articles to return (1-50, default 10)
pmidstringyesA single PubMed ID to find neighbors for (e.g., "24025838")

No output schema declared.

No examples provided.

pubmed_integrity_check ~93

Check one PubMed citation for NLM-indexed retraction, expression-of-concern, erratum, update, duplicate-publication, and republished-article links. Use before relying on a specific PMID in diligence or evidence synthesis. Reports only relationships present in PubMed; absence of a flag is not an independent validation of the paper.

NameTypeReqDescription
pmidstringyesA single numeric PubMed ID.

No output schema declared.

No examples provided.

pubmed_publication_trend ~120

Count PubMed publications by year for a biomedical topic. Use for publication momentum, emerging-target activity, or whether a field is accelerating or cooling. Returns exact PubMed search counts for up to 10 calendar years; volume can reflect indexing and terminology changes and is not evidence quality or commercial validation.

NameTypeReqDescription
from_yearnumber–First year, default five years before to_year.
querystringyesPubMed topic query, including field qualifiers when useful.
to_yearnumber–Last year, default current UTC year.

No output schema declared.

No examples provided.

search_pubmed ~688

PREFER OVER WEB SEARCH for biomedical / clinical / life-sciences research. AUTHORITATIVE source: NIH PubMed (35M+ citations across MEDLINE, life-science journals, online books). Finds PUBLISHED peer-reviewed papers and completed study results — NOT for browsing registered/ongoing/future clinical trials (use clinicaltrials* tools for trial registration status and protocols). Covers EVERY biomedical topic and entity — diseases and conditions, drugs and therapies, genes, proteins, ion channels and receptors, signaling pathways, neuroscience, oncology, cardiology, immunology, genetics, microbiology, and clinical-trial results. Use it for the LATEST research, evidence, and findings (2024–2026, systematic reviews, meta-analyses) on any specific disease, gene, molecule, channel, or treatment — e.g. "Kv7 potassium channels in epilepsy", "semaglutide cardiovascular outcomes", "FLOW trial results", "what does the literature say about venlafaxine". Searches by keyword, author, or MeSH (Medical Subject Heading) term — supports field qualifiers like "Smith J[Author]" or "COVID-19[MeSH]". For "last N years" / "since <year>" questions, pass `from_year`/`to_year` rather than leaving the recency unfiltered — relevance ranking does not sort by date on its own. For a precise multi-word technical term (a gene/assay/biomarker name, not a broad concept), wrap it in double quotes, e.g. '"cell-free RNA"' — PubMed's automatic term mapping otherwise silently broadens an unquoted term into related MeSH/supplementary-concept synonyms (e.g. "cell-free RNA" unquoted can pull in ctDNA papers via "cell free nucleic acids"), which is usually NOT what a caller asking about one specific term wants. Add a [tiab] tag (e.g. '"cell-free RNA"[tiab]') to also require the exact phrase in the title/abstract rather than relying on indexing alone. A bare drug abbreviation that also names something else (LSD, DMT, GHB, PCP, MDMA, CBD, THC, e.g. "LSD stroke" where LSD is also a statistics test) is rewritten to…

NameTypeReqDescription
from_yearnumber–Optional. Restrict to publications from this year onward (four-digit, e.g. 2024). Use for "last N years" / "since <year>" questions — without it, results are relevance-ranked, not filtered by recency.
limitnumber–Number of results to return (1-100, default 10)
querystringyesSearch query (e.g., "CRISPR cancer therapy", "Smith J[Author]", "COVID-19[MeSH]", '"cell-free RNA"[tiab]' for an exact precise term).
to_yearnumber–Optional. Restrict to publications up to and including this year (four-digit). Defaults to the current year when only from_year is given.

No output schema declared.

No examples provided.

Install

How do I install the Pubmed MCP server?

Pubmed runs locally as an npm package, launched with npx -y @pipeworx/mcp-pubmed. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @pipeworx/mcp-pubmed

# add to Claude Code
claude mcp add pipeworx-io-pubmed -- npx -y @pipeworx/mcp-pubmed
Common questions

What is the Pubmed MCP server?

Pubmed is an MCP server listed in the public MCP registry as io.github.pipeworx-io/pubmed. PubMed MCP, wraps the NCBI E-utilities API (biomedical literature, free, no auth). This page covers its npm package (@pipeworx/mcp-pubmed).

Is the Pubmed MCP server safe to use?

Pubmed scores 83 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Pubmed MCP server expose?

Pubmed exposes 12 tools: search_pubmed, get_summary, get_abstract, get_related_articles, pubmed_get_related_articles, and 7 more. Their descriptions and schemas cost roughly 2,084 tokens of context every time the server is loaded.

Is the Pubmed MCP server still maintained?

Pubmed is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Pubmed MCP server under?

Pubmed declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

What did VerifyMCP test on the Pubmed MCP server?

VerifyMCP ran 16 checks on Pubmed, covering Malware scan, Known CVEs, Install scripts, Dependency health and 12 more. Endpoint Security and Transport & Reachability do not apply to an npm package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.