Forge Tools ebi_expression_atlas

ebi_expression_atlas read

scidex.forge.ebi_expression_atlas

Query the EMBL-EBI Expression Atlas for gene expression across species, tissues, cell types, and experimental conditions. Broader than GTEx: covers developmental stages, disease conditions, mouse/zebrafish orthologs, and single-cell RNA-seq. Returns experiment accessions, types (baseline/differential/proteomics), titles, organisms, tissues, cell types, and per-factor expression values. Free REST API — no auth required.

HTTP: POST /api/scidex/forge/ebi_expression_atlas

Invoke

Calls scidex.tool.invoke on the substrate with this tool name. Edit the JSON below — it must match the input schema. The substrate runs the tool, records the call in substrate_tool_calls, and returns a structured envelope.

Sign in to invoke this tool. Schema and curl snippet are visible to anyone.

Schemas

Input schema
{
  "additionalProperties": false,
  "description": "Input schema for ``scidex.forge.ebi_expression_atlas``.",
  "properties": {
    "gene_symbol": {
      "description": "HGNC (or ortholog) gene symbol to search for (e.g. ``TP53``, ``BRCA1``, ``Tp53`` for mouse). Case-insensitive in Expression Atlas lookup.",
      "maxLength": 30,
      "minLength": 1,
      "title": "Gene Symbol",
      "type": "string"
    },
    "species": {
      "default": "Homo sapiens",
      "description": "Organism name. Defaults to ``Homo sapiens``. Common values: ``Mus musculus``, ``Danio rerio``, ``Rattus norvegicus``. Empty string disables the species filter (returns all organisms).",
      "maxLength": 100,
      "title": "Species",
      "type": "string"
    },
    "experiment_type": {
      "anyOf": [
        {
          "maxLength": 60,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional experiment-type filter. Accepted values: ``rnaseq_mrna_baseline``, ``rnaseq_mrna_differential``, ``proteomics_baseline``, ``proteomics_differential``, ``microarray_1colour_mrna_differential``, ``microarray_2colour_mrna_differential``, ``single_cell_rnaseq_baseline``. Omit to return all types.",
      "title": "Experiment Type"
    },
    "limit": {
      "default": 10,
      "description": "Maximum number of experiments to return (1–100, default 10).",
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "gene_symbol"
  ],
  "title": "ForgeEBIExpressionAtlasIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "EBIExperiment": {
      "description": "One Expression Atlas experiment in the response.",
      "properties": {
        "experiment_accession": {
          "description": "Experiment accession (e.g. ``E-MTAB-2836``, ``E-GEOD-26202``).",
          "title": "Experiment Accession",
          "type": "string"
        },
        "experiment_type": {
          "description": "Normalised experiment type token (e.g. ``rnaseq_mrna_baseline``, ``single_cell_rnaseq_baseline``, ``rnaseq_mrna_differential``).",
          "title": "Experiment Type",
          "type": "string"
        },
        "title": {
          "default": "",
          "description": "Human-readable experiment title.",
          "title": "Title",
          "type": "string"
        },
        "organism": {
          "default": "",
          "description": "Organism studied (e.g. ``Homo sapiens``).",
          "title": "Organism",
          "type": "string"
        },
        "cell_types": {
          "description": "Distinct cell types assayed in this experiment.",
          "items": {
            "type": "string"
          },
          "title": "Cell Types",
          "type": "array"
        },
        "tissues": {
          "description": "Distinct tissue / organism-part names assayed in this experiment.",
          "items": {
            "type": "string"
          },
          "title": "Tissues",
          "type": "array"
        },
        "expression_values": {
          "description": "Per-factor quantification records from the search response. Each dict has at minimum ``factorValue`` and ``value`` keys.",
          "items": {
            "additionalProperties": true,
            "type": "object"
          },
          "title": "Expression Values",
          "type": "array"
        }
      },
      "required": [
        "experiment_accession",
        "experiment_type"
      ],
      "title": "EBIExperiment",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.ebi_expression_atlas``.",
  "properties": {
    "gene_symbol": {
      "description": "Queried gene symbol (as supplied).",
      "title": "Gene Symbol",
      "type": "string"
    },
    "species": {
      "description": "Species filter applied (empty string = all).",
      "title": "Species",
      "type": "string"
    },
    "experiments": {
      "description": "Matching Expression Atlas experiments, capped at ``limit``.",
      "items": {
        "$ref": "#/$defs/EBIExperiment"
      },
      "title": "Experiments",
      "type": "array"
    },
    "total_experiments": {
      "default": 0,
      "description": "Total experiments matching the query in Atlas (may exceed ``len(experiments)`` when ``limit`` clips the list).",
      "title": "Total Experiments",
      "type": "integer"
    },
    "took_ms": {
      "description": "Wall-clock time for the upstream EBI call.",
      "title": "Took Ms",
      "type": "integer"
    }
  },
  "required": [
    "gene_symbol",
    "species",
    "took_ms"
  ],
  "title": "ForgeEBIExpressionAtlasOut",
  "type": "object"
}

curl snippet

Replace $SCIDEX_JWT with a valid bearer token. Read verbs are usually accessible without auth in dev; production requires a JWT.

curl -sS -X POST '/api/scidex/forge/ebi_expression_atlas' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "gene_symbol": ""
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.