Forge Tools gnomad_constraint

gnomad_constraint read

scidex.forge.gnomad_constraint

Look up per-gene constraint metrics from gnomAD: pLI (≥0.9 = LoF intolerant), LOEUF/oe_lof_upper (<0.35 = constrained), missense Z-score, and related statistics. Distinct from scidex.forge.gnomad_variant (per-variant allele frequencies) — this returns per-gene summary statistics derived across all observed variants. pLI and LOEUF quantify gene-level tolerance to heterozygous LoF variation — essential for gene prioritisation in rare-disease and AD/genetics workflows. GraphQL POST to gnomad.broadinstitute.org/api — public, no auth required. Unknown genes return not_found=True with constraint=None — no exception raised.

HTTP: POST /api/scidex/forge/gnomad_constraint

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.gnomad_constraint``.",
  "properties": {
    "gene_symbol": {
      "description": "HGNC gene symbol to query (e.g. 'BRCA1', 'SCN1A', 'TP53'). Case-insensitive; uppercased before the API call.",
      "maxLength": 64,
      "minLength": 1,
      "title": "Gene Symbol",
      "type": "string"
    },
    "reference_genome": {
      "default": "GRCh38",
      "description": "'GRCh38' (default, gnomAD v4) or 'GRCh37' (gnomAD v2.1).",
      "enum": [
        "GRCh38",
        "GRCh37"
      ],
      "title": "Reference Genome",
      "type": "string"
    }
  },
  "required": [
    "gene_symbol"
  ],
  "title": "ForgeGnomadConstraintIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "GnomadConstraintResult": {
      "description": "Per-gene gnomAD constraint statistics.",
      "properties": {
        "pLI": {
          "description": "Probability of being Loss-of-Function Intolerant. ≥0.9 indicates strong intolerance to heterozygous LoF.",
          "title": "Pli",
          "type": "number"
        },
        "loeuf": {
          "description": "Loss-of-function Observed/Expected Upper bound Fraction (oe_lof_upper). <0.35 indicates strong constraint. Preferred over pLI for quantitative comparisons.",
          "title": "Loeuf",
          "type": "number"
        },
        "obs_lof": {
          "description": "Observed loss-of-function variant count.",
          "title": "Obs Lof",
          "type": "number"
        },
        "exp_lof": {
          "description": "Expected loss-of-function variant count.",
          "title": "Exp Lof",
          "type": "number"
        },
        "oe_lof": {
          "description": "Observed/expected LoF ratio (point estimate).",
          "title": "Oe Lof",
          "type": "number"
        },
        "lof_z": {
          "description": "Z-score for LoF constraint.",
          "title": "Lof Z",
          "type": "number"
        },
        "mis_z": {
          "description": "Z-score for missense constraint. ≥3.09 indicates missense intolerance (p<0.001).",
          "title": "Mis Z",
          "type": "number"
        },
        "oe_mis": {
          "description": "Observed/expected missense ratio.",
          "title": "Oe Mis",
          "type": "number"
        },
        "syn_z": {
          "description": "Z-score for synonymous variants (QC reference).",
          "title": "Syn Z",
          "type": "number"
        }
      },
      "required": [
        "pLI",
        "loeuf",
        "obs_lof",
        "exp_lof",
        "oe_lof",
        "lof_z",
        "mis_z",
        "oe_mis",
        "syn_z"
      ],
      "title": "GnomadConstraintResult",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.gnomad_constraint``.",
  "properties": {
    "gene_symbol": {
      "description": "Gene symbol as queried (uppercased).",
      "title": "Gene Symbol",
      "type": "string"
    },
    "reference_genome": {
      "description": "Reference genome used for the query.",
      "title": "Reference Genome",
      "type": "string"
    },
    "constraint": {
      "anyOf": [
        {
          "$ref": "#/$defs/GnomadConstraintResult"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Constraint metrics, or None if the gene was not found."
    },
    "not_found": {
      "description": "True if gnomAD returned no data for this gene symbol.",
      "title": "Not Found",
      "type": "boolean"
    },
    "source": {
      "default": "gnomAD (gnomad.broadinstitute.org)",
      "description": "Data source attribution.",
      "title": "Source",
      "type": "string"
    },
    "took_ms": {
      "description": "Wall-clock time for the upstream call (ms).",
      "title": "Took Ms",
      "type": "integer"
    }
  },
  "required": [
    "gene_symbol",
    "reference_genome",
    "not_found",
    "took_ms"
  ],
  "title": "ForgeGnomadConstraintOut",
  "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/gnomad_constraint' \
  -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.