Forge Tools cath_domains

cath_domains read

scidex.forge.cath_domains

Query the CATH-Gene3D database (cathdb.info) for hierarchical protein domain structural classifications. Accepts a UniProt accession, PDB code, or CATH domain ID and returns CathDomain records including the four-level CATH code (Class.Architecture.Topology.Homologous-superfamily), superfamily name, and per-domain metadata. CATH classifies 500K+ domain sequences from 350K+ PDB structures into 6,000+ superfamilies and is essential for structure-function analysis and identifying structural homologs with shared binding sites. API: GET https://www.cathdb.info/version/latest/api/rest — free, no auth.

HTTP: POST /api/scidex/forge/cath_domains

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.cath_domains``.",
  "properties": {
    "query": {
      "description": "Query string whose interpretation depends on ``query_type``:\n• ``'uniprot'`` — UniProt accession (e.g. ``'P04637'``).\n• ``'pdb'`` — 4-character PDB code (e.g. ``'1TUP'``); chain optional (e.g. ``'1TUP_A'``).\n• ``'domain'`` — CATH domain identifier (e.g. ``'1tup_A_00001'``).",
      "maxLength": 200,
      "title": "Query",
      "type": "string"
    },
    "query_type": {
      "default": "uniprot",
      "description": "Determines how ``query`` is interpreted and which CATH REST endpoint is called.  Default: ``'uniprot'``.",
      "enum": [
        "uniprot",
        "pdb",
        "domain"
      ],
      "title": "Query Type",
      "type": "string"
    }
  },
  "required": [
    "query"
  ],
  "title": "ForgeCathDomainsIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "CathDomain": {
      "description": "One CATH domain record.",
      "properties": {
        "domain_id": {
          "description": "CATH domain identifier (e.g. '1tup_A_00001').",
          "title": "Domain Id",
          "type": "string"
        },
        "pdb_code": {
          "description": "4-character PDB code (lower-case).",
          "title": "Pdb Code",
          "type": "string"
        },
        "chain": {
          "description": "PDB chain identifier.",
          "title": "Chain",
          "type": "string"
        },
        "cath_code": {
          "description": "Four-level CATH classification code (e.g. '2.60.40.10'), encoding Class.Architecture.Topology.Homologous-superfamily.",
          "title": "Cath Code",
          "type": "string"
        },
        "superfamily_id": {
          "description": "CATH superfamily identifier (same digits as cath_code).",
          "title": "Superfamily Id",
          "type": "string"
        },
        "superfamily_name": {
          "description": "Human-readable name of the CATH superfamily.",
          "title": "Superfamily Name",
          "type": "string"
        },
        "class_name": {
          "default": "",
          "description": "CATH Class description (e.g. 'Mainly Beta').",
          "title": "Class Name",
          "type": "string"
        },
        "architecture": {
          "default": "",
          "description": "CATH Architecture description (e.g. 'Beta Sandwich').",
          "title": "Architecture",
          "type": "string"
        },
        "topology": {
          "default": "",
          "description": "CATH Topology / fold description (e.g. 'Immunoglobulin-like').",
          "title": "Topology",
          "type": "string"
        },
        "length": {
          "default": 0,
          "description": "Domain sequence length in residues.",
          "title": "Length",
          "type": "integer"
        }
      },
      "required": [
        "domain_id",
        "pdb_code",
        "chain",
        "cath_code",
        "superfamily_id",
        "superfamily_name"
      ],
      "title": "CathDomain",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.cath_domains``.",
  "properties": {
    "query": {
      "description": "The input query string, echoed back.",
      "title": "Query",
      "type": "string"
    },
    "query_type": {
      "description": "The query_type used, echoed back.",
      "title": "Query Type",
      "type": "string"
    },
    "domains": {
      "description": "CATH domain records matching the query.",
      "items": {
        "$ref": "#/$defs/CathDomain"
      },
      "title": "Domains",
      "type": "array"
    },
    "not_found": {
      "default": false,
      "description": "True when the query returned no CATH domain records.",
      "title": "Not Found",
      "type": "boolean"
    }
  },
  "required": [
    "query",
    "query_type"
  ],
  "title": "ForgeCathDomainsOut",
  "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/cath_domains' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "query": ""
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.