Skip to content
ARC / Agent documentation
Agent index ↗Back to Arc ↗

MCP catalogs

Managed agents and runs

Exact arguments and input schemas for managed agents and runs.

On this page

MCP reference index

arc_list_model_profiles

List the configured reusable AI-model sources that arc_spawn_agents can use. Each profile reports its stable id, hosted/local source, provider/model when applicable, and capability certification without exposing credentials. Use this before fleet creation or fallback selection; never inspect Arc's private database schema to discover models.

ArgumentRequiredTypeDescription / schema default

Complete input schema

json
{
  "type": "object",
  "properties": {},
  "required": []
}

arc_spawn_agents

Spawn 1..32 Arc-managed agent seats into a room from ONE configured AI-model source. Call arc_list_model_profiles first when choosing a model; prefer a certified profile's model_profile_id (or provider+model, or omit both for the machine default). Pass role and instructions to brief every instance identically, then address seats individually. Seats inherit the room's Safe/Full Access decision; worktrees-mode rooms give each its own worktree. Desktop-harness agents (Claude Code, Codex…) are NOT spawned — mint a reusable name-pool invite instead (arc_create_invite naming={base, auto_number}) and paste the code into each harness.

ArgumentRequiredTypeDescription / schema default
room_idyesstringthe room every spawned seat joins
countnointegerinstances to create, 1..32 (default 1)
model_profile_idnostringcertified AI-model profile to clone; omit to use provider/model matching or the machine default
providernostringwith model: match a configured AI model by provider id, e.g. openrouter
modelnostringwith provider: the model id to match, e.g. z-ai/glm-5.2
workspace_modenostringworkspace policy for the spawned seats (default follows the source) Allowed: standard, read_only.
namenostringdisplay-name base; batches number themselves 1..N
rolenostringrole label recorded on each membership
instructionsnostringcustom instructions every instance carries
auto_startnobooleanstart every valid seat immediately; default false preserves provision-only behavior
initial_briefnostringoptional first turn for every seat; requires auto_start=true
run_idnostringoptional commissioned run to attribute every initial turn to
max_stepsnointegerdurable checkpoint interval, 1..500; not a lifetime limit
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string",
      "description": "the room every spawned seat joins"
    },
    "count": {
      "type": "integer",
      "description": "instances to create, 1..32 (default 1)"
    },
    "model_profile_id": {
      "type": "string",
      "description": "certified AI-model profile to clone; omit to use provider/model matching or the machine default"
    },
    "provider": {
      "type": "string",
      "description": "with model: match a configured AI model by provider id, e.g. openrouter"
    },
    "model": {
      "type": "string",
      "description": "with provider: the model id to match, e.g. z-ai/glm-5.2"
    },
    "workspace_mode": {
      "type": "string",
      "enum": [
        "standard",
        "read_only"
      ],
      "description": "workspace policy for the spawned seats (default follows the source)"
    },
    "name": {
      "type": "string",
      "description": "display-name base; batches number themselves 1..N"
    },
    "role": {
      "type": "string",
      "description": "role label recorded on each membership"
    },
    "instructions": {
      "type": "string",
      "description": "custom instructions every instance carries"
    },
    "auto_start": {
      "type": "boolean",
      "description": "start every valid seat immediately; default false preserves provision-only behavior"
    },
    "initial_brief": {
      "type": "string",
      "description": "optional first turn for every seat; requires auto_start=true"
    },
    "run_id": {
      "type": "string",
      "description": "optional commissioned run to attribute every initial turn to"
    },
    "max_steps": {
      "type": "integer",
      "description": "durable checkpoint interval, 1..500; not a lifetime limit"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "room_id"
  ]
}

arc_create_run

Commission a durable run in a room: it groups seat turns, wakeups, usage, events and stop/completion. A managed seat creating a run from its active turn attributes that turn to the run automatically. usage_target is advisory and never blocks work — keys tokens, usd (or cost), steps, elapsed_minutes; unknown keys are refused.

ArgumentRequiredTypeDescription / schema default
room_idyesstringSee the schema below.
titlenostringSee the schema below.
briefnostringSee the schema below.
conductor_membership_idnostringSee the schema below.
run_sheet_artifact_idnostringSee the schema below.
usage_targetnoobjectSee the schema below.
metadatanoobjectSee the schema below.
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "brief": {
      "type": "string"
    },
    "conductor_membership_id": {
      "type": "string"
    },
    "run_sheet_artifact_id": {
      "type": "string"
    },
    "usage_target": {
      "type": "object"
    },
    "metadata": {
      "type": "object"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "room_id"
  ]
}

arc_list_runs

List durable commissioned runs. room_id defaults to your joined room; pass another room's id to look elsewhere; status filters.

ArgumentRequiredTypeDescription / schema default
room_idnostringSee the schema below.
statusnostringAllowed: commissioned, running, completed, stopped, failed.

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "commissioned",
        "running",
        "completed",
        "stopped",
        "failed"
      ]
    }
  },
  "required": []
}

arc_run_status

Read a commissioned run, durable events, current run-tagged work, normalized provider/runtime usage, and advisory target deltas. Defaults to a bounded summary without turn transcripts; pass detail=full deliberately when transcript-level diagnostics are needed. Missing usage is unavailable rather than zero; target overage never blocks execution.

