Skip to main content
Glama

image_convert

Transform any image into detailed pixel art using a unified pipeline. Control downsampling, dithering, and palette options to achieve precise retro styles for games and designs.

Instructions

Converts an image to pixel art using the full unified PixelForge pipeline (Hybrid/Sobel/Box/Nearest downsampling, Hybrid OKLab-BGM or Lospec/.gpl/.hex/.pal palette, 19 dithering modes, Kuwahara pre-brush, tone controls, orphan/majority cleanup, 1px inner/outer/ink outlines, indexed PNG, and pixel grid).

Input Schema

NameRequiredDescriptionDefault
hueNo
gridNoDraw 1px pixel grid on upscaled output.
gammaNo
widthNoTarget pixel width (height auto-computed if omitted).
ditherNobluenoise
factorNoAlternative integer downscale factor.
heightNoOptional target pixel height.
presetNoOptional preset id (e.g. 'hybrid-crisp', 'kurzgesagt-pixel', 'chunky-ink-sprite', 'pico-8', 'sprite', 'one-bit').
indexedNoWrite compact Indexed-Color PNG (PLTE+tRNS) when <= 256 colors.
paletteNoColor count to extract (2..256), built-in id ('endesga-32', 'pico-8', 'kurzgesagt-24'), 'lospec:<slug>', palette file path (.gpl/.hex/.pal/.json), or 'none'.
upscaleNoInteger nearest-neighbor output upscale.
contrastNo
kuwaharaNoPre-pixel Kuwahara flat-paint radius (0=off, 2..5=flat cartoon blocks).
resampleNohybrid
brightnessNo
input_pathYesInput image path.
saturationNo
output_pathYesOutput PNG path.
extract_modeNohybrid_bgm_oklab
outline_modeNonone
outline_colorNo#181425
remove_orphansNoRemove isolated 1-pixel strays.
dither_strengthNoDither strength in [0.0, 1.0] (palette-spread normalized).
outline_cornersNo
smooth_majorityNo3x3 5-of-9 majority speck smoothing.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must carry the full behavioral burden, and it only lists transformation features. It never says whether output_path is overwritten, whether directories are created, what the tool returns, or how long the heavy pipeline (19 dither modes, Kuwahara, palette extraction) might take.

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

Conciseness3/5

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

The purpose is front-loaded in the first clause, which is good, but it then becomes a single run-on laundry list of every pipeline feature. For a 25-parameter tool some enumeration is warranted, yet the sentence is dense and hard to parse rather than structured.

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 complex 25-parameter, file-writing tool with no annotations and no output schema, the description explains the transformation broadly but omits return value, overwrite behavior, and how the preset parameter relates to the manual parameters. It is adequate but leaves real gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 56%, so the description should compensate. It does name most feature families (downsampling modes, palette sources, dithering, Kuwahara, tone controls, cleanup, outlines, grid), but it only restates the parameter names without adding syntax, ranges, or interactions beyond what the schema already documents.

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 — 'Converts an image to pixel art' — and names the concrete pipeline it uses. It never references any sibling tool (image_stylize_reel, palette_tool, image_detect_grid), so an agent can identify the function but must infer why to pick this over the adjacent image tools.

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, when-not-to-use, or alternative guidance at all. The mention of 'the full unified PixelForge pipeline' hints this is the comprehensive converter, but nothing tells the agent when to reach for it versus image_stylize_reel or a preset-only path.

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