# API Keys Most BioMCP workflows run without credentials. Some enrichment and higher-rate access paths improve with API keys. For provider terms, redistribution caveats, and which sources are only indirect provenance, see the [source-licensing reference](../reference/source-licensing.md). ## Required for prediction section ### `ALPHAGENOME_API_KEY` Used by variant prediction lookups: Provider access: ```bash export ALPHAGENOME_API_KEY="..." biomcp get variant "chr7:g.140453136A>T" predict ``` ## Additional API keys ### `ONCOKB_TOKEN` Used for the production `biomcp variant oncokb ...` helper. Without the token, that helper is unavailable and reports the required environment variable. BioMCP keeps `ONCOKB_TOKEN` because OncoKB itself calls the credential a token. Register at: ```bash export ONCOKB_TOKEN="..." biomcp variant oncokb "BRAF V600E" ``` ### `NCI_API_KEY` Used for NCI CTS trial calls. Request access at: ```bash export NCI_API_KEY="..." biomcp search trial -c melanoma --source nci ``` ### `DISGENET_API_KEY` Required for DisGeNET scored association sections on genes and diseases. Without the key, those DisGeNET sections are unavailable and report the required environment variable. Register at: ```bash export DISGENET_API_KEY="..." biomcp get gene TP53 disgenet biomcp get disease "breast cancer" disgenet ``` ### `UMLS_API_KEY` Adds optional clinical crosswalk enrichment to `biomcp discover`. Without the key, `discover` still runs with OLS4-only results and omits UMLS crosswalks. Register at: ```bash export UMLS_API_KEY="..." biomcp discover "cystic fibrosis" biomcp --json discover diabetes ``` ### `NCBI_API_KEY` Improves rate limits for PubTator, PubMed/efetch, PMC OA, and NCBI ID converter (3 → 10 req/sec). Create one in My NCBI: ```bash export NCBI_API_KEY="..." biomcp search article -g BRAF --limit 5 ``` ### `S2_API_KEY` Enables authenticated Semantic Scholar article requests. Use it for a dedicated provider quota at 1 req/sec across the optional article search leg, `get article` enrichment, `get article ... tldr`, `article citations`, `article references`, and `article recommendations`. Without the key, those paths still work through the shared unauthenticated pool at 1 req/2sec. Request a key at: ```bash export S2_API_KEY="..." biomcp get article 22663011 tldr biomcp article citations 22663011 --limit 3 ``` ### `OPENFDA_API_KEY` Improves OpenFDA rate limits for drug safety lookups. Request a key at: ```bash export OPENFDA_API_KEY="..." biomcp search adverse-event --drug pembrolizumab --limit 5 ``` ## Key management guidance - Prefer environment variables over hardcoded values. - Do not commit secrets into source control. - Set keys in the same environment used by your MCP client. - Rotate keys when sharing machines or CI runners. - `S2_API_KEY` is optional. Without it, article search/get/helper paths still work through the shared Semantic Scholar pool at 1 req/2sec. With it, BioMCP sends `x-api-key` and uses the authenticated quota at 1 req/sec for the same article search/get/helper paths. - `UMLS_API_KEY` is optional; when absent, `discover` still works with OLS4-only results. See also: [Source Licensing and Terms](../reference/source-licensing.md)