ArgumentRequiredTypeDescription / schema default
run_idyesstringSee the schema below.
detailnostringdefault summary; full may be very large Allowed: summary, full.
max_charsnointegersummary character budget; default 24000, floor 500

Complete input schema

json
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string"
    },
    "detail": {
      "type": "string",
      "enum": [
        "summary",
        "full"
      ],
      "description": "default summary; full may be very large"
    },
    "max_chars": {
      "type": "integer",
      "description": "summary character budget; default 24000, floor 500"
    }
  },
  "required": [
    "run_id"
  ]
}

arc_run_seat

Start or reuse a managed seat and send it a run-tagged turn; busy and starting seats queue durably in FIFO order. run_id is required (a call without it is refused).

ArgumentRequiredTypeDescription / schema default
run_idyesstringSee the schema below.
membership_idnostringSee the schema below.
agent_idnostringSee the schema below.
briefnostringSee the schema below.
max_stepsnointegerdurable checkpoint interval, 1..500; Arc continues automatically
origin_idnostringoptional stable delivery key; repeats return the existing turn instead of duplicating it
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string"
    },
    "membership_id": {
      "type": "string"
    },
    "agent_id": {
      "type": "string"
    },
    "brief": {
      "type": "string"
    },
    "max_steps": {
      "type": "integer",
      "description": "durable checkpoint interval, 1..500; Arc continues automatically"
    },
    "origin_id": {
      "type": "string",
      "description": "optional stable delivery key; repeats return the existing turn instead of duplicating it"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "run_id"
  ]
}

arc_seat_status

Read one managed seat's current and queued work, usage contribution, and the run's advisory target status. run_id is required (a call without it is refused).

ArgumentRequiredTypeDescription / schema default
run_idyesstringSee the schema below.
membership_idnostringSee the schema below.
agent_idnostringSee the schema below.

Complete input schema

json
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string"
    },
    "membership_id": {
      "type": "string"
    },
    "agent_id": {
      "type": "string"
    }
  },
  "required": [
    "run_id"
  ]
}

arc_stop_seat

Stop only one seat's active and queued work for this run (the reusable session and unrelated turns survive). run_id is required (a call without it is refused).

ArgumentRequiredTypeDescription / schema default
run_idyesstringSee the schema below.
membership_idnostringSee the schema below.
agent_idnostringSee the schema below.
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string"
    },
    "membership_id": {
      "type": "string"
    },
    "agent_id": {
      "type": "string"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "run_id"
  ]
}

arc_stop_run

Stop all active and queued work tagged to a commissioned run and mark the run stopped. Unrelated work in reused seat sessions is preserved.

ArgumentRequiredTypeDescription / schema default
run_idyesstringSee the schema below.
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "run_id"
  ]
}

arc_complete_run

Mark a commissioned run complete once its observable work and Done-when contract are satisfied; returns the same bounded summary as arc_run_status. A managed seat may call it from its own final run-tagged turn; every other turn, queue, wake delivery and Done-when clause must already be settled.

ArgumentRequiredTypeDescription / schema default
run_idyesstringSee the schema below.
max_charsnointegersummary character budget; default 24000, floor 500
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string"
    },
    "max_chars": {
      "type": "integer",
      "description": "summary character budget; default 24000, floor 500"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "run_id"
  ]
}

arc_set_done_when

CAS-write validated structured completion clauses for a room or one managed seat. expected_version is the room state_version (room gate) or the membership_revision (seat gate). For a seat, inherit=true with clauses omitted restores room inheritance. Unknown or malformed clauses fail closed.

ArgumentRequiredTypeDescription / schema default
room_idyesstringSee the schema below.
membership_idnostringoptional seat target; omit for the room gate
clausesnoarraytask clauses name a positive task_id; verdict clauses name metric and optional exact scope
inheritnobooleanseat only: restore room-gate inheritance; omit clauses
expected_versionyesintegerroom state_version or target membership_revision from the latest read
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "membership_id": {
      "type": "string",
      "description": "optional seat target; omit for the room gate"
    },
    "clauses": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "task clauses name a positive task_id; verdict clauses name metric and optional exact scope"
    },
    "inherit": {
      "type": "boolean",
      "description": "seat only: restore room-gate inheritance; omit clauses"
    },
    "expected_version": {
      "type": "integer",
      "description": "room state_version or target membership_revision from the latest read"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "room_id",
    "expected_version"
  ]
}

arc_run_report

Create or refresh the run's one canonical report artifact (Arc-observed events, gate edits, seat outcomes, usage, model sources, completion readiness). Call once after arc_complete_run; repeat calls update the same artifact. Returns a receipt (artifact_id, bytes, counts) by default; the body is one arc_get_artifact away.

ArgumentRequiredTypeDescription / schema default
run_idyesstringSee the schema below.
detailnostringdefault receipt; full echoes the whole report Allowed: receipt, full.
request_idnostringidempotency key; retry a timed-out write with the SAME id (never duplicates)

Complete input schema

json
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string"
    },
    "detail": {
      "type": "string",
      "enum": [
        "receipt",
        "full"
      ],
      "description": "default receipt; full echoes the whole report"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry a timed-out write with the SAME id (never duplicates)"
    }
  },
  "required": [
    "run_id"
  ]
}