Brapi MCP Server

BrAPI v2.1 MCP server — studies, germplasm, observations, genotypes, images, and pedigrees.

Remote serverstreamable-http

What is the Brapi MCP server?

Connect Brapi to Claude, Cursor or any other MCP client and it stops being a tab you switch to. BrAPI v2.1 MCP server — studies, germplasm, observations, genotypes, images, and pedigrees. The brapi mcp server is what makes that connection.

What the server does

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • Multi — server session** — ServerRegistry maps aliases to live BrAPI connections; one session can span Breedbase, T3, and Sweetpotatobase in parallel
  • Built — in known-server registry** — bti-cassava, bti-sweetpotato, bti-breedbase-demo, t3-wheat, t3-oat, t3-barley resolve out-of-the-box without env vars
  • Capability — aware calls** — CapabilityRegistry caches /serverinfo per connection and guards every tool call against unsupported endpoints. Falls back to /calls
  • Async — search transparency** — brapi_find_genotype_calls and brapi_raw_search handle the POST /search/{noun} → GET /search/{noun}/{id} 202-retry pattern
  • Free — text variable ranking** — OntologyResolver scores variables against a query (PUI / name / synonym / trait-class) so find_variables text:"..." returns
  • brapi_submit_observations — Two-phase observation write — mode: preview validates; mode: apply elicits confirmation, then fans POST + PUT in parallel. Additive only — no
  • Orient — The Orient tool exposed by this server
  • Retrieve — The Retrieve tool exposed by this server
  • Analyze — The Analyze tool exposed by this server

Credentials and setup notes

Configuration is passed through the environment: MCP_TRANSPORT_TYPE, MCP_LOG_LEVEL, BRAPI_DEFAULT_BASE_URL, BRAPI_DEFAULT_OAUTH_CLIENT_ID, BRAPI_DEFAULT_API_KEY, CANVAS_EXPORT_PATH, BASE_URL, BRAPI_PROD_BASE_URL. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

Installation

Because this one is hosted, setup is mostly authentication — you point your client at the endpoint and approve access. Nothing runs on your machine, so there is no runtime to keep patched.

Where it fits

This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Brapi's toolset — Multi, Built, Capability and 6 more — is a fair guide to whether it matches your workflow. It is maintained by cyanheads; worth a glance at recent repository activity before you build anything load-bearing on it.

This entry was verified against Brapi's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.

Worth knowing first

  • Your data travels to the provider's service, so the usual questions apply about what you send and what they retain.
  • With 9 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Brapi.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
Multiserver session** — ServerRegistry maps aliases to live BrAPI connections; one session can span Breedbase, T3, and Sweetpotatobase in parallel.
Builtin known-server registry** — bti-cassava, bti-sweetpotato, bti-breedbase-demo, t3-wheat, t3-oat, t3-barley resolve out-of-the-box without env vars; orientation envelope carries CC-BY attribution.
Capabilityaware calls** — CapabilityRegistry caches /serverinfo per connection and guards every tool call against unsupported endpoints. Falls back to /calls when /serverinfo is sparse.
Asyncsearch transparency** — brapi_find_genotype_calls and brapi_raw_search handle the POST /search/{noun} → GET /search/{noun}/{id} 202-retry pattern automatically.
Freetext variable ranking** — OntologyResolver scores variables against a query (PUI / name / synonym / trait-class) so find_variables text:"..." returns ranked candidates even without /ontologies.
brapi_submit_observationsTwo-phase observation write — mode: preview validates; mode: apply elicits confirmation, then fans POST + PUT in parallel. Additive only — no destructive deletion.
OrientThe Orient tool exposed by this server.
RetrieveThe Retrieve tool exposed by this server.
AnalyzeThe Analyze tool exposed by this server.

How to install the Brapi MCP server

{
  "mcpServers": {
    "brapi": {
      "command": "npx",
      "args": ["-y", "@cyanheads/brapi-mcp-server"],
      "env": {
        "MCP_TRANSPORT_TYPE": "your-value",
        "MCP_LOG_LEVEL": "your-value",
        "BRAPI_DEFAULT_BASE_URL": "your-value",
        "BRAPI_DEFAULT_OAUTH_CLIENT_ID": "your-value",
        "BRAPI_DEFAULT_API_KEY": "your-value",
        "CANVAS_EXPORT_PATH": "your-value",
        "BASE_URL": "your-value",
        "BRAPI_PROD_BASE_URL": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

VariableDescriptionRequired
MCP_TRANSPORT_TYPEConfiguration value read at startup.Optional
MCP_LOG_LEVELConfiguration value read at startup.Optional
BRAPI_DEFAULT_BASE_URLEndpoint or connection string the server talks to.Yes
BRAPI_DEFAULT_OAUTH_CLIENT_IDConfiguration value read at startup.Optional
BRAPI_DEFAULT_API_KEYCredential the server authenticates with.Yes
CANVAS_EXPORT_PATHFilesystem location the server is allowed to use.Optional
BASE_URLEndpoint or connection string the server talks to.Yes
BRAPI_PROD_BASE_URLEndpoint or connection string the server talks to.Yes

Example prompts to try

  • Use Brapi to Multi.
  • Use Brapi to Built.
  • Use Brapi to Capability.

Frequently asked questions

It connects Brapi to MCP-compatible AI assistants such as Claude and Cursor, exposing 9 tools (Multi, Built, Capability, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Brapi directly.