Forge Tools cellosaurus

cellosaurus read

scidex.forge.cellosaurus

Query ExPASy Cellosaurus (api.cellosaurus.org) for cell line identity, provenance, and contamination/misidentification flags. Cellosaurus is the gold-standard registry for cell line identity — tracks misidentified and cross-contaminated cell lines (HeLa contamination, etc.), STR profiles, species and tissue of origin. Input: cell line name (e.g. 'HeLa', 'MCF-7', 'A549') and optional CVCL accession. If accession is provided, issues a direct lookup; otherwise searches by name. Returns per entry: accession (CVCL_XXXX), name, synonyms, cell_line_type, species, tissue_of_origin, disease, sex_of_cell, problematic flag + note, derived_from, cross_references, and pubmed_ids. Unknown cell lines return empty results with not_found=True — no exception raised. API: Cellosaurus REST API — public, no authentication required.

HTTP: POST /api/scidex/forge/cellosaurus

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.cellosaurus``.",
  "properties": {
    "cell_line_name": {
      "description": "Cell line name to look up (e.g. 'HeLa', 'MCF-7', 'A549'). Used for search when accession is not provided.",
      "title": "Cell Line Name",
      "type": "string"
    },
    "accession": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional Cellosaurus accession (CVCL_XXXX) for a direct lookup. When provided, the API is queried directly by accession instead of by name.",
      "title": "Accession"
    }
  },
  "required": [
    "cell_line_name"
  ],
  "title": "ForgeCellosaurusIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "CellosaurusEntry": {
      "description": "One Cellosaurus cell line record.",
      "properties": {
        "accession": {
          "description": "Primary Cellosaurus accession (e.g. CVCL_0030).",
          "title": "Accession",
          "type": "string"
        },
        "name": {
          "description": "Primary cell line name (identifier).",
          "title": "Name",
          "type": "string"
        },
        "synonyms": {
          "description": "Alternative names and synonyms for the cell line.",
          "items": {
            "type": "string"
          },
          "title": "Synonyms",
          "type": "array"
        },
        "cell_line_type": {
          "default": "",
          "description": "Cell line category (e.g. 'Cancer cell line', 'Hybridoma').",
          "title": "Cell Line Type",
          "type": "string"
        },
        "species": {
          "default": "",
          "description": "Species of origin (e.g. 'Homo sapiens').",
          "title": "Species",
          "type": "string"
        },
        "tissue_of_origin": {
          "default": "",
          "description": "Tissue from which the cell line was derived.",
          "title": "Tissue Of Origin",
          "type": "string"
        },
        "disease": {
          "default": "",
          "description": "Disease or pathology associated with the cell line.",
          "title": "Disease",
          "type": "string"
        },
        "sex_of_cell": {
          "default": "",
          "description": "Sex of the donor (e.g. 'Female', 'Male').",
          "title": "Sex Of Cell",
          "type": "string"
        },
        "problematic": {
          "default": false,
          "description": "True if Cellosaurus has flagged this cell line as problematic (misidentified, contaminated, etc.).",
          "title": "Problematic",
          "type": "boolean"
        },
        "problematic_note": {
          "default": "",
          "description": "Detail text for the problematic flag, if set.",
          "title": "Problematic Note",
          "type": "string"
        },
        "derived_from": {
          "default": "",
          "description": "Parent cell line this was derived from, if known.",
          "title": "Derived From",
          "type": "string"
        },
        "cross_references": {
          "description": "External database cross-references as list of {database, accession} dicts.",
          "items": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "title": "Cross References",
          "type": "array"
        },
        "pubmed_ids": {
          "description": "PubMed IDs from Cellosaurus references for this cell line.",
          "items": {
            "type": "string"
          },
          "title": "Pubmed Ids",
          "type": "array"
        }
      },
      "required": [
        "accession",
        "name"
      ],
      "title": "CellosaurusEntry",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.cellosaurus``.",
  "properties": {
    "query": {
      "description": "The original cell_line_name query.",
      "title": "Query",
      "type": "string"
    },
    "results": {
      "description": "Cellosaurus entries matching the query.",
      "items": {
        "$ref": "#/$defs/CellosaurusEntry"
      },
      "title": "Results",
      "type": "array"
    },
    "total_found": {
      "description": "Number of results returned.",
      "title": "Total Found",
      "type": "integer"
    },
    "not_found": {
      "description": "True if no cell lines were found for the query.",
      "title": "Not Found",
      "type": "boolean"
    },
    "source": {
      "default": "ExPASy Cellosaurus (api.cellosaurus.org)",
      "description": "Data source attribution.",
      "title": "Source",
      "type": "string"
    }
  },
  "required": [
    "query",
    "total_found",
    "not_found"
  ],
  "title": "ForgeCellosaurusOut",
  "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/cellosaurus' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "cell_line_name": ""
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.