The MCP server: biomcp-ts
biomcp-ts (npm package biomcp, pinned 1.1.1) is an MCP server for biomedical data: 41 core + 15 optional tools over stdio JSON-RPC, spanning articles, trials, genes, variants, drugs, diseases, patents, omics databases, GTEx and Ensembl/PDB — keyless by default, rate-limited in-process.
Tool catalog (41 + 15)
| Core tools · 41 | |
|---|---|
| articles | article_search article_get |
| genes | gene_search gene_get gene_diseases gene_drugs gene_trials gene_articles gene_enrich |
| variants | variant_search variant_get variant_oncokb variant_trials |
| drugs | drug_search drug_get drug_trials |
| diseases | disease_search disease_get disease_drugs disease_trials |
| clinical trials | trial_search trial_get |
| patents | patent_search patent_get |
| omics databases | geo_search geo_get sra_search sra_get genbank_search genbank_get genbank_genes |
| GTEx | gtex_expression gtex_eqtl |
| Ensembl/PDB | ensembl_lookup ensembl_homology ensembl_consequence ensembl_region pdb |
| utility | discover batch_get biomcp_configure |
| Optional tools · 15 (env-gated, register at server start) | |
| SQL database (mysql2) | db_query db_list_tables db_describe_table |
| R analysis (webR) | analysis_r_deseq2 analysis_r_edger analysis_r_limma analysis_r_session_info |
| Biowasm (SAM/BCF/BED) | analysis_bam_summary analysis_bam_view_region analysis_bcf_summary analysis_bcf_view_region analysis_bed_op analysis_biowasm_convert analysis_biowasm_session_info analysis_biowasm_cli |
Wiring (opencode)
With the server named biomcp, tools surface as biomcp_article_search, biomcp_gene_get, … Exact version pinning via -p is mandatory (bare npx biomcp cannot resolve peer deps).
{
"$schema": "https://opencode.ai/config.json",
"mcp": { "biomcp": { "type": "local",
"command": ["npx", "-y", "-p", "biomcp@1.1.1", "biomcp"] } }
}True captures
Real request/response pairs captured by a deterministic stdio probe — not hand-written examples.
variant_search
Structured variant query: gene + protein change (never compound free text like "BRAF V600E").
Request
{
"gene": "BRAF",
"hgvsp": "V600E",
"limit": 3
}
Response (excerpt, as captured)
[{"id":"rs113488022","gene":"BRAF","hgvs_p":"V600E","hgvs_c":"c.1799T>A","significance":"Pathogenic","gnomad_af":0.00000397994}]article_search
Federated PubMed search (Europe PMC / Semantic Scholar / PubTator / LitSense); returns PMIDs + titles.
Request
{
"query": "BRCA1 DNA repair",
"limit": 3
}
Response (excerpt, as captured)
[{"doi": "10.1042/BJ20141077", "title": "Protein stability versus function: effects of destabilizing missense mutations on BRCA1 DNA repair activity.", "authors": ["David C. A. Gaboriau", "P. Rowling", "C. Morrison", "L. Itzhaki"], "journal": "Biochemical Journa…gene_get
Gene detail by HGNC symbol with section filtering (16 section values incl. all).
Request
{
"symbol": "BRCA1",
"sections": [
"core"
]
}
Response (excerpt, as captured)
{"symbol": "BRCA1", "name": "BRCA1 DNA repair associated", "summary": "This gene encodes a 190 kD nuclear phosphoprotein that plays a role in maintaining genomic stability…Full tours: MCP tool tour — true request/response pairs from 8 core tools · MCP tool tour — the BRAF V600E variant-to-trials chain (zh notes) — complete server documentation: MCP doc