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

denoise

Reduce noise in a GIMP layer using GEGL noise-reduction, with adjustable strength and optional image index or layer name.

Instructions

Reduce noise in a layer using GEGL noise-reduction.

Parameters:

  • strength: Noise reduction strength 0-100 (default 50)

  • image_index: Target image index (default 0)

  • layer_name: Layer to denoise; defaults to active layer

Returns status dict.

Input Schema

NameRequiredDescriptionDefault
strengthNo
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 discloses only that it uses GEGL and returns a status dict; it does not say whether pixels are modified destructively in place, whether the operation is undoable, whether it requires the GIMP server to be running, or what happens if the named layer is missing. For a mutation tool with zero annotation coverage this is a meaningful gap.

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 one-sentence purpose, followed by a compact, scannable parameter list and a return note. No filler sentences. Slightly under-structured only in that the parameter block lacks any note on error behavior, but nothing is redundant.

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 simple three-parameter filter with no output schema, the definition covers purpose, parameters, and return type, which is close to sufficient. However, with no annotations and no output schema, the missing behavioral details (in-place mutation, failure modes, undo) leave the agent guessing about side effects before invoking it.

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 compensate, and it largely does: it documents all three parameters with semantics the schema lacks — the 0-100 range and default 50 for strength, the default-0 target image index, and the fact that layer_name falls back to the active layer when omitted. Minor gap: no clarification of what image_index means when multiple images are open or what layer_name matching rules apply.

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 verb and resource ('Reduce noise in a layer') plus the underlying mechanism (GEGL noise-reduction), which distinguishes it from nearby siblings like sharpen, blur, and especially apply_noise (which adds rather than removes noise). It stops short of explicitly contrasting itself with gegl_apply_filter or apply_gaussian_blur, so an agent must infer the boundary.

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. With siblings such as apply_gaussian_blur, sharpen, and the generic gegl_apply_filter available, the description never says why an agent should pick denoise over running the GEGL op through the generic filter tool, nor does it state preconditions like a selected/active image or an existing layer.

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