Skip to main content
Glama
declanbx
by declanbx

changes

Track what changed in your Inkscape document since your last check: added, removed, moved, or resized objects. Reports the current revision and sets a new baseline.

Instructions

What the user changed since you last looked or edited (or since since_revision): objects added, removed, moved or resized (exact, cheap). Reports the current revision and makes it the new baseline. deep=True also re-reads the document to report text and style edits (slow on posters).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
deepNo
since_revisionNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the side effect that the current revision becomes the new baseline, that the shallow path is exact and cheap, and that deep=True is slow and re-reads the document. It omits auth/permission needs and output format, but the output schema covers returns.

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?

Two sentences, front-loaded with the core behavior and what is reported, then the deep variant and its cost. Minor awkwardness in 'since you last looked or edited (or since since_revision)' but no wasted sentences.

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

Completeness5/5

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

For a 2-optional-param tool with an output schema, the description covers the baseline semantics, the destructive-ish baseline reset side effect, and the performance tradeoff of deep mode. Nothing an agent needs to call it correctly or interpret it safely is missing.

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 description coverage is 0%, so the description must explain both parameters, and it does: deep=True re-reads the document to report text and style edits (noting the poster slowness), and since_revision sets the baseline revision. Both optional params gain meaning beyond the bare types in the schema.

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 operation on the document: reporting objects added, removed, moved or resized, and with deep=True text and style edits too. It clearly conveys what is returned and relative to which baseline, so an agent can distinguish it from sibling tools like 'history' or 'status'. It stops short of explicitly naming an alternative sibling, so it is clear rather than maximally differentiating.

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 states the default baseline (since you last looked or edited) and how to override it via since_revision, plus when to reach for deep=True and its cost (slow on posters). That is clear contextual guidance for choosing modes. It gives no explicit when-not-to-use or named alternative tool.

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