BioMCP
BioMCP enables AI systems to access and analyze specialized biomedical data with precision and depth through natural language queries and structured workflows.
Core Capabilities:
Search Across Biomedical Domains: Query literature (PubMed, preprints), clinical trials (ClinicalTrials.gov, NCI), and genetic variants (MyVariant.info) using unified query language or domain-specific filters
Retrieve Detailed Records: Fetch comprehensive information for articles, trials, and variants using identifiers (PMID, DOI, NCT ID, HGVS/dbSNP)
Systematic Research Workflow: Utilize the mandatory
thinktool for structured problem-solving and multi-step research approachesSpecialized Data Access: Direct access to gene information (MyGene.info), diseases (MyDisease.info), drugs/chemicals (MyChem.info), and NCI databases
Advanced Features:
Multiple Data Sources: Integrate with authoritative platforms including PubMed/PubTator3, bioRxiv/medRxiv, TCGA/GDC, 1000 Genomes, cBioPortal, and OpenFDA
Variant Effect Prediction: Optional AlphaGenome predictor for assessing regulatory effects on gene expression and splicing
Flexible Deployment: Run locally (STDIO), via HTTP, Docker, or CLI for various integration scenarios
AI Assistant Integration: Function as a certified MCP server for AI assistants like Claude Desktop
Enterprise Extension: OncoMCP offers HIPAA-compliant deployments with real-time trial matching and healthcare integration
Enables searching and retrieval of biomedical literature from PubMed/PMC including article search and full text access through the PubTator3 API.
Offers a comprehensive CLI for direct interaction with biomedical databases through Python, allowing users to search for articles, clinical trials, and variants via command line.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@BioMCPsearch for clinical trials on BRAF inhibitors in melanoma"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
BioMCP
One binary. One grammar. Evidence from the biomedical sources you already trust.
Description
BioMCP cuts through the usual biomedical data maze: one query reaches the sources that normally live behind different APIs, identifiers, and search habits. Researchers, clinicians, and agents use the same command grammar to search, focus, and pivot without rebuilding the workflow for each source. You get compact, evidence-oriented results across live public data plus local study analytics.
Related MCP server: Healthcare MCP Server
Features
Search the literature:
search articlefans out across PubTator3 and Europe PMC, deduplicates PMID/PMCID/DOI identifiers, and can add a Semantic Scholar leg when your filters support it.Pivot without rework: move from a gene, variant, drug, disease, pathway, protein, or article straight into the next built-in view instead of rebuilding filters by hand.
Choose a playbook:
biomcp suggest "<question>"routes a biomedical question to a shipped worked example and two starter commands.Analyze studies locally:
studycommands cover local query, cohort, survival, compare, and co-occurrence workflows with native terminal, SVG, and PNG charts for downloaded cBioPortal-style datasets.Follow the paper trail:
article citations,article references,article recommendations, andarticle entitiesturn one known paper into a broader evidence map.Enrich and batch: use
biomcp enrichfor top-level g:Profiler enrichment andbiomcp batchfor up to 10 focusedgetcalls in one command.
Installation
Binary install
curl -fsSL https://biomcp.org/install.sh | bashPyPI tool install
uv tool install biomcp-cli
# or: pip install biomcp-cliThis installs the biomcp binary on your PATH.
Claude Desktop extension (.mcpb)
Install BioMCP from the Anthropic Directory in Claude Desktop when that path is available for your environment. For local/manual setups, use the JSON MCP config below.
Install skills
Install guided investigation workflows into your agent directory:
biomcp skill install ~/.claude --forceMCP clients
{
"mcpServers": {
"biomcp": {
"command": "biomcp",
"args": ["serve"]
}
}
}Remote HTTP server
For shared or remote deployments:
biomcp serve-http --host 127.0.0.1 --port 8080Remote clients connect to http://127.0.0.1:8080/mcp. Probe routes are
GET /health, GET /readyz, and GET /.
Runnable demo:
uv run --script examples/streamable-http/streamable_http_client.pySee Remote HTTP Server for the newcomer guide.
From source
make install
"$HOME/.local/bin/biomcp" --versionFor repo-local verification, make check now includes the release-critical
Python/docs contract lane (make test-contracts), and make release-gate is
the full release-readiness command (make check plus make spec-pr).
Quick start
First useful query in under 30 seconds:
uv tool install biomcp-cli
biomcp health --apis-only
biomcp suggest "What drugs treat melanoma?"
biomcp list gene
biomcp search all --gene BRAF --disease melanoma # unified cross-entity discovery
biomcp get gene BRAF pathways hpaCommand grammar
search <entity> [filters] → discovery
suggest <question> → playbook routing for how-to questions
discover <query> → concept resolution before entity selection
get <entity> <id> [sections] → focused detail
<entity> <helper> <id> → cross-entity pivots
enrich <GENE1,GENE2,...> → gene-set enrichment
batch <entity> <id1,id2,...> → parallel gets
search all [slot filters] → counts-first cross-entity orientationEntities and sources
The 13-row table below is the public entity surface; individual rows may use live APIs, local runtime data, or hybrid source overlays.
Entity | Upstream providers used by BioMCP | Example |
gene | MyGene.info, UniProt, Reactome, QuickGO, STRING, GTEx, Human Protein Atlas, DGIdb, ClinGen, NIH Reporter, DisGeNET, GTR-backed diagnostics pivot |
|
variant | MyVariant.info, ClinVar, gnomAD fields via MyVariant, CIViC, Cancer Genome Interpreter, OncoKB, cBioPortal, GWAS Catalog, AlphaGenome |
|
article | PubMed, PubTator3, Europe PMC, PMC OA, NCBI ID Converter, Semantic Scholar (optional auth; |
|
trial | ClinicalTrials.gov API v2, NCI CTS API |
|
diagnostic | NCBI Genetic Testing Registry local bulk bundle + WHO IVD local CSV + optional OpenFDA device overlay |
|
drug | MyChem.info, DDInter local bundle, EMA local batch, WHO Prequalification local exports, ChEMBL, OpenTargets, Drugs@FDA, OpenFDA labels/shortages/approvals/FAERS/MAUDE/recalls, CIViC |
|
disease | MyDisease.info, Monarch Initiative, MONDO, OpenTargets, Reactome, CIViC, SEER Explorer, NIH Reporter, DisGeNET, MedlinePlus |
|
pathway | Reactome, KEGG, WikiPathways, g:Profiler, Enrichr-backed enrichment sections |
|
protein | UniProt, InterPro, STRING, ComplexPortal, PDB, AlphaFold |
|
adverse-event | OpenFDA FAERS/MAUDE/recalls plus CDC WONDER VAERS aggregate vaccine search |
|
pgx | CPIC, PharmGKB |
|
gwas | GWAS Catalog |
|
phenotype | Monarch Initiative (HPO semantic similarity) |
|
Cross-entity helpers
Pivot between related entities without rebuilding filters.
See the cross-entity pivot guide for when to use a helper versus a fresh search.
biomcp variant trials "BRAF V600E" --limit 5
biomcp variant articles "BRAF V600E"
biomcp drug adverse-events pembrolizumab
biomcp drug trials pembrolizumab
biomcp disease trials melanoma
biomcp disease drugs melanoma
biomcp disease articles "Lynch syndrome"
biomcp gene trials BRAF
biomcp gene drugs BRAF
biomcp gene articles BRCA1
biomcp gene pathways BRAF
biomcp pathway drugs R-HSA-5673001
biomcp pathway drugs hsa05200
biomcp pathway articles R-HSA-5673001
biomcp pathway trials R-HSA-5673001
biomcp protein structures P15056
biomcp article entities 22663011
biomcp article citations 22663011 --limit 3
biomcp article references 22663011 --limit 3
biomcp article recommendations 22663011 --limit 3Gene-set enrichment
biomcp enrich BRAF,KRAS,NRAS --limit 10Top-level biomcp enrich uses g:Profiler. Gene enrichment sections inside
other entity views still reference Enrichr where that is the backing
source.
Sections and progressive disclosure
Every get command supports selectable sections for focused output:
biomcp get gene BRAF # summary card
biomcp get gene BRAF pathways # add pathway section
biomcp get gene BRCA1 diagnostics # diagnostic-test pivot from GTR
biomcp get gene BRAF hpa # protein tissue expression + localization
biomcp get gene BRAF civic interactions # multiple sections
biomcp get gene BRAF all # standard sections; diagnostics/funding stay opt-in
biomcp get variant "BRAF V600E" clinvar population conservation
biomcp get article 22663011 tldr
biomcp get drug pembrolizumab label targets civic approvals
biomcp get drug trastuzumab regulatory --region who
biomcp get disease "Lynch syndrome" genes phenotypes variants
biomcp get disease tuberculosis diagnostics
biomcp get diagnostic GTR000006692.3 regulatory
biomcp get trial NCT02576665 eligibility locations outcomesIn JSON mode, get responses expose _meta.next_commands for the next likely
follow-ups and _meta.section_sources for section-level provenance. batch ...
--json returns per-entity objects with the same metadata shape.
API keys
Most commands work without credentials. Optional keys improve rate limits or unlock optional enrichments:
export NCBI_API_KEY="..." # PubTator, PubMed/efetch, PMC OA, NCBI ID converter
export S2_API_KEY="..." # Optional Semantic Scholar auth; dedicated quota at 1 req/sec
export OPENFDA_API_KEY="..." # OpenFDA rate limits
export NCI_API_KEY="..." # NCI CTS trial search (--source nci)
export ONCOKB_TOKEN="..." # OncoKB variant helper
export ALPHAGENOME_API_KEY="..." # AlphaGenome variant effect predictionsearch article, get article, article batch, get article ... tldr, and
the explicit Semantic Scholar helpers all work without S2_API_KEY. With the
key, BioMCP sends authenticated requests and uses a dedicated rate limit at
1 req/sec. Without it, BioMCP uses the shared unauthenticated pool at 1 req/2sec.
search article --source supports all, pubtator, europepmc, and
pubmed. The
default compatible article federation uses PubTator3, Europe PMC, and PubMed,
while the S2 leg remains automatic rather than directly selectable. References
and recommendations can be empty for paywalled papers because of publisher
elision in Semantic Scholar upstream coverage.
Configuration
Claude Desktop extension settings
The directory bundle exposes only the optional settings needed for the first reviewer-facing build:
Claude Desktop field | Runtime env var | Purpose |
OncoKB Token |
| Enables |
DisGeNET API Key |
| Enables scored DisGeNET sections on gene and disease lookups |
Semantic Scholar API Key |
| Improves reliability for article TLDR, citation, reference, and recommendation helpers |
The first directory build exposes only those three optional settings. Advanced CLI-only env vars remain documented in API Keys for the general BioMCP CLI path.
Usage Examples
Public cross-entity overview
User prompt: Give me a low-noise overview of BRAF in melanoma.
Expected tool call: biomcp search all --gene BRAF --disease melanoma --counts-only
Expected behavior: Returns a cross-entity counts summary that orients the next command instead of dumping long detail tables.
Expected output: Counts-first summary with suggested next commands for the highest-yield entity follow-ups.
Public variant evidence
User prompt: Summarize ClinVar significance and population frequency for BRAF V600E.
Expected tool call: biomcp get variant "BRAF V600E" clinvar population
Expected behavior: Retrieves the focused variant card, ClinVar section, and population-frequency data in one read-only call.
Expected output: Variant summary, ClinVar significance details, and gnomAD population frequencies.
Credentialed OncoKB example
User prompt: Show OncoKB therapy evidence for BRAF V600E.
Expected tool call: biomcp variant oncokb "BRAF V600E"
Expected behavior: Uses ONCOKB_TOKEN when configured and otherwise
returns helpful guidance about the missing credential.
Expected output: Therapy and level evidence when ONCOKB_TOKEN is set, or
a clear setup hint when it is not.
Credentialed DisGeNET example
User prompt: Show scored DisGeNET associations for TP53.
Expected tool call: biomcp get gene TP53 disgenet
Expected behavior: Uses DISGENET_API_KEY to retrieve the scored
gene-disease association section.
Expected output: Ranked disease-association table with evidence counts and
scores when DISGENET_API_KEY is configured.
Privacy Policy
BioMCP does not add telemetry, analytics, or remote log upload. Review the full privacy statement at https://biomcp.org/policies/.
Multi-worker deployment
BioMCP rate limiting is process-local. For many concurrent workers, run one shared
Streamable HTTP biomcp serve-http endpoint so all workers share a single
limiter budget:
biomcp serve-http --host 0.0.0.0 --port 8080Remote clients should connect to http://<host>:8080/mcp. Lightweight process
probes are available at GET /health, GET /readyz, and GET /.
Skills
BioMCP ships an embedded agent guide instead of a browsable in-binary catalog.
Use biomcp suggest "<question>" when you need the right worked example,
then use biomcp skill to read the embedded BioMCP guide or install it into
your agent directory when you want local copies of the workflow references:
biomcp suggest "Is variant rs113488022 pathogenic in melanoma?"
biomcp skill
biomcp skill install ~/.claude --forceSee Skills for supported install targets, installed files, and legacy compatibility notes.
Local study analytics
study is BioMCP's local analysis family for downloaded cBioPortal-style datasets.
The public entity surface handles API-backed, local-runtime, and hybrid
discovery/detail; study commands work on local datasets when you need
per-study query, cohort, survival, comparison, or co-occurrence workflows.
Use study download to fetch a dataset into your local study root. Set
BIOMCP_STUDY_DIR when you want an explicit dataset location for reproducible
scripts and demos; if it is unset, BioMCP falls back to its default study root.
export BIOMCP_STUDY_DIR="$HOME/.local/share/biomcp/studies"
biomcp study download msk_impact_2017
biomcp study query --study msk_impact_2017 --gene TP53 --type mutations --chart bar --theme dark --palette wong -o docs/blog/images/tp53-mutation-bar.svgSee the CLI reference
for the full study command family and dataset prerequisites.
Ops
biomcp version # show version and build info
biomcp health # inspect API connectivity plus local DDInter/EMA/cache readiness
biomcp update # self-update with release SHA256 checksum verification
biomcp update --check # check for updates without installing
biomcp update --allow-missing-checksum # UNSAFE: install when a release checksum sidecar is missing
biomcp uninstall # remove biomcp from ~/.local/binSupport
GitHub issues: https://github.com/genomoncology/biomcp/issues
Troubleshooting: docs/troubleshooting.md
Full documentation: https://biomcp.org/
Documentation
Citation
If you use BioMCP in research, cite it via CITATION.cff.
GitHub also exposes Cite this repository in the repository sidebar when that file is present.
Data Sources and Licensing
BioMCP is MIT-licensed. It performs on-demand queries against upstream providers instead of vendoring or mirroring their datasets, but upstream terms govern reuse of retrieved results.
Some providers are fully open, some BioMCP features require registration or API keys, and some queryable sources still impose notable reuse limits. The two biggest cautions are KEGG, which distinguishes academic and non-academic use, and COSMIC, which BioMCP keeps indirect-only because its licensing model is incompatible with a direct open integration.
Use Source Licensing and Terms for the per-source breakdown and API Keys for setup steps and registration links.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/genomoncology/biomcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server