MCP Directory

How to add BioMCP to Windsurf

One command grammar to search and pivot across PubMed, ClinVar, ClinicalTrials.gov, and dozens of biomedical sources. Paste the config into ~/.codeium/windsurf/mcp_config.json and restart Windsurf.

Last updated June 14, 2026 · 527 · stdio · no auth · official

Windsurf config for BioMCP

uv tool install biomcp-cli
{
  "mcpServers": {
    "biomcp": {
      "command": "biomcp",
      "args": [
        "serve"
      ]
    }
  }
}

Setup steps

  1. 1Open Windsurf → Cascade → the hammer/MCP icon → Configure (or edit ~/.codeium/windsurf/mcp_config.json).
  2. 2Paste the BioMCP config below.
  3. 3Fill in placeholder secrets, then save.
  4. 4Click Refresh in the MCP panel.
  5. 5BioMCP's tools become available to Cascade.

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)

What BioMCP can do in Windsurf

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.

Security

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 + Windsurf FAQ

Where is the Windsurf config file?

Windsurf reads MCP servers from ~/.codeium/windsurf/mcp_config.json. Paste the BioMCP config there under the "mcpServers" key and restart the client.

Is BioMCP safe to use with Windsurf?

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.

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.

View repo Full BioMCP page