syngo read
scidex.forge.syngo
Query the SynGO database (syngoportal.org) for expert-curated synaptic gene annotations. SynGO covers 1,112 human genes with precise presynapse/postsynapse/synapse localisation using GO terms, each backed by at least one ECO evidence code and PubMed ID — curated by the SynGO Consortium from peer-reviewed literature. Critical for Alzheimer's/autism/schizophrenia research; no other forge verb covers synapse-specific gene biology. Input: HGNC gene symbol (e.g. 'SHANK3', 'SYN1', 'DLGAP1'). APIs: HGNC fetch (symbol resolution) + SynGO getGeneDetails — both free, no auth.
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.syngo``.",
"properties": {
"gene": {
"description": "HGNC gene symbol to query (e.g. ``'SHANK3'``, ``'SYN1'``, ``'DLGAP1'``). The symbol is resolved to an HGNC ID before querying SynGO.",
"maxLength": 100,
"title": "Gene",
"type": "string"
},
"organism": {
"default": "human",
"description": "Organism context. SynGO only covers human genes; this field is recorded in output for provenance but does not filter the SynGO response.",
"maxLength": 50,
"title": "Organism",
"type": "string"
}
},
"required": [
"gene"
],
"title": "ForgeSyngoIn",
"type": "object"
}Output schema
{
"$defs": {
"SynapticRole": {
"description": "One SynGO synaptic GO annotation for a gene.",
"properties": {
"go_term": {
"description": "GO term name (e.g. 'postsynaptic density').",
"title": "Go Term",
"type": "string"
},
"go_id": {
"description": "GO accession in GO:XXXXXXX format (e.g. 'GO:0014069').",
"title": "Go Id",
"type": "string"
},
"synaptic_layer": {
"description": "Curated synaptic compartment: ``'presynapse'``, ``'postsynapse'``, or ``'synapse'``.",
"title": "Synaptic Layer",
"type": "string"
},
"evidence_code": {
"default": "",
"description": "ECO evidence code supporting this annotation (e.g. 'ECO:0006042').",
"title": "Evidence Code",
"type": "string"
},
"pmids": {
"description": "PubMed IDs (as strings) backing this synaptic annotation.",
"items": {
"type": "string"
},
"title": "Pmids",
"type": "array"
}
},
"required": [
"go_term",
"go_id",
"synaptic_layer"
],
"title": "SynapticRole",
"type": "object"
}
},
"description": "Response shape for ``scidex.forge.syngo``.",
"properties": {
"gene": {
"description": "The gene symbol that was queried.",
"title": "Gene",
"type": "string"
},
"hgnc_id": {
"default": "",
"description": "Resolved HGNC ID in ``HGNC:XXXXX`` format, or empty if unresolved.",
"title": "Hgnc Id",
"type": "string"
},
"synaptic_roles": {
"description": "SynGO synaptic GO annotations for the gene.",
"items": {
"$ref": "#/$defs/SynapticRole"
},
"title": "Synaptic Roles",
"type": "array"
},
"not_found": {
"default": false,
"description": "``True`` when no SynGO annotations exist for this gene (gene not in the SynGO curated set or unresolvable symbol). ``False`` when at least one annotation was returned.",
"title": "Not Found",
"type": "boolean"
},
"took_ms": {
"default": 0,
"description": "Wall-clock time for upstream API calls in milliseconds.",
"title": "Took Ms",
"type": "integer"
}
},
"required": [
"gene"
],
"title": "ForgeSyngoOut",
"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/syngo' \
-H 'authorization: Bearer $SCIDEX_JWT' \
-H 'content-type: application/json' \
-d '{
"gene": ""
}'Discussion
No comments yet — be the first.