Skip to main content
Glama

inkbolt_session_apply_proposal

DestructiveIdempotent

Commit a reviewed dry-run proposal only if revision, action, and before/after content still match, preserving atomic history and durable retry receipts.

Instructions

Commit a reviewed dry-run proposal only if revision, action and before/after content still match. Preserves atomic history, resource checks and durable retry receipts; no source or output is overwritten.

Input Schema

NameRequiredDescriptionDefault
actionYes
controlNo
proposalYes
session_rootNoRuntime path relative to the selected workspace, or an absolute path inside it. Omitted session, receipt, job, image/font store and output roots use documented workspace defaults; explicit null retains optional-root semantics.
response_modeNoCompact returns pinned document/receipt references and summaries, omitting snapshot pixels, receipt changes and the snapshot list. Full preserves the original response. Presentation does not change durable retry identity.full
response_formatNoJSON/Markdown include a metadata envelope in text. Structured/preview use summary text. All formats send PNG bytes once with payload references.json

Output Schema

NameRequiredDescriptionDefault
okYes
errorNo
resultNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Goes beyond the annotations by disclosing the conditional commit semantics and that atomic history, resource checks and durable retry receipts are preserved, plus the assurance that no source or output is overwritten. This meaningfully qualifies the destructiveHint=true and idempotentHint=true flags with what actually gets protected.

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

Conciseness5/5

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

Two dense sentences with the verb and the guard condition front-loaded, followed by the preserved invariants. Every clause carries information and nothing is restated from the schema.

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?

With an output schema present and annotations covering the safety profile, the description only needs to explain the conditional commit and invariants, which it does. The main remaining gap is that it does not explicitly distinguish this tool's role from inkbolt_session_apply.

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

Parameters3/5

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

Schema coverage is 50% and the description maps its matching semantics onto the proposal fields (revision, action, before/after content), which adds real meaning for expected_revision and the state hashes. It says nothing about control, session_root, response_mode or response_format, so baseline 3 is appropriate.

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?

States a specific verb (commit) and resource (reviewed dry-run proposal) plus the guard condition (revision, action, before/after content must still match). This differentiates it from the sibling inkbolt_session_apply, which takes an action directly rather than a proposal. It stops short of naming that sibling explicitly, so it falls just under a 5.

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

Usage Guidelines3/5

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

The phrase 'reviewed dry-run proposal' implies the workflow (dry_run first, then apply_proposal) and the compare-before-commit condition tells the agent when the call will succeed. However, no alternative tool is named and no explicit when-not-to-use guidance is given, leaving routing to inference.

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