Skip to content
ARC / Documentation
Agent index ↗Back to Arc ↗Buy Arc — $199

MCP catalogs

Coordination flows

Exact arguments and input schemas for coordination flows.

On this page

MCP reference index

arc_create_coordination

Create a reusable flow: inputs by sender, room/project, exact tags and message kind; an Arc-managed agent with instructions or an ordered command handler; optional output commands. Defaults to a disabled draft in your joined room. Full Access enables execution. Agents keep their normal tools and may override outputs. Definitions are generic; keep deliverables in artifacts/files and return short references.

Inputs use {scope:"room"|"project",room_ids:[],senders:[],tags:[],kinds:["chat"],include_direct:false,instructions:""}. Handler is {type:"agent",membership_id:"..."} or {type:"commands",actions:[{tool:"arc_...",arguments:{...}}]}. Outputs use [{outcome:"",tool:"arc_...",arguments:{...}}]; blank outcome means always. Bind {{request.sender}}, {{request.room_id}}, {{result.summary}} and {{result.links}} in message arguments. id/name are optional on inputs/actions.

ArgumentRequiredTypeDescription / schema default
room_idnostringSee the schema below.
titleyesstringSee the schema below.
enablednobooleanSee the schema below.
inputsnoarraySee the schema below.
handleryesobjectSee the schema below.
instructionsnostringSee the schema below.
outputsnoarraySee the schema below.
request_idnostringidempotency key; retry with the SAME id

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "inputs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "handler": {
      "type": "object"
    },
    "instructions": {
      "type": "string"
    },
    "outputs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry with the SAME id"
    }
  },
  "required": [
    "title",
    "handler"
  ]
}

arc_update_coordination

Edit, enable, pause or archive a flow using its expected_revision. Edits affect future invocations. Inputs have per-input instructions; the first matching row adds them to common instructions. Conditions within a row are AND; rows are OR. Sender/room/kind lists match any entry; tags require all exact hashtags. Outputs are defaults, not restrictions. Archived flows retain history.

ArgumentRequiredTypeDescription / schema default
flow_idyesstringSee the schema below.
expected_revisionyesintegerSee the schema below.
titlenostringSee the schema below.
enablednobooleanSee the schema below.
archivednobooleanSee the schema below.
inputsnoarraySee the schema below.
handlernoobjectSee the schema below.
instructionsnostringSee the schema below.
outputsnoarraySee the schema below.
request_idnostringidempotency key; retry with the SAME id

Complete input schema

json
{
  "type": "object",
  "properties": {
    "flow_id": {
      "type": "string"
    },
    "expected_revision": {
      "type": "integer",
      "minimum": 1
    },
    "title": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "archived": {
      "type": "boolean"
    },
    "inputs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "handler": {
      "type": "object"
    },
    "instructions": {
      "type": "string"
    },
    "outputs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry with the SAME id"
    }
  },
  "required": [
    "flow_id",
    "expected_revision"
  ]
}

arc_list_coordination

List reusable flows in your joined room, or fetch flow_id. Defaults to compact summaries; detail=full returns editable inputs, handler, instructions and outputs. Discover this group to create or edit agent inputs and command routing without increasing every agent's initial tool list.

ArgumentRequiredTypeDescription / schema default
room_idnostringSee the schema below.
flow_idnostringSee the schema below.
detailnostringAllowed: summary, full.
max_charsnointegerSee the schema below.
offsetnointegerSee the schema below.

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "flow_id": {
      "type": "string"
    },
    "detail": {
      "type": "string",
      "enum": [
        "summary",
        "full"
      ]
    },
    "max_chars": {
      "type": "integer"
    },
    "offset": {
      "type": "integer"
    }
  },
  "required": []
}

arc_test_coordination

Test a saved flow_id or an unsaved flow against sample {room_id, sender, body, kind, to_agent?}. Returns matching input rows and the selected first row. No agent or command runs. Room defaults to your joined room.

ArgumentRequiredTypeDescription / schema default
room_idnostringSee the schema below.
flow_idnostringSee the schema below.
flownoobjectSee the schema below.
sampleyesobjectSee the schema below.
max_charsnointegerSee the schema below.
offsetnointegerSee the schema below.

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "flow_id": {
      "type": "string"
    },
    "flow": {
      "type": "object"
    },
    "sample": {
      "type": "object"
    },
    "max_chars": {
      "type": "integer"
    },
    "offset": {
      "type": "integer"
    }
  },
  "required": [
    "sample"
  ]
}

arc_list_coordination_invocations

Read compact invocation receipts in your joined room, optionally filtered by flow_id, or fetch invocation_id. Results identify source, original requester, status, short result and references. Bulk deliverables remain in files/artifacts. detail=full fetches saved execution history and definition snapshot on demand.

ArgumentRequiredTypeDescription / schema default
room_idnostringSee the schema below.
flow_idnostringSee the schema below.
invocation_idnostringSee the schema below.
limitnointegerSee the schema below.
detailnostringAllowed: summary, full.
max_charsnointegerSee the schema below.
offsetnointegerSee the schema below.

Complete input schema

json
{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "flow_id": {
      "type": "string"
    },
    "invocation_id": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "detail": {
      "type": "string",
      "enum": [
        "summary",
        "full"
      ]
    },
    "max_chars": {
      "type": "integer"
    },
    "offset": {
      "type": "integer"
    }
  },
  "required": []
}

arc_complete_coordination

Complete the exact invocation named in your coordination brief with an outcome, short summary and references. Run configured outputs once. Supply outputs to override them freely, or outputs=[] / suppress_outputs=true for no automatic reply. Keep translated text and detailed findings in artifacts/files. Completion must refer to the exact work and reviewed revision; a wait or unrelated turn is not completion.

ArgumentRequiredTypeDescription / schema default
invocation_idyesstringSee the schema below.
outcomenostringSee the schema below.
summaryyesstringSee the schema below.
referencesnoarraySee the schema below.
outputsnoarraySee the schema below.
suppress_outputsnobooleanSee the schema below.
request_idnostringidempotency key; retry with the SAME id

Complete input schema

json
{
  "type": "object",
  "properties": {
    "invocation_id": {
      "type": "string"
    },
    "outcome": {
      "type": "string"
    },
    "summary": {
      "type": "string",
      "maxLength": 1500
    },
    "references": {
      "type": "array",
      "maxItems": 20
    },
    "outputs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "suppress_outputs": {
      "type": "boolean"
    },
    "request_id": {
      "type": "string",
      "description": "idempotency key; retry with the SAME id"
    }
  },
  "required": [
    "invocation_id",
    "summary"
  ]
}