repurposing_hub read
scidex.forge.repurposing_hub
Query the Broad Institute Drug Repurposing Hub for compound–target annotations, clinical phase, mechanism of action (MOA), and disease area. Covers ~7,000 manually curated compounds: approved drugs, clinical candidates, and tool compounds. Filter by compound name/Broad ID, gene target (exact), MOA substring, minimum clinical phase (0=preclinical, 4=approved only), or disease area substring. Primary data source: public TSV from data.clue.io, fetched once and cached in memory. Set CLUE_API_KEY to query the live CLUE REST API instead for fresher results. Distinct from forge_chembl_compound (broader chemistry) and forge_drugcentral_lookup (pharmacological actions).
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.repurposing_hub``.",
"properties": {
"query": {
"anyOf": [
{
"maxLength": 256,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Compound name or Broad ID (BRD-K...) substring to match. Case-insensitive partial match against compound name and Broad ID. ``None`` = no name filter.",
"title": "Query"
},
"target": {
"anyOf": [
{
"maxLength": 64,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Gene symbol filter (e.g. ``'EGFR'``, ``'ABL1'``). Returns compounds whose target list contains this symbol (case-insensitive exact match). ``None`` = no target filter.",
"title": "Target"
},
"moa": {
"anyOf": [
{
"maxLength": 256,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Mechanism of action substring filter (e.g. ``'kinase inhibitor'``). Case-insensitive partial match against the MOA field. ``None`` = no MOA filter.",
"title": "Moa"
},
"clinical_phase": {
"anyOf": [
{
"maximum": 4,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Minimum clinical phase filter (0–4). Returns only compounds with clinical_phase ≥ this value. ``None`` = no phase filter. Use ``clinical_phase=4`` to restrict to approved drugs only.",
"title": "Clinical Phase"
},
"disease_area": {
"anyOf": [
{
"maxLength": 256,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Disease area substring filter (e.g. ``'oncology'``, ``'neurology'``). Case-insensitive partial match against disease area entries. ``None`` = no disease area filter.",
"title": "Disease Area"
},
"limit": {
"default": 20,
"description": "Maximum number of results to return (default 20, max 500).",
"maximum": 500,
"minimum": 1,
"title": "Limit",
"type": "integer"
}
},
"title": "ForgeRepurposingHubIn",
"type": "object"
}Output schema
{
"$defs": {
"RepurposingHubEntry": {
"description": "One compound entry from the Broad Drug Repurposing Hub.",
"properties": {
"broad_id": {
"description": "Broad Institute compound identifier (e.g. BRD-K12345678-001-01-1).",
"title": "Broad Id",
"type": "string"
},
"name": {
"description": "Compound/drug name (pert_iname).",
"title": "Name",
"type": "string"
},
"clinical_phase": {
"description": "Highest reported clinical phase: 0=preclinical/tool compound, 1=Phase I, 2=Phase II, 3=Phase III, 4=Approved.",
"title": "Clinical Phase",
"type": "integer"
},
"moa": {
"default": "",
"description": "Mechanism of action (e.g. 'kinase inhibitor', 'HDAC inhibitor', 'GPCR agonist').",
"title": "Moa",
"type": "string"
},
"target": {
"description": "Primary gene/protein targets (e.g. ['EGFR', 'ERBB2']).",
"items": {
"type": "string"
},
"title": "Target",
"type": "array"
},
"disease_area": {
"description": "Disease areas (e.g. ['oncology', 'hematologic cancer']).",
"items": {
"type": "string"
},
"title": "Disease Area",
"type": "array"
},
"indication": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Specific disease indication string, or None.",
"title": "Indication"
},
"smiles": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "SMILES string for the compound structure, or None.",
"title": "Smiles"
},
"pubchem_cid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "PubChem Compound ID, or None.",
"title": "Pubchem Cid"
}
},
"required": [
"broad_id",
"name",
"clinical_phase"
],
"title": "RepurposingHubEntry",
"type": "object"
}
},
"description": "Response shape for ``scidex.forge.repurposing_hub``.",
"properties": {
"results": {
"description": "Compound entries matching the query and filters.",
"items": {
"$ref": "#/$defs/RepurposingHubEntry"
},
"title": "Results",
"type": "array"
},
"total_found": {
"default": 0,
"description": "Total number of matches before the limit was applied.",
"title": "Total Found",
"type": "integer"
},
"not_found": {
"default": false,
"description": "True when no compound matched the provided filters. Indicates the query/target/MOA combination returned nothing.",
"title": "Not Found",
"type": "boolean"
},
"source": {
"default": "Broad Drug Repurposing Hub (clue.io/repurposing)",
"description": "Data source identifier.",
"title": "Source",
"type": "string"
},
"took_ms": {
"default": 0,
"description": "Wall-clock time for data fetch and filtering in milliseconds.",
"title": "Took Ms",
"type": "integer"
}
},
"title": "ForgeRepurposingHubOut",
"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/repurposing_hub' \
-H 'authorization: Bearer $SCIDEX_JWT' \
-H 'content-type: application/json' \
-d '{}'Discussion
No comments yet — be the first.