Skip to main content
Glama

Confirm Decision Record

confirm_decision
Destructive

Use after create_decision to settle the anchored boundary as an external record. Once confirmed, the agreed scope is fixed outside both parties' own logs. Confirm a pending decision: marks the anchored declaration as settled. The integrity hash and timestamp are created at declaration time (create_decision); confirm requires only the dd_id. Call this after the action described in the DD has been executed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dd_idYesThe DD ID to confirm
auth_tokenNoYour DA agent auth token. Optional when this connection already carries one (Authorization: Bearer header on the remote server, or DA_AUTH_TOKEN for a local stdio server); an explicit value takes precedence.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / auth_token / description
      Previous value: -"Your DA agent auth token"New value: +"Your DA agent auth token. Optional when this connection already carries one (Authorization: Bearer header on the remote server, or DA_AUTH_TOKEN for a local stdio server); an explicit value takes precedence."
    • changedInput schema / required
      Previous value: -[
      -  "auth_token",
      -  "dd_id"
      -]New value: +[
      +  "dd_id"
      +]
  2. Changed1 schema field changed
    • removedInput schema / properties / transaction_id
      Removed value: -{
      -  "description": "x402 payment transaction ID (required for non-trial agents)",
      -  "type": "string"
      -}
  3. Changed1 schema field changed
    • addedInput schema / properties / transaction_id
      Added value: +{
      +  "description": "x402 payment transaction ID (required for non-trial agents)",
      +  "type": "string"
      +}
  4. Added

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag readOnlyHint=false and destructiveHint=true, and the description meaningfully builds on that by explaining the state change ('the agreed scope is fixed outside both parties' own logs') and clarifying that the integrity hash and timestamp were created at declaration time. It does not state whether confirmation is reversible, which is the one notable gap for a destructive-marked tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core guidance is front-loaded, but the central idea is restated three times ('settle the anchored boundary as an external record', 'fixed outside both parties' own logs', 'marks the anchored declaration as settled'), which adds length without adding information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter mutation tool with no output schema, the description covers prerequisites (create_decision, executed action), the single required input, and the resulting state change. An agent has enough to call it correctly; only post-confirmation behavior/undone state is left unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds genuine value beyond the schema by clarifying that 'confirm requires only the dd_id' and that the hash/timestamp are not passed here. That resolves potential ambiguity about whether the caller must supply integrity data.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource ('Confirm a pending decision: marks the anchored declaration as settled') and explicitly names the sibling it follows ('Use after create_decision'). The heavy proprietary jargon ('anchored boundary', 'anchored declaration') slightly blurs the plain purpose, but an agent can still distinguish it from create_decision and get_decision.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear sequencing guidance: 'Use after create_decision' and 'Call this after the action described in the DD has been executed.' That routing context is strong, though it stops short of stating when *not* to use it (e.g., a decision already confirmed, or an unexecuted action).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.