search_experiments
Pack: expression-atlas · Endpoint: https://gateway.pipeworx.io/expression-atlas/mcp
Search EBI Expression Atlas — ~4,500 curated gene/protein expression experiments (baseline & differential) across species, tissues, and conditions. Filter by keyword (matches description/experimental factors), species (e.g. “Homo sapiens”, “Mus musculus”), and/or type (“Baseline” or “Differential”). Returns accession, description, species, type, assay count, and factors. Keyless. Complements UniProt/Ensembl.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | no | Keyword matched (case-insensitive) against experiment description OR any experimental factor, e.g. “liver”, “stress”, “cancer”. |
species | string | no | Species substring (case-insensitive), e.g. “Homo sapiens”, “Mus musculus”, “Arabidopsis thaliana”. |
type | string | no | Experiment type: “Baseline” or “Differential”. |
limit | number | no | Max results (default 25, max 100). |
Example call
Arguments
{
"query": "liver",
"species": "Homo sapiens",
"type": "Baseline",
"limit": 25
}
curl
curl -X POST https://gateway.pipeworx.io/expression-atlas/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_experiments","arguments":{"query":"liver","species":"Homo sapiens","type":"Baseline","limit":25}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search_experiments', {
"query": "liver",
"species": "Homo sapiens",
"type": "Baseline",
"limit": 25
});
More examples
{
"query": "cancer stress",
"type": "Differential",
"limit": 50
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"expression-atlas": {
"url": "https://gateway.pipeworx.io/expression-atlas/mcp"
}
}
}
See Getting Started for client-specific install steps.