Skip to main content
Glama

inkbolt_session_diff_preview

Read-onlyIdempotent

Compare two saved session revisions to preview aligned before/after PNGs, change masks, RGBA deltas, structural differences, and per-side coordinate maps for review.

Instructions

Review immutable revisions with aligned before/after PNGs, a change mask, exact and thresholded RGBA8 deltas, source hashes, structural differences and per-side world coordinate maps. Common sRGB display view; output ICC profiles are recorded but not applied. Supports canvas, region, union-of-items and standalone artboard focus. Rejects fractional grid shifts rather than resampling. Read-only; session form captures both saved revisions in one transaction.

Input Schema

NameRequiredDescriptionDefault
controlNo
optionsNo
session_idYes
to_revisionYes
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.
from_revisionYes
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.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so safety is covered. The description goes beyond that with real behavioral facts: outputs use a common sRGB display view, output ICC profiles are recorded but not applied, and fractional grid shifts are rejected rather than resampled. These are exactly the non-obvious constraints an agent needs.

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

Conciseness4/5

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

Three sentences, no filler, and the artifact list is front-loaded before the behavioral caveats. It is dense to the point of being slightly packed, but every clause carries information and nothing is repeated from the schema or annotations.

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?

An output schema exists, so return values need no explanation, and annotations carry the safety profile. Given a fairly complex tool with nested focus options and 7 parameters, the description covers the sophisticated semantics (ICC handling, grid-shift rejection, focus modes) well; only the basic session/revision parameters and response_format are left implicit, which is a minor gap.

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 description coverage is only 29%, so the description does carry weight: it enumerates the focus variants (canvas, region, union-of-items, standalone artboard) and explains the thresholded delta concept. But it says nothing about session_id, from_revision, to_revision, response_format, or the control/timeout parameters, leaving a third of the surface undocumented in both places.

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 names a specific verb (review) and resource (immutable revisions) and enumerates the concrete artifacts produced (aligned before/after PNGs, change mask, RGBA8 deltas, source hashes, structural diffs, coordinate maps). An agent can tell exactly what it gets back. However, it never names or contrasts with the very close sibling inkbolt_session_diff, so differentiation is implied rather than stated.

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

Usage Guidelines2/5

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

The description lists capabilities (canvas/region/items/artboard focus) but gives no when-to-use guidance, no conditions that select this over inkbolt_session_diff or inkbolt_session_apply, and no exclusions. A single clause ('session form captures both saved revisions in one transaction') gestures at scope but stops short of routing guidance.

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