Skip to main content
Glama
gimp-mcp-studio
by Onru-Labs

fill_rectangle

Fills a specified rectangular area with a solid color using x/y coordinates, width, height, and color, with optional target layer and image index.

Instructions

Fill a rectangular region with a solid color.

Parameters:

  • x, y: Top-left corner

  • width, height: Rectangle dimensions

  • color: Fill color (CSS name, hex, or rgb() string)

  • layer_name: Target layer; defaults to active layer

  • image_index: Target image index (default 0)

Returns status dict.

Input Schema

NameRequiredDescriptionDefault
xYes
yYes
colorYes
widthYes
heightYes
layer_nameNo
image_indexNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are supplied, so the description carries the full burden. It reveals only that the call returns a "status dict" and that layer_name and image_index default to the active layer and 0. It omits that this is an in-place canvas mutation, whether prior pixel content is destroyed, whether it respects the current selection, and whether the change is undoable.

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?

A single front-loaded purpose sentence followed by a tight bulleted parameter list, with no filler. The return value is noted in one line. Structure is appropriate for a tool with seven parameters and a 0% schema description coverage.

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 parameter-heavy mutation tool with no annotations and no output schema, all parameters are at least defined, which is the minimum needed to call it correctly. However, interaction with selections, layer targeting semantics, and failure modes are absent, leaving an agent unable to predict the effect on the document.

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%, and the description compensates well by documenting all seven parameters: x/y as the top-left corner, width/height as dimensions, color accepted as CSS name, hex, or rgb() string, plus the defaults for layer_name and image_index. It still does not state the unit or coordinate space for x/y/width/height, nor whether color supports alpha.

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 first line states a specific verb and resource: "Fill a rectangular region with a solid color." That separates it from fill_layer, fill_selection, and fill_ellipse by naming both the shape and the fill type. It stops short of explicitly naming those siblings, so the differentiation is implicit rather than spelled out.

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 guidance on when to use this versus fill_selection, fill_layer, fill_ellipse, or draw_rectangle, all of which are close siblings in this toolset. The description never states prerequisites either, such as whether an image must be open, whether an active selection alters the fill region, or how this interacts with the active layer.

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