WheatOmics 2.0 · AI & API

Agent & API

WheatOmics opens its wheat multi-omics data to AI agents and scripts: a built-in MCP server for tool-using LLM clients, plus a documented REST API for everything else.

MCP · Model Context Protocol REST · JSON OpenAPI 3

A · Model Context Protocol

AI agents: built-in MCP server

WheatOmics runs an MCP (Model Context Protocol) server over SSE (Server-Sent Events), so an MCP-capable AI client can connect remotely, discover the tools below and call them as native tools. The server exposes sequence retrieval and CAPS/dCAPS primer design; the REST API described in the next section covers the remaining data modules.

Server and endpoints

Connect to the public host https://wheatomics.sdau.edu.cn:

ItemValue
Server namewheatomics
TransportSSE (Server-Sent Events)
SSE endpointGET /api/mcp/sse
Message endpointPOST /api/mcp/messages

Connect an MCP client

Add the remote SSE server to your MCP client's JSON configuration. The mcpServers form shown here is what Cursor and many other clients use; some clients spell the key servers and accept the transport implicitly, so check your client's schema:

{
  "mcpServers": {
    "wheatomics": {
      "type": "sse",
      "url": "https://wheatomics.sdau.edu.cn/api/mcp/sse"
    }
  }
}

Claude Code can register the same server from a shell:

claude mcp add --transport sse wheatomics https://wheatomics.sdau.edu.cn/api/mcp/sse

Check connectivity — the stream opens with an SSE endpoint event that carries the message URL:

curl -N https://wheatomics.sdau.edu.cn/api/mcp/sse

Your client must support remote SSE MCP servers; local stdio-only clients cannot connect to this endpoint directly.

Registered tools

Four tools are registered on the server. Arguments are passed as the tool input object; errors come back as text so the model can adjust and retry.

Tool Required arguments Optional arguments Returns
get_sequence_by_gene gene_id gene_db (default all_gene), protein_db (default all_protein) Gene and protein FASTA records for one gene ID.
get_sequence_by_interval region (legacy format, e.g. chr1A:10-100), database (a genome database name) — FASTA sequence for the requested genomic interval.
batch_sequence database, ids (space-separated gene IDs) — Direct-entry FASTA records for multiple gene IDs.
design_caps_primers seq1, seq2 (equal length, one base differs) mismatch_max (0–3, default 1), top_n (default 10) Ranked CAPS/dCAPS designs with enzyme, primer sequences, mismatches, cut position and Tm.

B · Representational State Transfer

REST API

Every data module is also reachable over plain HTTP under the base URL https://wheatomics.sdau.edu.cn/api. The interactive references are the quickest way to explore the endpoints: Swagger UI, the ReDoc reference, or the machine-readable OpenAPI 3.x schema.

Response envelope

Successful calls are wrapped consistently, with the payload under data:

{
  "success": true,
  "message": "ok",
  "timestamp": "2026-10-29T02:15:00+00:00",
  "data": { }
}

The timestamp is regenerated on every response. Validation errors (HTTP 422) and unexpected server errors (HTTP 500) return the same envelope with "success": false, an error summary and a detail field; endpoints can also answer with a plain HTTP error status and a detail message.

Quick start

Application metadata:

curl https://wheatomics.sdau.edu.cn/api/about

It returns the API name, version, docs, api_prefix, server_time and client_ip.

One page of the curated known-gene list:

curl "https://wheatomics.sdau.edu.cn/api/genes/known/all?limit=2"

GET /api/genes/known/all accepts optional limit (1–5000) and offset (≥ 0); without limit it returns the full list.

Main API modules

These are the main module prefixes; the Swagger UI and ReDoc pages list every path and parameter in full.

ModulePrefixModulePrefix
Known Genes/api/genes/knownCo-expression/api/coexpression
GeneHub/api/genes/detail/{gene_id}WheatPPI/api/ppi
PfamSearch/api/genes/functions/pfamComparative/api/comparative
IntervalTool/api/genes/functions/intervalTriticeae Papers/api/papers
Sequences/api/sequenceGO / KEGG/api/go · /api/kegg
BLAST/api/blastVariantHub/api/VariantHub
Expression/api/expressioneQTL Atlas/api/eqtl
OrthoFinder/api/orthofinderCAPS / dCAPS/api/caps
JBrowse/api/jbrowsePrimerServer2/api/PrimerServer2

Long-running BLAST jobs

BLAST is asynchronous: POST /api/blast/search queues a job (form fields such as program, database and query), and GET /api/blast/status/{job_id} reports the status and download links. Send wait=false to get a job_id back immediately instead of waiting for the result.

Why this matters for agents

Give an LLM the OpenAPI JSON — or connect the MCP server — and it can discover the available data endpoints and call them on its own. Responses are already machine-friendly JSON under the unified envelope, so no scraping or ad-hoc parsing is needed.

C · Access & support

Access & support

Access

All read endpoints are public and need no API key. Write endpoints — such as the curated known-gene write API at /api/genes/known/write — require an API key issued by the maintainers; the key is sent in the Authorization: Bearer or X-API-Key header.

Keys are scoped, rate-limited and audited, and are only issued for curation work. Email shengweima@icloud.com to request one or to report a problem.

Support

Questions, bug reports and feature requests are welcome by email at shengweima@icloud.com.

See the contact page for the project team and the news page for updates about the platform and its data releases.

Cite WheatOmics through the platform citation on the homepage. This page was last updated on 2026-10-29 and describes the MCP server and REST API as deployed at that time.