Forge Tools uniprot_lookup

uniprot_lookup read

scidex.forge.uniprot_lookup

Resolve a gene symbol to one or more UniProt accessions for a given organism. Foundational bridge from symbol-centric inputs to accession-keyed protein workflows (AlphaFold, InterPro, PDB). Returns Swiss-Prot reviewed entries by default.

HTTP: POST /api/scidex/forge/uniprot_lookup

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.uniprot_lookup``.",
  "properties": {
    "gene_symbol": {
      "description": "Gene symbol (e.g. ``BDNF``, ``APOE``, ``Mapt``). UniProt is case-insensitive on gene-symbol search. Use the species-canonical casing where you have it (``BDNF`` for human, ``Bdnf`` for mouse) for least surprise.",
      "maxLength": 30,
      "minLength": 1,
      "title": "Gene Symbol",
      "type": "string"
    },
    "organism_id": {
      "default": 9606,
      "description": "NCBI Taxonomy ID. Defaults to 9606 (Homo sapiens). Common alternates: 10090 (Mus musculus), 10116 (Rattus norvegicus), 7955 (Danio rerio).",
      "maximum": 10000000,
      "minimum": 1,
      "title": "Organism Id",
      "type": "integer"
    },
    "limit": {
      "default": 5,
      "description": "Maximum number of entries to return. Gene-symbol lookups usually return 1-2 accessions per organism; the cap keeps responses bounded.",
      "maximum": 25,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "reviewed_only": {
      "default": true,
      "description": "If True (default) restrict to Swiss-Prot (manually reviewed) entries. False also includes TrEMBL.",
      "title": "Reviewed Only",
      "type": "boolean"
    }
  },
  "required": [
    "gene_symbol"
  ],
  "title": "UniprotLookupIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "UniprotEntryOut": {
      "description": "One UniProt entry as returned by the verb.",
      "properties": {
        "accession": {
          "description": "Primary UniProt accession (e.g. ``P23560``).",
          "title": "Accession",
          "type": "string"
        },
        "name": {
          "default": "",
          "description": "Recommended protein name or UniProtKB ID fallback.",
          "title": "Name",
          "type": "string"
        },
        "gene_symbol": {
          "default": "",
          "description": "Canonical gene symbol per UniProt.",
          "title": "Gene Symbol",
          "type": "string"
        },
        "organism": {
          "default": "",
          "description": "Organism scientific name.",
          "title": "Organism",
          "type": "string"
        },
        "organism_id": {
          "default": 0,
          "description": "NCBI Taxonomy ID.",
          "title": "Organism Id",
          "type": "integer"
        },
        "sequence_length": {
          "default": 0,
          "description": "Canonical sequence length (residues).",
          "title": "Sequence Length",
          "type": "integer"
        },
        "reviewed": {
          "default": false,
          "description": "True for Swiss-Prot (curated); False for TrEMBL (auto).",
          "title": "Reviewed",
          "type": "boolean"
        }
      },
      "required": [
        "accession"
      ],
      "title": "UniprotEntryOut",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.uniprot_lookup``.",
  "properties": {
    "gene_symbol": {
      "description": "Echo of the queried gene symbol.",
      "title": "Gene Symbol",
      "type": "string"
    },
    "organism_id": {
      "description": "Echo of the queried organism taxon id.",
      "title": "Organism Id",
      "type": "integer"
    },
    "returned": {
      "description": "Length of ``results``.",
      "title": "Returned",
      "type": "integer"
    },
    "results": {
      "items": {
        "$ref": "#/$defs/UniprotEntryOut"
      },
      "title": "Results",
      "type": "array"
    },
    "took_ms": {
      "description": "Wall-clock time for the upstream call.",
      "title": "Took Ms",
      "type": "integer"
    }
  },
  "required": [
    "gene_symbol",
    "organism_id",
    "returned",
    "took_ms"
  ],
  "title": "UniprotLookupOut",
  "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/uniprot_lookup' \
  -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.