Skip to main content
Glama

analyze_image

Analyze an image, region, or layer to extract dominant palettes, mean color, brightness, contrast, sharpness, coverage, bounds, and mean-color grids for judging and matching colors and lighting.

Instructions

Numbers about the image (or a region / one layer): dominant palette with shares, mean colour, brightness, contrast, sharpness (0..1), coverage of non-transparent pixels, content bounds, and a grid x grid layout of mean colours (top row first). Use it to judge and match colours and lighting.

Input Schema

NameRequiredDescriptionDefault
xNo
yNo
gridNo
layerNo
widthNo
heightNo
palette_sizeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

B3.4/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. It usefully discloses that analysis can target the whole image, a region, or a single layer, and it describes the shape of the returned metrics. It does not state that the operation is read-only/non-mutating, nor mention cost or performance characteristics of the pixel-heavy metrics.

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 returned content, then the usage hint. Parentheticals ('or a region / one layer', 'top row first') each add real information rather than padding. It is dense but no sentence is wasted.

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 7-parameter, unannotated, no-output-schema tool, the description does substantial work by enumerating the returned metrics. Gaps remain around the coordinate space for x/y/width/height, default behavior when no region or layer is given, and whether region and layer can be combined — details an agent needs to call it correctly.

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 0% and parameter titles are bare tokens (X, Y, width, height, grid, layer, palette_size). The description partially compensates: 'a region' implies x/y/width/height, 'one layer' maps to layer, '(top row first)' explains grid ordering, and 'dominant palette with shares' relates to palette_size. However, it never says x/y are the region origin, how width/height default when omitted, what grid=3 vs other values means, or how region and layer interact.

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 resource and enumerates the measurements returned (dominant palette with shares, mean colour, brightness, contrast, sharpness, non-transparent coverage, content bounds, grid of mean colours), which makes it clearly distinct from siblings like sample_color or palette_colors. It never names those siblings explicitly, so differentiation is inferred from the output list 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 Guidelines3/5

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

The final sentence gives one positive usage condition: 'Use it to judge and match colours and lighting.' There is no guidance on when to prefer sample_color, palette_colors, read_pixels, or ask_vision instead, and no prerequisites or exclusions are stated.

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