Forge Tools panglaodb_markers

panglaodb_markers read

scidex.forge.panglaodb_markers

Query PanglaoDB (panglaodb.se) for curated single-cell RNA-seq cell type marker genes. PanglaoDB aggregates markers from 1300+ scRNA-seq datasets covering 350+ cell types and 8000+ marker genes across human and mouse. Supports gene lookup (which cell types express this gene) and cell type lookup (all curated markers for this cell type), with filtering by tissue/organ and species. Essential for cell type annotation in scRNA-seq workflows (Seurat, Scanpy, Cell Ranger). Free public API, no auth required.

HTTP: POST /api/scidex/forge/panglaodb_markers

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.panglaodb_markers``.",
  "properties": {
    "gene": {
      "default": "",
      "description": "Gene symbol to look up (e.g. 'CD3D'). Returns all cell types that use this gene as a confirmed marker. Supply either ``gene`` or ``cell_type``, not both.",
      "title": "Gene",
      "type": "string"
    },
    "cell_type": {
      "default": "",
      "description": "Cell type name to look up (e.g. 'T cells'). Returns all curated marker genes for this cell type. Supply either ``gene`` or ``cell_type``, not both.",
      "title": "Cell Type",
      "type": "string"
    },
    "organ": {
      "default": "",
      "description": "Optional tissue/organ filter (e.g. 'Blood', 'Lung', 'Brain'). Case-insensitive. Empty means no filter.",
      "title": "Organ",
      "type": "string"
    },
    "species": {
      "default": "Hs",
      "description": "Species: ``'Hs'`` (human, default) or ``'Mm'`` (mouse).",
      "title": "Species",
      "type": "string"
    },
    "limit": {
      "default": 20,
      "description": "Maximum number of cell type entries to return. Default 20.",
      "maximum": 200,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    }
  },
  "title": "ForgePanglaodbIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "CellTypeMarker": {
      "description": "Marker gene information for one cell type from PanglaoDB.",
      "properties": {
        "cell_type": {
          "description": "PanglaoDB cell type name (e.g. 'T cells').",
          "title": "Cell Type",
          "type": "string"
        },
        "organ": {
          "description": "Tissue or organ (e.g. 'Blood', 'Lung').",
          "title": "Organ",
          "type": "string"
        },
        "species": {
          "description": "Species abbreviation: 'Hs' (human) or 'Mm' (mouse).",
          "title": "Species",
          "type": "string"
        },
        "sensitivity": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Marker sensitivity for this cell type (0–1). None when not reported.",
          "title": "Sensitivity"
        },
        "specificity": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Marker specificity for this cell type (0–1). None when not reported.",
          "title": "Specificity"
        },
        "marker_genes": {
          "description": "Gene symbols confirmed as markers for this cell type in PanglaoDB.",
          "items": {
            "type": "string"
          },
          "title": "Marker Genes",
          "type": "array"
        }
      },
      "required": [
        "cell_type",
        "organ",
        "species",
        "marker_genes"
      ],
      "title": "CellTypeMarker",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.panglaodb_markers``.",
  "properties": {
    "query": {
      "description": "The gene symbol or cell type name that was queried.",
      "title": "Query",
      "type": "string"
    },
    "cell_types": {
      "description": "Cell types with marker gene information from PanglaoDB.",
      "items": {
        "$ref": "#/$defs/CellTypeMarker"
      },
      "title": "Cell Types",
      "type": "array"
    },
    "not_found": {
      "default": false,
      "description": "True when the gene or cell type was not found in PanglaoDB.",
      "title": "Not Found",
      "type": "boolean"
    }
  },
  "required": [
    "query"
  ],
  "title": "ForgePanglaodbOut",
  "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/panglaodb_markers' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.