Skip to main content
Glama
sprite-agent-mcp

sprite-agent-mcp

Draw with operations

sprite_draw_ops

Apply ordered integer-pixel drawing operations—rectangles, lines, circles, fills, gradients, dithering, shading, outlines, text, and transforms—to a selected sprite layer or frame.

Instructions

Vector-ish pixel ops, all snapped to integer pixels. Ops: clear, pixel(s), rect, line, circle/ellipse, polygon, fill (flood), dither, gradient, noise, scatter, replace, outline, shade, mirror, shift, text (3×5 font), crop. Example ops:[{op:"rect",x:4,y:4,w:8,h:8,color:"base"},{op:"shade",light:"nw"},{op:"outline",color:"outline",mode:"selective"}]. The "shade" op adds hue-shifted light/shadow; "outline" adds a real silhouette outline.

Input Schema

NameRequiredDescriptionDefault
opsYesOrdered list of draw operations. Each needs an `op` field; colors accept hex/roles/indices.
frameNoFrame index (0-based), frame id or frame name. Omit = active frame.
layerNoLayer name. Omit = topmost layer.
projectNoProject id. Omit to use the active project.
allFramesNoApply the same ops to every frame (default false).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose useful traits: ops are snapped to integer pixels, "shade" adds hue-shifted light/shadow, and "outline" produces a real silhouette outline. It says nothing about whether drawing overwrites existing pixels, whether it is undoable, or what permissions/state it requires on the target project.

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?

Front-loaded with the core concept, then the op list, then the example, then two clarifying sentences on ambiguous ops – logical ordering with little waste. The 18-item op enumeration is a single dense sentence, which is justified by the opacity of the `ops` parameter.

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

Completeness3/5

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

For a 5-param mutation tool with no annotations and no output schema, the definition explains the operation vocabulary well but omits the effect on existing artwork, frame/layer targeting semantics beyond schema hints, and any result information. Adequate to invoke the tool, incomplete for predicting consequences.

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% for the top-level params, so baseline is 3, but the description goes further for the opaque `ops` array (schema declares only additionalProperties: {}): it enumerates 18 op names and supplies a concrete three-op example with field names. It does not document the per-op field vocabulary (x/y/w/h/color/mode) systematically, so it stops short of 5.

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?

"Vector-ish pixel ops, all snapped to integer pixels" plus an enumerated op list states a specific verb (draw) and resource (pixel ops) clearly. It never names a sibling, so an agent must infer the boundary with sprite_draw_grid, sprite_generate, or sprite_enhance on its own.

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?

There is no when-to-use or when-not-to-use guidance at all: nothing says when to reach for this versus sprite_draw_grid (grid drawing) or sprite_generate (generative art), both of which are plausible alternatives in the sibling list. Usage is only implied by the op enumeration.

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