trigger.inspect

Coming July 20, 2026

Inspect a single dispatched trigger by id.

CategoryTrigger
JSON-RPCtools/call
EndpointPOST /mcp

Description

Returns the full trigger envelope as dispatched (minus the HMAC signature), every delivery attempt with response code + latency, the callback (`trigger.complete` / `trigger.reverse`) if recorded, and the linked ledger entry id.

Input schema

FieldTypeRequiredDescription
trigger_idstringyesTrigger to inspect.

Output shape

typescript
{
  trigger: {
    trigger_id: string;
    decision_id: string;
    action_class: string;
    mode: "act" | "notify_after" | "ask" | "test";
    counterparty?: { id: string; display_name: string };
    payload: Record<string, unknown>;
    reasoning: string;
    reversal: { path: string };
    expires_at: string;
    schema_version: string;
  };
  deliveries: Array<{
    attempt: number;
    dispatched_at: string;
    response_status?: number;
    response_latency_ms?: number;
    error?: string;
  }>;
  callback?: {
    kind: "complete" | "reverse";
    outcome: "executed" | "approved" | "rejected" | "deferred" | "reversed";
    received_at: string;
    external_ref?: string;
  };
  ledger_entry_id?: string;
}

Example call

JSON-RPC tools/call request body (omit the JSON-RPC envelope when using an SDK; the SDK adds it for you):

jsontools/call params
{
  "name": "trigger.inspect",
  "arguments": { "trigger_id": "trg_01HXP9DLQ" }
}

Example response

Tool results are always wrapped as content[0].text with a stringified JSON body. The shape below is what you get back from JSON.parse(result.content[0].text):

jsonparsed result body
{
  "trigger": {
    "trigger_id": "trg_01HXP9DLQ",
    "decision_id": "dec_01HXP9COMM",
    "action_class": "communicate",
    "mode": "ask",
    "counterparty": { "id": "entity_01HXSARAH", "display_name": "Sarah Chen" },
    "payload": { "what": "...", "why": "..." },
    "reasoning": "Trust gate L2 + rule R-12 fired",
    "reversal": { "path": "trigger.reverse with reason" },
    "expires_at": "2026-05-28T14:31:00Z",
    "schema_version": "2026-07-20"
  },
  "deliveries": [
    { "attempt": 1, "dispatched_at": "2026-05-27T14:31:00Z", "response_status": 502, "response_latency_ms": 1820, "error": "upstream gateway" }
  ],
  "ledger_entry_id": "led_01HXP9TRG"
}

Errors this tool can return

CodeMeaning
invalid_argumentsTool input failed Zod validation.
unauthorizedMissing or invalid bearer token.

See the full error catalog for resolution steps on each code, plus the standard transport-layer responses (401, 429).

Notes