
BioMCP
OfficialOne command grammar to search and pivot across PubMed, ClinVar, ClinicalTrials.gov, and dozens of biomedical sources.
Add to your client
Copy the config for your MCP client and paste it into its config file.
uv tool install biomcp-cliPaste into ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"biomcp": {
"command": "biomcp",
"args": [
"serve"
]
}
}
}Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf
Before you start
- The biomcp binary on PATH (binary installer, `uv tool install biomcp-cli`, `pip install biomcp-cli`, or build from source)
- An MCP-capable client such as Claude Desktop
- Optional API keys for higher rate limits or optional enrichments (NCBI, Semantic Scholar, OpenFDA, NCI, OncoKB, AlphaGenome, DisGeNET)
About BioMCP
BioMCP cuts through the biomedical data maze by exposing one MCP server that reaches sources normally behind different APIs, identifiers, and search habits. A single command grammar (search / suggest / discover / get / cross-entity helpers / enrich / batch / search all) drives discovery, focused detail retrieval, and pivots across genes, variants, articles, trials, drugs, diseases, pathways, proteins, adverse events, pharmacogenomics, GWAS, and phenotypes. Results are compact and evidence-oriented, with JSON responses exposing _meta.next_commands and _meta.section_sources for follow-ups and provenance. It runs over stdio for local MCP clients (e.g. Claude Desktop) and can also serve a remote Streamable HTTP endpoint for shared/multi-worker deployments.
Tools & capabilities (9)
search <entity> [filters]Discovery search across an entity (e.g. article, trial, variant, adverse-event, gwas, phenotype); `search article` fans out across PubTator3, Europe PMC, PubMed, and optional Semantic Scholar with deduplicated identifiers.
search all [slot filters]Counts-first cross-entity orientation that summarizes matches across entities and suggests the highest-yield next commands.
suggest <question>Routes a biomedical how-to question to a shipped worked example and two starter commands (playbook routing).
discover <query>Concept resolution before entity selection.
get <entity> <id> [sections]Focused detail card for a gettable entity (gene, variant, article, trial, diagnostic, drug, disease, pathway, protein, adverse-event, pgx) with selectable sections for progressive disclosure.
<entity> <helper> <id> (cross-entity pivots)Pivot between related entities without rebuilding filters, e.g. `variant trials`, `variant articles`, `drug adverse-events`, `drug trials`, `disease trials`, `disease drugs`, `gene pathways`, `pathway drugs`, `protein structures`, `article citations/references/recommendations/entities`.
enrich <GENE1,GENE2,...>Top-level gene-set enrichment via g:Profiler.
batch <entity> <id1,id2,...>Run up to 10 focused `get` calls in parallel in one command; with `--json` returns per-entity objects with metadata.
study (local analytics)Local analysis family for downloaded cBioPortal-style datasets: download, query, cohort, survival, compare, and co-occurrence workflows with terminal/SVG/PNG charts (per-gene mutations, CNA, expression, structural variants/fusions).
What this server can do
BioMCP provides tools for these capabilities — tap one to see every MCP server that does the same:
When to use it
- Give a low-noise cross-entity overview of a gene in a disease (e.g. `search all --gene BRAF --disease melanoma --counts-only`)
- Summarize ClinVar significance and gnomAD population frequency for a variant in one read-only call
- Find and follow the paper trail for an article via citations, references, recommendations, and entities
- Pivot from a drug to its adverse events or clinical trials, or from a disease to associated drugs and trials
- Run local cohort/survival/co-occurrence analytics over downloaded cBioPortal-style genomic datasets
Security notes
MIT-licensed. No telemetry, analytics, or remote log upload. Performs on-demand queries against upstream providers; upstream terms govern reuse of retrieved results. Most commands work with no credentials; optional API keys (NCBI_API_KEY, S2_API_KEY, OPENFDA_API_KEY, NCI_API_KEY, ONCOKB_TOKEN, ALPHAGENOME_API_KEY, DISGENET_API_KEY) improve rate limits or unlock optional enrichments. KEGG distinguishes academic vs non-academic use, and COSMIC is kept indirect-only due to licensing.
BioMCP FAQ
Do I need API keys to use BioMCP?
No. Most commands work without credentials. Optional keys (NCBI_API_KEY, S2_API_KEY, OPENFDA_API_KEY, NCI_API_KEY, ONCOKB_TOKEN, ALPHAGENOME_API_KEY, DISGENET_API_KEY) improve rate limits or unlock optional enrichments such as OncoKB therapy evidence or scored DisGeNET associations.
How do I run BioMCP as a remote server?
Use `biomcp serve-http --host 127.0.0.1 --port 8080`; clients connect to http://<host>:8080/mcp. Health probes are available at GET /health, /readyz, and /. Running one shared HTTP endpoint lets concurrent workers share a single rate-limiter budget.
Does BioMCP store or mirror the biomedical data?
No. It performs on-demand queries against upstream providers instead of vendoring or mirroring datasets, though upstream terms govern reuse of retrieved results. It adds no telemetry, analytics, or remote log upload.
Alternatives to BioMCP
Compare all alternatives →Official MCP reference server that fetches a URL and returns its content as clean Markdown, with chunking.
Official Firecrawl MCP server — scrape, crawl, map, search, and structured extraction for any LLM client.
Exa's neural web search and crawling MCP server — runs locally via npx or as a hosted remote endpoint.
Compare BioMCP with: