MCP tool

report_run

Report a completed sweep to immut

WRITEcalls /api/v1/agent/runs

Log one completed sweep (a pass over the sources looking for files to protect). Call this at the END OF EVERY sweep, including a sweep that protected nothing or stopped early — immut uses these to notice when an agent stops reporting, so a skipped call looks the same as a broken agent. Idempotent on runId: re-posting the same runId updates that run rather than creating a second. Use the SAME runId you passed to every protect call in this sweep — that is what links the run to the files it protected. OPTIONAL, AND ONLY WITH THE HUMAN'S EXPLICIT YES: decisions lists the files you decided NOT to protect and why. Sending it means immut stores the names of documents it was never asked to protect, and a filename alone can be sensitive, so ask first and default to not sending. On a no, omit the field entirely — an empty array is NOT the same as absent: immut reads an empty array as "the agent looked and excluded nothing", which is a claim you did not make.

  • Access: write
  • Calls: /api/v1/agent/runs

Arguments

NameTypeRequiredDescription
runIdstringyesUnique id for this run (stable across retries of the same run)
workspacestringnoWorkspace id this sweep covered
modeinteractive | unattendednointeractive = a human was present; unattended = started by a schedule
objectivestringnoObjective id only, e.g. "fundraise" (never a label or notes)
triggerstringnoWhat started this run, e.g. "host scheduled task"
startedAtstringnoISO-8601
finishedAtstringnoISO-8601
countsstringnoWhat the sweep did. waiting = files awaiting a human decision
coveragestringnoHow much of what was found actually got read
connectorsReachedstringnoSources successfully read this run
connectorsUnreachablestringnoSources that could not be read this run
networktestnet | mainnet | mixed | noneno
reportFilenamestringnoName of the run report written alongside
decisionsstringnoONLY with the human's explicit yes. Per-file decisions, INCLUDING files you did not protect. Put the ones that produced no document first — a protected file already carries its reasoning on the document itself. Max 500 stored per run.
unreadableGroupsstringnoFiles you could not open, grouped by folder and type. NEVER include a filename here — this field is metadata only and is not covered by the decisions consent. Max 200 groups.

Generated from the immut MCP server, 28 tools. Machine-readable: this page as markdown · everything in one file · tool contract