Brapi MCP Server
@cyanheads/brapi-mcp-server A collaborative BrAPI v2.1 workspace for multi-agent research via MCP. Search studies, germplasm, genotypes, & more - across Breedbase, T3, Sweetpotatobase, & any BrAPI v2-compliant server. Its 25 documented tools cover brapi, dataframe, germplasm, observations. It runs locally over stdio via the published package.
People connecting this server to Claude, Cursor, VS Code, or another MCP client. The project is written in TypeScript.
VERIFIED ACTIVE
LAST COMMIT 2026-08-22 · ★ 3 · #187 OF 848 MAINTAINED OTHER · VERIFIED 2026-08-25
Apache-2.0 · TypeScript servers · how we verify → /methodology
01 · Install Brapi MCP Server
before you install - you'll need
Set MCP_LOG_LEVEL, BRAPI_BTI_CASSAVA_USERNAME, BRAPI_BTI_CASSAVA_PASSWORD, BRAPI_PROD_BASE_URL, BRAPI_PROD_API_KEY, BRAPI_PROD_API_KEY_HEADER before connecting. MCP_TRANSPORT_TYPE is optional or environment-specific per the README.
Claude Code
claude mcp add cyanheads-brapi-mcp-server -- npx -y @cyanheads/brapi-mcp-server Claude Desktop / Cursor / VS Code - add to config
{
"mcpServers": {
"cyanheads-brapi-mcp-server": {
"command": "npx",
"args": [
"-y",
"@cyanheads/brapi-mcp-server"
]
}
}
} Same JSON for Cursor. For VS Code, rename the top-level key from `mcpServers` to `servers`.
Using another client? Same JSON, different key
Claude Desktop · mcpServers
Cursor · mcpServers
VS Code · servers
Windsurf · mcpServers
Zed · context_servers
Cline · mcpServers
Roo Code · mcpServers
Continue · mcpServers
LibreChat · mcpServers
Gemini CLI · mcpServers
Codex CLI · mcp_servers
Full setup guides: every client.
02 · Evidence
Security posture
What to check before giving this server access to your agent - from the registry, GitHub, and our own probes. We don't score safety; we show what's verifiable.
runs as local process (stdio) - runs on your machine with your user's permissions
license Apache-2.0 - declared in the repository
npm package @cyanheads/brapi-mcp-server - published under the repo owner's npm scope (@cyanheads)
registry namespace io.github.cyanheads is GitHub-verified and matches the repo owner
03 · What Brapi MCP Server can do
Prose above is summarized from the project's README and registry record - no invented capabilities.
What you can build
With this server connected, an agent can find studies by crop / trial type / season / location / program. Distributions + dataframe spillover, fetch a study with program / trial / location FKs resolved and companion counts (observations, units, variables), find germplasm by name, synonym, accession, PUI, crop, or free-text. Distributions + dataframe spillover, and fetch a germplasm with attributes, direct parents, and companion counts (studies, parents, descendants).
The 25 tools it gives your agent
Extracted from the project's README - what brapi-mcp-server lets an agent do.
- brapi_connect
- - Authenticate, register the connection under an alias, cache the capability profile, and return the orientation envelope inline. One call fully orients the agent
- brapi_server_info
- - Re-fetch the orientation envelope for a registered alias - identity, auth, capabilities, content counts, attribution, notes.
- brapi_describe_filters
- - Static BrAPI v2.1 filter catalog for any endpoint - powers extraFilters discovery on every find_ tool.
- brapi_find_studies
- - Find studies by crop / trial type / season / location / program. Distributions + dataframe spillover.
- brapi_get_study
- - Fetch a study with program / trial / location FKs resolved and companion counts (observations, units, variables).
- brapi_find_germplasm
- - Find germplasm by name, synonym, accession, PUI, crop, or free-text. Distributions + dataframe spillover.
- brapi_get_germplasm
- - Fetch a germplasm with attributes, direct parents, and companion counts (studies, parents, descendants).
- brapi_walk_pedigree
- - BFS-walk ancestry / descendancy as a deduplicated DAG with cycle detection, depth limits, and traversal stats.
- brapi_find_variables
- - Find observation variables by name / class / ontology / free-text; ranked client-side via OntologyResolver when text is supplied.
- brapi_find_observations
- - Pull observation records by study / germplasm / variable / season / unit / timestamp. Dataframe spillover.
- brapi_find_images
- - Filter image metadata by unit / study / ontology / MIME type. Bytes via brapi_get_image.
- brapi_get_image
- - Fetch image bytes for up to 5 imageDbIds inline as type: image blocks. Prefers /imagecontent, falls back to imageURL.
show all 25 tools
- brapi_find_locations
- - Find research stations by country (ISO alpha-3 code, or English country name resolved client-side) / type / abbreviation, with optional client-side bbox filter.
- brapi_find_variants
- - Find variant records by variant set, reference, or genomic region (1-based inclusive / exclusive).
- brapi_find_genotype_calls
- - Pull genotype calls via async-search polling. Upstream pull bounded by BRAPI_GENOTYPE_CALLS_MAX_PULL (default 100k, max 500k).
- brapi_dataframe_describe
- - Start here after a spillover. Lists dataframes (or describes one) with column schema, row counts, and originating-source provenance.
- brapi_dataframe_query
- - SELECT SQL across in-memory dataframes (DuckDB-backed). Spilled find_ rows auto-register as df_. Read-only - multi-statement, non-SELECT, file-reads, and export
- brapi_dataframe_drop
- - _Opt-in via BRAPI_CANVAS_DROP_ENABLED=true._ Drop a dataframe by name. Idempotent. Dataframes also expire via TTL when left unmanaged.
- brapi_dataframe_export
- - _Opt-in via BRAPI_EXPORT_DIR=, stdio-only._ Export a dataframe to disk (CSV / Parquet / JSON) under the configured directory and return the absolute path for th
- brapi_build_phenotype_matrix
- - Build a germplasm × trait matrix from one or more studies and materialize it as a canvas dataframe. Supports wide (pivot) or long shape with configurable per-ce
- brapi_germplasm_performance
- - Per-variable performance aggregates (n, mean, median, sd, min, max, studyCount) for a single germplasm across all studies where it has observations.
- brapi_export_genotype_matrix
- - Export genotype calls for a variant set as a germplasm × variant canvas dataframe; also serializes to VCF-lite or PLINK .ped/.map text. Distinct-variant columns
- brapi_submit_observations
- - Two-phase observation write - mode: preview validates; mode: apply asks the caller to confirm, then fans POST + PUT in parallel. Additive only - no destructive
- brapi_raw_get
- - Passthrough to any BrAPI GET /{path} not covered by curated tools. Emits a routing nudge when one applies.
- brapi_raw_search
- - Passthrough to any POST /search/{noun} with async polling handled transparently. Same nudge pattern.
Latest releases
v0.7.11 · 2026-08-22
mcp-ts-core ^0.12.3 - MCP SDK v2 · Protocol revision 2026-07-28 served on every HTTP endpoint, alongside the 2025 era · Undeclared top-level tool arguments are rejected by name; advertised schemas are JSON Schema…
v0.7.10 · 2026-07-16
concurrent per-study observation pulls · brapi_germplasm_performance and brapi_build_phenotype_matrix now fan their per-study observation pulls out concurrently instead of one study at a time. · Changed…
v0.7.9 · 2026-07-16
genotype-matrix column cap, describe listing budget · Bounds two brapi_export_genotype_matrix response paths that scale with variant count. · Added: · brapi_export_genotype_matrix maxColumns input +…
04 · Who maintains Brapi MCP Server
brapi-mcp-server is maintained by cyanheads. We track 125 MCP servers from cyanheads - 124 actively maintained, 1,730 combined GitHub stars, oldest repo from Dec 2024. Full record: all servers from cyanheads.
- mcp-ts-core Agent-native TypeScript framework for building MCP servers with declarative definitions. ★ 148
- obsidian-mcp-server Read, write, search, and surgically edit Obsidian notes, tags, and frontmatter via MCP. ★ 668
- git-mcp-server Comprehensive Git MCP server enabling native git tools including clone, commit, worktree, & more. ★ 235
- pubmed-mcp-server Search PubMed/Europe PMC, fetch articles and full text (PMC/EPMC/Unpaywall), citations, MeSH terms. ★ 137
- clinicaltrialsgov-mcp-server Search ClinicalTrials.gov - find studies, retrieve results, match patients to eligible trials. ★ 90
- mcp-ts-template TypeScript template for building MCP servers with declarative tooling, observability, and auth. ★ 148
05 · Facts
- repository
- github.com/cyanheads/brapi-mcp-server
- category
- other - ranked #187 of 848 actively-maintained other servers as of 2026-08-25.
- release cadence
- 10+ releases in the last 90 days (latest 2026-08-22)
- registry
- io.github.cyanheads/brapi-mcp-server (active, first published 2026-04-30 · 42 versions)
- packages
- npm:@cyanheads/brapi-mcp-server · npm:@cyanheads/brapi-mcp-server
06 · Brapi MCP Server FAQ
Is Brapi MCP Server still maintained?
Yes - as of 2026-08-25, its last commit was 2026-08-22 and it shipped 10+ releases in the last 90 days. We re-verify nightly.
What can Brapi MCP Server do?
With this server connected, an agent can find studies by crop / trial type / season / location / program. Distributions + dataframe spillover, fetch a study with program / trial / location FKs resolved and companion counts (observations, units, variables), find germplasm by name, synonym, accession, PUI, crop, or free-text. Distributions + dataframe spillover, and fetch a germplasm with attributes, direct parents, and companion counts (studies, parents, descendants).
How do I install Brapi MCP Server?
Run `npx -y @cyanheads/brapi-mcp-server`. The README documents 7 environment variables (MCP_TRANSPORT_TYPE, MCP_LOG_LEVEL, BRAPI_BTI_CASSAVA_USERNAME…) to set first. Set MCP_LOG_LEVEL, BRAPI_BTI_CASSAVA_USERNAME, BRAPI_BTI_CASSAVA_PASSWORD, BRAPI_PROD_BASE_URL, BRAPI_PROD_API_KEY, BRAPI_PROD_API_KEY_HEADER before connecting. MCP_TRANSPORT_TYPE is optional or environment-specific per the README. You can also paste the ready-made client config above.
Does Brapi MCP Server run locally?
Yes - it's a stdio server: it runs on your machine (via npx) with your user's permissions. Your data stays local unless the server itself calls external APIs.
07 · Alternatives to Brapi MCP Server
Alternatives to Brapi MCP Server
Maintained other servers if Brapi MCP Server isn't the fit.
- Heyputer MCP Server Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more ★ 43,204 · 2026-08-24
- Server Commands An MCP server to run arbitrary commands ★ 38,704 · 2026-08-05
- Zotero MCP (54yyyu) Search, read, annotate, and add to your Zotero research library, local or web. ★ 4,780 · 2026-08-25
- Firebase MCP Gives AI development tools Firebase-specific capabilities and expertise. ★ 4,460 · 2026-08-25
- Microsoft Fabric MCP Server MCP tools for interacting with Microsoft Fabric ★ 3,598 · 2026-08-21
- Ship Swift 40+ production-ready SwiftUI recipes for building full-stack iOS apps via MCP. ★ 2,968 · 2026-08-09
More MCP servers to compare · Census MCP Server · Courtlistener MCP Server · Eur Lex MCP Server · Git MCP Server · Gutenberg MCP Server
More TypeScript MCP servers · Cdc Health MCP Server · Clinicaltrialsgov MCP Server · Crossref MCP Server · see all