Skip to main content
Glama

Open image

gimp_open_image

Opens a local image or XCF file in GIMP as a new image from an absolute path, including PNG, JPEG, WebP, and TIFF formats.

Instructions

Open a local file (XCF or any format GIMP can load: PNG, JPEG, WebP, TIFF...) as a new image. The path must be absolute (~ allowed).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "path": "<path>"
    },
    "name": "gimp_open_image"
  }
}

Input Schema

NameRequiredDescriptionDefault
pathYesAbsolute path of the file to open.

Output Schema

NameRequiredDescriptionDefault
idYes
fileYes
nameYesGIMP's display name (may be localized).
dirtyYes
widthYes
heightYes
xcf_fileYes
displayedYesTrue when a GIMP window shows the image (GUI sessions only).
layer_countYesNumber of top-level layers.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds useful behavioral specifics — accepted formats and tilde expansion for the path — but does not say what happens on a nonexistent/unreadable file, whether the image is added to the session as a distinct image, or how it interacts with existing open images.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the core action and then the format/path constraints. Nothing is redundant with the title and no sentence is filler.

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

Completeness4/5

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

For a one-parameter tool with an output schema and annotation-covered safety profile, the description supplies the essential format and path rules, so an agent can call it confidently. The minor gap is what happens to existing session images and failure modes, which is acceptable at this complexity.

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%, so the baseline is 3, but the description goes beyond the schema's terse 'Absolute path of the file to open' by listing loadable formats and permitting '~', which is meaningful path-syntax information the schema lacks. It stops short of covering relative-path errors or URL/remote resources, which openWorldHint=false implies are unsupported.

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 description gives a specific verb and resource ('Open a local file ... as a new image') and the phrase 'as a new image' implicitly separates it from gimp_create_image (no file) and gimp_import_layer (loads into an existing image). It does not name any sibling explicitly, so the differentiation is inferred 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 usage context is only implied by 'Open a local file' plus the format list; there is no explicit when-to-use, when-not-to-use, or named alternative (e.g. use gimp_import_layer to add a file into the current image). An agent can reasonably infer the case, but nothing prevents it from picking open_image where import_layer is correct.

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