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

fill_selection

Fill the current selection with a CSS color, hex value, rgb() string, or a foreground, background, or transparent fill type on a chosen layer.

Instructions

Fill the current selection with a color or fill type.

Parameters:

  • color: Fill color as CSS name, hex, or rgb() string (used when fill_type is omitted)

  • fill_type: Fill type override: "foreground", "background", or "transparent"

  • image_index: Target image index (default 0)

  • layer_name: Target layer; defaults to active layer

Returns status dict.

Input Schema

NameRequiredDescriptionDefault
colorNo
fill_typeNo
layer_nameNo
image_indexNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/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 behavioral burden and mostly does not meet it. It does not say what happens when no selection exists, whether the fill is destructive/undoable, whether it respects layer locks or transparency, or what the 'status dict' contains beyond its name.

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?

One-sentence purpose followed by a compact parameter list, each entry a single line. Front-loaded and free of filler; the only weakness is that the 'Returns status dict.' line adds almost nothing.

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 four-parameter mutation tool with no annotations and no output schema, the description covers the inputs well but leaves out failure modes and side effects an agent needs. It is adequate to attempt a call but not sufficient to predict what happens in edge cases like no active selection or a transparent fill on a non-alpha layer.

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 parameter block is doing real work: it gives accepted color formats (CSS name, hex, rgb()), enumerates the fill_type values 'foreground'/'background'/'transparent' that the bare string schema lacks, and states defaults (image_index 0, layer_name = active layer). Only the interaction between color and fill_type is left slightly fuzzy.

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?

Names a specific verb plus resource ('Fill the current selection') and clarifies the fill can be a color or a fill type. An agent can distinguish it from fill_layer and fill_rectangle by the 'current selection' scope, though the description never explicitly contrasts with those siblings.

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?

Usage is only implied: 'current selection' tells the agent a selection must exist first, and the color/fill_type wording hints at two modes. There is no explicit when-to-use versus fill_layer, fill_rectangle, or gradient_fill, and no stated precondition about creating a selection first.

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