gimp-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GIMP_CONSOLE | No | Full path to gimp-console-3.exe if it is not auto-detected. | |
| GIMP_MCP_BACKEND | No | The execution backend: 'headless' (default) or 'bridge'. | headless |
| GIMP_MCP_BRIDGE_PORT | No | The port for the bridge backend, default 50472. | 50472 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| gimp_statusA | Check that GIMP is reachable and report its version. Use this first if anything seems wrong. Reports both the headless backend and whether the live bridge plug-in is running inside an open GIMP. |
| inspect_imageB | Report an image's dimensions, layers, and orientation. Dimensions are reported as DISPLAYED (EXIF orientation applied), which is what a viewer sees -- not necessarily how the pixels are stored. |
| check_image_specA | Check an image against a dimension specification. Every constraint is optional: 0 means "no limit", and orientation "any" means no orientation requirement. Valid orientation values are: any, square, landscape, portrait, square_or_landscape, square_or_portrait. Returns pass/fail with the actual measured dimensions and a plain-language reason for each failure. Useful for validating images against a publishing platform's requirements, a print size, or an asset pipeline's conventions before spending time editing. |
| crop_imageB | Crop to an exact pixel rectangle. x/y are the top-left offset in DISPLAYED orientation. Fails clearly if the rectangle falls outside the image rather than silently clamping. |
| crop_squareB | Crop to the largest possible square. anchor picks which part of the frame to keep: center (default), top, bottom, left, right, or a corner such as topleft. |
| crop_to_aspectB | Crop to a target aspect ratio (width/height), keeping maximum area. Use 1.0 for square, 1.3333 for 4:3, 1.5 for 3:2, 1.7778 for 16:9. |
| resize_imageA | Resize an image. Give width, height, both, or max_edge (longest side, aspect preserved). With preserve_aspect and both dimensions, the image is fitted inside the box rather than distorted. |
| adjust_imageA | Brightness/contrast touch-up. Both values run -1.0..1.0 -- GIMP 3's real range for this operation -- and
are rejected outside it rather than clamped. Useful values are far smaller than the limits. GIMP 3 applies this in linear light, so it bites harder than the same number did in GIMP 2.x, and anything much past +/-0.1 visibly changes the character of a photo. Keep adjustments small when the image needs to represent a real subject faithfully. |
| fit_to_specA | Transform an image until it satisfies a dimension specification. Crops to fix the orientation if required, upscales to reach a minimum size, downscales to respect a maximum, and optionally applies a light touch-up -- all in one pass, so the JPEG is re-encoded only once. Images already satisfying a constraint keep their framing. Example: to produce a square image at least 1000x1000, pass orientation="square" with min_width=1000 and min_height=1000. |
| enhance_imageA | Tone and detail enhancement in one pass. gamma lifts midtones and shadows via levels, leaving the black and white points alone so nothing clips. 1.0 = off. contrast GIMP 3 native -1..1. 0 = off. saturation -100..100. 0 = off. sharpen high-pass sharpen blended back at this percent opacity, 0 = off. Preferred over unsharp mask, which haloes. sharpen_radius blur radius in pixels for the high pass (default 8). Contrast bites harder than the same nominal value did in GIMP 2.x, because GIMP 3 runs the operation in linear light: 2.x's "+12" is roughly 0.020 here, not 0.094. Calibrate against output rather than remapping an old number. |
| process_imageA | Apply a custom sequence of operations in one pass.
Available ops: crop, crop_square, crop_aspect, resize, adjust, autocrop, flatten, fit_spec, enhance. Running them as one pipeline re-encodes the JPEG only once, which avoids stacking compression artefacts. The optional spec arguments are checked against the FINAL result and
reported under |
| batch_processA | Apply the same operations to every image in a folder. All files are handled inside a single GIMP session, so a large folder
costs one GIMP startup rather than one per file. A file that fails does
not abort the run: it is reported in
|
| batch_fit_to_specC | Make every image in a folder satisfy one dimension specification. The common bulk case: point it at a folder of photos and get conforming copies, with each file's final dimensions and pass/fail reported. |
| batch_check_image_specA | Audit a folder: which images already satisfy a specification. Read-only; writes nothing. Use it to triage a folder before editing. |
| live_list_imagesA | List the images currently open in the running GIMP. Requires the bridge plug-in (Filters > Development > Start MCP Bridge). |
| live_screenshotA | Save a flattened snapshot of an image open in the running GIMP. Lets you see the current state of a document you are editing live, then iterate on it. Requires the bridge plug-in. |
| live_run_pythonA | Execute Python inside the running GIMP and return The Gimp module and every operation helper are already in scope. Assign to
a variable named |
| live_stop_bridgeA | Stop the bridge inside the running GIMP, leaving GIMP itself open. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Diterex/gimp-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server