Forge Tools pharmacodb_sensitivity

pharmacodb_sensitivity read

scidex.forge.pharmacodb_sensitivity

Query PharmacoDB for quantitative drug sensitivity measurements across cancer cell lines. Returns IC50 (µM) and AAC (area above curve, 0–1) profiles aggregated from CCLE, GDSC1, GDSC2, CTRPv2, GRAY, FIMM, and 15+ pharmacogenomics datasets. Supports optional filtering by tissue type (e.g. 'lung') or dataset (e.g. 'GDSC1'). Distinct from forge_chembl_compound (binding assays), forge_depmap_gene_effect (genetic dependency), and forge_repurposing_hub (drug annotation). REST API: https://pharmacodb.ca/api/v2 — free, no auth required.

HTTP: POST /api/scidex/forge/pharmacodb_sensitivity

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.pharmacodb_sensitivity``.",
  "properties": {
    "drug_name": {
      "description": "Drug name to query (e.g. 'Gefitinib', 'Paclitaxel', 'Erlotinib'). Matched case-insensitively against PharmacoDB drug names.",
      "maxLength": 200,
      "minLength": 1,
      "title": "Drug Name",
      "type": "string"
    },
    "tissue": {
      "anyOf": [
        {
          "maxLength": 100,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional tissue type filter (e.g. 'lung', 'breast', 'colon'). When supplied, only cell lines from that tissue type are returned.",
      "title": "Tissue"
    },
    "dataset": {
      "anyOf": [
        {
          "maxLength": 100,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional dataset/study filter (e.g. 'CCLE', 'GDSC1', 'GDSC2', 'CTRPv2'). When supplied, only profiles from that dataset are returned.",
      "title": "Dataset"
    },
    "limit": {
      "default": 30,
      "description": "Maximum number of sensitivity points to return. Default 30.",
      "maximum": 200,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "drug_name"
  ],
  "title": "ForgePharmacodbIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "DrugSensitivityPoint": {
      "description": "One drug sensitivity measurement for a specific cell line and study.",
      "properties": {
        "cell_line": {
          "description": "Cell line name (e.g. 'HCC827').",
          "title": "Cell Line",
          "type": "string"
        },
        "tissue": {
          "description": "Tissue type of the cell line (e.g. 'lung').",
          "title": "Tissue",
          "type": "string"
        },
        "ic50": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Half-maximal inhibitory concentration in µM. None when not estimated for this experiment.",
          "title": "Ic50"
        },
        "aac": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Area above the dose-response curve, normalised to [0, 1]. Higher values indicate greater sensitivity.",
          "title": "Aac"
        },
        "dataset": {
          "description": "Name of the study/dataset (e.g. 'CCLE', 'GDSC1', 'CTRPv2').",
          "title": "Dataset",
          "type": "string"
        },
        "study_id": {
          "description": "Numeric profile/experiment ID in PharmacoDB.",
          "title": "Study Id",
          "type": "integer"
        }
      },
      "required": [
        "cell_line",
        "tissue",
        "dataset",
        "study_id"
      ],
      "title": "DrugSensitivityPoint",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.pharmacodb_sensitivity``.",
  "properties": {
    "drug_name": {
      "description": "Drug name as returned by PharmacoDB.",
      "title": "Drug Name",
      "type": "string"
    },
    "drug_id": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Numeric drug ID in PharmacoDB, or None if drug was not found.",
      "title": "Drug Id"
    },
    "sensitivity_data": {
      "description": "Drug sensitivity profiles across cell lines and datasets.",
      "items": {
        "$ref": "#/$defs/DrugSensitivityPoint"
      },
      "title": "Sensitivity Data",
      "type": "array"
    },
    "not_found": {
      "description": "True when the drug name could not be resolved in PharmacoDB.",
      "title": "Not Found",
      "type": "boolean"
    }
  },
  "required": [
    "drug_name",
    "not_found"
  ],
  "title": "ForgePharmacodbOut",
  "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/pharmacodb_sensitivity' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "drug_name": ""
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.