# BioMCP-TS

Gives an agent tools for genes, variants, clinical trials, literature and patents. Useful when a medical lookup has to happen inside the editor.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 12
- Author: yeyuan98
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/yeyuan98/biomcp-ts
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/biomcp-ts

## What it does

BioMCP-TS is a single stdio MCP server that queries many bioinformatics and pharmaceutical sources in a federated way. The toolset splits into genes, variants, drugs and diseases. Genes get search, a detail card with optional sections, linked diseases and compounds, trials, articles and Reactome enrichment. Variants cover rsid or HGVS lookup, frequencies, predictions and OncoKB annotations. Each drug and disease tool connects to its own trial search. Literature runs across several backends at once, and a preprint-only mode narrows results to bioRxiv and medRxiv. Replies arrive as a `results` / `warnings` / `errors` envelope, so a failing source shows up instead of an empty list.

The server starts with `npx -y biomcp` and needs Node 22.13 or newer. Some tools stay dark until you supply credentials: variant annotations want `ONCOKB_TOKEN`, while keys such as `NCBI_API_KEY` or `S2_API_KEY` go in as environment variables when the server is registered. `npx -y biomcp doctor` checks the Node version, config health and optional features. Toolboxes for local database curation, R analysis and biowasm analysis are switched on through the `ANALYSIS_R`, `ANALYSIS_BIOWASM` and `DB_TYPE` variables.

Run several agents on one machine and each process enforces the arXiv limit of 1 request / 3 s on its own, so the limit is not shared. The README suggests a single `biomcp serve` daemon for that setup. Apache-2.0.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `ANALYSIS_BIOWASM`, `ANALYSIS_R`, `DB_TYPE`, `NCBI_API_KEY`, `S2_API_KEY`, `OPENFDA_API_KEY`, `ONCOKB_TOKEN`, `DISGENET_API_KEY` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add biomcp-ts -e NCBI_API_KEY=<NCBI_API_KEY> -e S2_API_KEY=<S2_API_KEY> -e OPENFDA_API_KEY=<OPENFDA_API_KEY> -e ONCOKB_TOKEN=<ONCOKB_TOKEN> -e DISGENET_API_KEY=<DISGENET_API_KEY> -- npx -y biomcp
```
Replace <…> with your own values. 3 more environment variables are in the server README

### Codex

**Platform CLI**
```bash
codex mcp add biomcp-ts --env ANALYSIS_BIOWASM=<ANALYSIS_BIOWASM> --env ANALYSIS_R=<ANALYSIS_R> --env DB_TYPE=<DB_TYPE> --env NCBI_API_KEY=<NCBI_API_KEY> --env S2_API_KEY=<S2_API_KEY> -- npx -y biomcp
```
Replace <…> with your own values. 3 more environment variables are in the server README

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "biomcp-ts": {
            "command": "npx",
            "args": [
                "-y",
                "biomcp"
            ],
            "env": {
                "ANALYSIS_BIOWASM": "<ANALYSIS_BIOWASM>",
                "ANALYSIS_R": "<ANALYSIS_R>",
                "DB_TYPE": "<DB_TYPE>",
                "NCBI_API_KEY": "<NCBI_API_KEY>",
                "S2_API_KEY": "<S2_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values. 3 more environment variables are in the server README

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "biomcp-ts": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "biomcp"
            ],
            "env": {
                "ANALYSIS_BIOWASM": "<ANALYSIS_BIOWASM>",
                "ANALYSIS_R": "<ANALYSIS_R>",
                "DB_TYPE": "<DB_TYPE>",
                "NCBI_API_KEY": "<NCBI_API_KEY>",
                "S2_API_KEY": "<S2_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values. 3 more environment variables are in the server README

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e ANALYSIS_BIOWASM=<ANALYSIS_BIOWASM> -e ANALYSIS_R=<ANALYSIS_R> -e DB_TYPE=<DB_TYPE> -e NCBI_API_KEY=<NCBI_API_KEY> -e S2_API_KEY=<S2_API_KEY> biomcp-ts npx -y biomcp
```
Replace <…> with your own values. 3 more environment variables are in the server README

## When to use it
- find clinical trials for a given gene
- pull OncoKB annotations for a variant
- collect recent preprints on a topic
- check which drugs target a gene
- see disease links to genes and pathways

## Example prompts
- Find clinical trials for ERBB2 and summarise the phases.
- Look up variant rs113488022: frequencies and clinical significance.
- Search CRISPR papers from the last year, preprints only.

## Similar
- [Zotero MCP](https://affpapa.org/en/nevibecode/mcp/zotero-mcp.md) — MCP server · ★ 5548
- [arxiv-mcp-server](https://affpapa.org/en/nevibecode/mcp/arxiv-mcp-server.md) — MCP server · ★ 3231
- [PaperBanana](https://affpapa.org/en/nevibecode/mcp/paperbanana.md) — MCP server · ★ 2417
- [MATLAB MCP Server](https://affpapa.org/en/nevibecode/mcp/matlab-mcp-server.md) — MCP server · ★ 1716
- [Hex Research](https://affpapa.org/en/nevibecode/mcp/hex-research.md) — MCP server · ★ 583
- [DocsAgent — Zotero, Obsidian & Apple Notes MCP Server](https://affpapa.org/en/nevibecode/mcp/docsagent-zotero-obsidian-apple-notes-mcp-server.md) — MCP server · ★ 578

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
