API
MCP catalog (generated)
src/tool-catalog.ts, regenerated at docs build. Do not edit.
Source: /opt/valorbrain/src/tool-catalog.ts. New tokens default to the agent toolset.
85 tools in the catalog (canonical + aliases + deprecated). This is the one tool count the docs publish; other pages link here.
agent
memory_retrieve· RESTPOST /search· top tool, 63% share with the next fourmemory_recent· RESTGET /api/v1/memory/team-activity· FB-0095: author+recency retrieval — 'what did agent X do recently'; topic search can't answer author questionsmemory_prepare· RESTPOST /api/v1/memory/prepareworking_context· cheapest session-start orientation; covers what profile served — profile and the scratchpad slice retired 2026-09-29 (ClawMem-era, 0 customer calls in 60 days)memory_grep· exact-match lookups (ids, values, dates)get· absorbs multi_get via paths[] in WS3multi_get· merge into get (WS3)keyed_facts_as_of· temporal fact snapshotsmemory_draft· ChatGPT profile only: HTTP signed, non-persistent draft; requires user identity and write scopememory_store· RESTPOST /api/v1/memory/storememory_used· quality feedback loop — skill must require itupsert_keyed_fact· RESTPOST /api/v1/keyed-facts· action=proposals|approve|decline: fact proposals decided in the conversation; approve/decline need a person-bound token + human_order (REST twin: /api/v1/keyed-facts/proposals)assert_authority_correction· correctability priorityauthority_restore_demotion· FB-0092/0093 — undo prose demotion (restore confidence, unhide, cancel pending work) by fact_key/demotion_work_idrecord_lessonmemory_curate· canonical pin/snooze/unpin/unsnooze (WS3); aliases memory_pin/memory_snooze removed 2026-09-28 (VAL-104) — zero external callersmemory_forget· RESTPOST /documents/:id/forget· 294 REST calls — never judge by MCP alone; stays standalone (reversibility boundary)append_entity_card· KG write path agents actually usediary· canonical read/write (WS3); write action is write-scope gated per action; aliases diary_read/diary_write removed 2026-09-28 (VAL-104)task_state· WS5 flagship: goal/progress + J-Space ledger (checkpoint exige verificador+cobertura; open exige settled_by; Next nunca vazio); ledger persiste em keyed_fact ledger:{session}; aliases set_goal/report_progress removed 2026-09-28 (VAL-104); scratchpad (and its REST twin) retired 2026-09-29 — working state lives here; goalstatus=completecloses it: it leaves__goals__andread(VAL-230)commitments· RESTGET/POST /api/v1/commitments· registro de compromissos (ADR-087, migration 0272): promessas a quem é de fora da empresa; record por key, uma linha por promessa; close exige motivo (CHECK no banco); list open/due/overdue/closed/all; memory_prepare avisa os atrasados, os que vencem em 7 dias e os em_riscoteam_briefingteam_handoff· WS3: gained action create|consume (default create); both verbs write-scoped as before; alias team_handoff_consume removed 2026-09-28 (VAL-104)team_inboxteam_messageteam_notify_humanteam_rosterwhoami· http-onlymemory_health· RESTGET /api/v1/memory/health· http-onlyacl_me· RESTGET /api/v1/acl/me· ADR-031 A4: domínios efetivos do chamador (união user+role+agent) com a fonte de cada grant — o trace real do simulador de governançalist_lessonsepisodes· canonical list/get (WS3); moved agent←graph 2026-08-17 — episodic memory is core product, not curation; aliases list_memory_episodes/get_memory_episode removed 2026-09-28 (VAL-104)notifications· canonical check/mark_read (WS3); mark_read is write-scope gated per action; aliases notifications_check/notifications_mark_read removed 2026-09-28 (VAL-104)
graph
timeline· RESTGET /timeline/:id· retrieve auto-routes last-session; extended surfacefind_similar· RESTGET /graph/similar/:id· retrieve auto-routes related; extendedripple_rag_retrieve·beta· VB-3203 experimentdecisions· canonical record/relate/trace/similar/list (WS3); record/relate write-scope gated per action; auto-populated by decision-extractor hook (119 calls)record_decision·alias· →decisions· RESTPOST /api/v1/decisionslist_decisions·alias· →decisions· RESTGET /api/v1/decisionstrace_decision_chain·alias· →decisions· RESTGET /api/v1/decisions/chainfind_similar_decisions·alias· →decisions· RESTGET /api/v1/decisions/similaradd_decision_relation·alias· →decisions· RESTPOST /api/v1/decisions/relationskg_query· REST/api/v1/kg/explorekg_explain· Datalog proof tree via pg_ripple.justify — reference docs/reference/kg-explain.md; proof_type: inferred | base (mirror-confirmed asserted) | absent | unverified | unknown (VAL-187). Derivation recording exists only in the pg_ripple semi-naive fixpoint (infer_with_stats/infer_goal/infer_wfs/remove_rule recalc) — the write path plain infer does not record, so runtime-derived facts answer unverifiedkg_entity_resolve_reportkg_quarantine· canonical list/approve/reject (WS3); approve/reject write-scope gated per actionlist_kg_quarantine·alias· →kg_quarantine· REST/api/v1/kg/quarantineapprove_kg_quarantine·alias· →kg_quarantinereject_kg_quarantine·alias· →kg_quarantineentity_cards· canonical: lista cards + curadoria de apelido (propose/merge/reject — o tenant decide); alias list_entity_cards removed 2026-09-28 (VAL-104)find_causal_links· retrieve auto-routes why→causalmemory_evolution_status· curation nicheprovenance· canonical trace/export (WS3); exportformatacceptsturtle(default) orjsonld(PROV-JSON-LD)trace_lineage·alias· →provenance· REST/api/v1/provenance/lineageexport_provenance·alias· →provenance· REST/api/v1/provenanceconflicts· canonical detect/list/resolve (WS3); resolve write-scope gated per actiondetect_conflicts·alias· →conflicts· RESTPOST /api/v1/conflicts/detect· also auto-detected by consolidation ticklist_conflicts·alias· →conflicts· RESTGET /api/v1/conflictsresolve_conflict·alias· →conflicts· RESTPOST /api/v1/conflicts/resolvememory_arcs· canonical create/list (WS3); create write-scope gated per action; kills the list_arcs≡list_memory_arcs duplicatecreate_memory_arc·alias· →memory_arcs· orphan; re-teach after task_state landslist_arcs·alias· →memory_arcs· DUPLICATE of list_memory_arcs — merge in WS3list_memory_arcs·alias· →memory_arcs
ops
lifecycle_status· RESTGET /lifecycle/status· MCP lifecycle_sweep retired 2026-09-29 (0 MCP calls in 60 days); the sweep stays on REST POST /lifecycle/sweep and the timerlifecycle_restore· RESTPOST /lifecycle/restore· SaaS restore button lives here (94 REST calls)reindex· vault_sync/list_vaults/beads_sync retired 2026-09-29 (ClawMem-era named vaults and Beads sync; near-zero use in 60 days)index_statsimport_docsexport_docsbuild_graphsoperations· canonical status/list/cancel (WS3); cancel keeps write scope via alias list until window closesoperation_status·alias· →operationsoperation_list·alias· →operationsoperation_cancel·alias· →operationsusage_reportharness_coverage· runtime delivery signal: MCP-active agents with zero ingestion — what file-level setup status cannot seefeedback· canonical submit/check (WS3); submit write-scope gated per action; alsoIn agent — contract item 5 mandates the defect loop on every agent connection (VAL-145)feedback_submit·alias· →feedbackfeedback_check·alias· →feedbacksecrets· cofre: memória guarda referência secret://<nome>, valor só sai por get auditado; escopo fail-closed secrets:read/secrets:writemental_models·beta· resposta permanente materializada por pergunta recorrente (port Hindsight): memory_prepare serve o answer com SELECT, tick reescreve em background por watermark de dados; flag mental_models (default off)acl_grants· RESTGET/POST/DELETE /api/v1/acl/grants· ADR-031 A4: admin CRUD de grants do source ACL (user|role|agent → domínio, reason obrigatória, validade temporal); escopo fail-closed acl_grants:read/acl_grants:write; mutação vai ao mutation_auditread_log· RESTGET /api/v1/read-log· ADR-031 B3: trilha 'quem leu, qual versão' (1 linha por consulta; query só como hash — LGPD; docs_touched = pares hash+revisão); escopo fail-closed read_log:read; a própria consulta é auditada em mutation_auditlist_proposals·deprecated· http-only; memory_health already surfaces proposals — kill in WS3store·deprecated· http-only duplicate of memory_store — kill in WS3