Scientific tools (ToolUniverse)
Real scientific data is reached through a uvx sidecar — the backend shells out to
uvx --from tooluniverse tu run …, so no heavy dependency is added to the backend
itself. The first call downloads ToolUniverse (~30 s, once).
Discover & check status
# search available toolsGET /tools/search?q=literature
# sidecar statusGET /tools/statusWorkflows
# literature sweep for a questionPOST /tools/workflows/literature-sweep{ "question_id": "…" }
# audit claims against real references (the citation gate)POST /tools/workflows/citation-gate{ "claims": ["…"] }
# build mechanism context: real domains + structures for proteinsPOST /tools/workflows/mechanism-context-pack{ "question_id": "…", "proteins": [{ "gene": "rpoB", "organism_id": "83333" }] }Governed and cached
Every external call is cached, governed, and shown in Agents → Tool runs with provider and online/offline status. Nothing reaches the network silently.
To run without tools (heuristic only), start the backend with RC_USE_TOOLS=0, or go
fully offline with RC_OFFLINE=1.
The full API is browsable at http://localhost:8799/docs once the backend is running.