Disease¶
Use disease commands for normalization and disease-centric cross-entity pivots.
For cancer-outcome questions, the disease survival section adds SEER Explorer
survival context without creating a separate survival entity.
Search diseases¶
biomcp search disease -q melanoma --limit 5
biomcp search disease -q glioblastoma --source mondo --limit 5
Search resolves common labels toward canonical ontology-backed identifiers.
--inheritance accepts autosomal dominant/recessive, x-linked variants, y-linked,
mitochondrial, multifactorial, oligogenic, polygenic, sporadic, somatic mosaicism,
broad dominant/recessive, and HPO inheritance IDs HP:0000006, HP:0000007,
HP:0001417, HP:0001423, HP:0001419, HP:0001450, HP:0001427, HP:0001426,
HP:0010983, HP:0010982, HP:0003745, and HP:0001442. --onset accepts antenatal,
embryonal, fetal, congenital, neonatal, infantile (infancy is an alias), childhood,
juvenile, adolescent, young adult, adult, middle age, and late onset.
Get disease records¶
By label:
By MONDO identifier:
The base disease card includes concise OpenTargets gene-score summaries when OpenTargets
returns ranked associated targets. Prefer canonical MONDO:<id> values in automation:
they are the stable form BioMCP uses for normalization and fallback repair.
When ranked disease-gene context is present, the See also: block also promotes
the strongest follow-up gene pivot before the generic disease-level searches,
for example biomcp get gene SCN1A clingen constraint on a Dravet syndrome
gene card.
The default disease card's More: block keeps genes, pathways, and
phenotypes visible while also surfacing survival and funding so those
opt-in sections stay discoverable from the base card.
Treatment suggestions and recruiting-trial counts are automatic base-card
enrichments. JSON records their status as section_outcomes.treatments and
section_outcomes.recruiting_trials. A missing usable disease name is
inapplicable; a healthy treatment miss is empty; returned treatments or any
returned trial count (including zero) are data; and provider failure is
unavailable with no source credit. These optional failures remain visible in
JSON provenance and Markdown but do not make the base disease command fail.
Disease sections¶
Genes (Monarch-backed rows plus additive CIViC and OpenTargets disease-gene associations; OpenTargets scores attach to any rendered row with a matching target score):
Phenotypes (compact Key Features summary plus the comprehensive HPO annotation list):
When BioMCP can extract a reliable disease summary, the phenotype section renders
### Key Features above the HPO table. That summary is also exposed as
key_features[] in --json output. The table remains the comprehensive phenotype
annotation list, and the existing completeness note still applies.
Clinical features (Monarch/HPO phenotype rows):
This opt-in section reuses the Monarch/HPO phenotype backend and exposes those
backend rows directly as clinical features. Unsupported diseases return a
truthful Monarch/HPO empty state rather than fabricated rows, and the section is
not included in biomcp get disease <name_or_id> all.
Variants (CIViC disease-associated variants):
When the variants section is loaded, JSON also exposes top_variant as the
highest-ranked CIViC-backed association, and markdown shows the same compact
anchor above the full variants table.
Models (Monarch model-organism evidence):
Pathways (associated pathways):
Prevalence (prevalence data):
Survival (SEER Explorer 5-year relative survival by sex for mapped cancers):
The survival section is filtered to all ages and all races / ethnicities. JSON
records the request in section_outcomes.survival: data credits SEER Explorer,
empty means the disease did not map to usable SEER evidence, and unavailable
reports a source failure without crediting the failed provider. Markdown reports
unavailability in-band; the existing survival_note remains for compatibility.
Diagnostic-test pivot (GTR and WHO IVD tests for the condition):
The disease diagnostic card is capped at 10 rows so it stays terminal-sized.
When rows exist, BioMCP prints a See also: command such as
biomcp search diagnostic --disease tuberculosis --source all --limit 50 for
the broader paged diagnostic search; use --offset on search diagnostic to
continue paging.
Funding (NIH Reporter grants for the requested disease phrase, with canonical-name fallback for identifier lookups, over the most recent 5 NIH fiscal years):
The diagnostics, DisGeNET, funding, and clinical features sections stay opt-in
and are not included in biomcp get disease <name_or_id> all.
CIViC (clinical evidence):
Combined sections:
biomcp get disease MONDO:0005105 genes phenotypes variants models
biomcp get disease "Marfan syndrome" funding
biomcp get disease "chronic myeloid leukemia" survival
biomcp get disease MONDO:0005105 all
Helper commands¶
biomcp disease trials melanoma --limit 5
biomcp disease trials "Rett Syndrome" --limit 5
biomcp disease drugs melanoma --limit 5
biomcp disease articles "Lynch syndrome" --limit 5
Disease trial pivots send the supplied disease label literally.
Phenotype-to-disease search¶
Use HPO term sets for ranked disease candidates:
You can pass terms space-separated or comma-separated.
Typical disease-centric workflow¶
- Normalize disease label.
- Pull disease sections (
genes,phenotypes,variants,models, andsurvivalfor cancers) for context. - Use normalized concept for trial or article searches.
Example:
biomcp get disease MONDO:0005105 genes phenotypes
biomcp get disease "chronic myeloid leukemia" survival
biomcp search trial -c melanoma --status recruiting --limit 5
biomcp search article -d melanoma --limit 5
JSON mode¶
biomcp --json get disease MONDO:0005105 includes top_gene_scores[] with
overall OpenTargets scores and any available GWAS, rare-variant, or somatic subtype scores.
Practical tips¶
- Prefer MONDO IDs in automation workflows.
- Keep raw labels in user-facing notes for readability.
- Pair disease normalization with biomarker filters for trial matching.