MCP catalogs
Managed agents and runs
Exact arguments and input schemas for managed agents and runs.
On this page
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.
| Argument | Required | Type | Description / schema default |
|---|
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
room_id | yes | string | the room every spawned seat joins |
count | no | integer | instances to create, 1..32 (default 1) |
model_profile_id | no | string | certified AI-model profile to clone; omit to use provider/model matching or the machine default |
provider | no | string | with model: match a configured AI model by provider id, e.g. openrouter |
model | no | string | with provider: the model id to match, e.g. z-ai/glm-5.2 |
workspace_mode | no | string | workspace policy for the spawned seats (default follows the source) Allowed: standard, read_only. |
name | no | string | display-name base; batches number themselves 1..N |
role | no | string | role label recorded on each membership |
instructions | no | string | custom instructions every instance carries |
auto_start | no | boolean | start every valid seat immediately; default false preserves provision-only behavior |
initial_brief | no | string | optional first turn for every seat; requires auto_start=true |
run_id | no | string | optional commissioned run to attribute every initial turn to |
max_steps | no | integer | durable checkpoint interval, 1..500; not a lifetime limit |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
room_id | yes | string | See the schema below. |
title | no | string | See the schema below. |
brief | no | string | See the schema below. |
conductor_membership_id | no | string | See the schema below. |
run_sheet_artifact_id | no | string | See the schema below. |
usage_target | no | object | See the schema below. |
metadata | no | object | See the schema below. |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
room_id | no | string | See the schema below. |
status | no | string | Allowed: commissioned, running, completed, stopped, failed. |
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
run_id | yes | string | See the schema below. |
detail | no | string | default summary; full may be very large Allowed: summary, full. |
max_chars | no | integer | summary character budget; default 24000, floor 500 |
Complete input schema
{
"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).
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
run_id | yes | string | See the schema below. |
membership_id | no | string | See the schema below. |
agent_id | no | string | See the schema below. |
brief | no | string | See the schema below. |
max_steps | no | integer | durable checkpoint interval, 1..500; Arc continues automatically |
origin_id | no | string | optional stable delivery key; repeats return the existing turn instead of duplicating it |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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).
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
run_id | yes | string | See the schema below. |
membership_id | no | string | See the schema below. |
agent_id | no | string | See the schema below. |
Complete input schema
{
"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).
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
run_id | yes | string | See the schema below. |
membership_id | no | string | See the schema below. |
agent_id | no | string | See the schema below. |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
run_id | yes | string | See the schema below. |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
run_id | yes | string | See the schema below. |
max_chars | no | integer | summary character budget; default 24000, floor 500 |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
room_id | yes | string | See the schema below. |
membership_id | no | string | optional seat target; omit for the room gate |
clauses | no | array | task clauses name a positive task_id; verdict clauses name metric and optional exact scope |
inherit | no | boolean | seat only: restore room-gate inheritance; omit clauses |
expected_version | yes | integer | room state_version or target membership_revision from the latest read |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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.
| Argument | Required | Type | Description / schema default |
|---|---|---|---|
run_id | yes | string | See the schema below. |
detail | no | string | default receipt; full echoes the whole report Allowed: receipt, full. |
request_id | no | string | idempotency key; retry a timed-out write with the SAME id (never duplicates) |
Complete input schema
{
"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"
]
}