Skip to main content
Glama

Fix Pixel Art

fix_pixel_art
Read-onlyIdempotent

Recover the native pixel grid from enlarged, softened, AI-rendered, or compressed pixel art.

Standard uses the native Rust detector. Neural uses the neural reconstruction engine and accepts optional target width and height values. This repairs existing art—it does not generate a new image. Standard costs $0.002 per call and neural $0.005, charged before running and refunded automatically if the call fails. Both engines share a limit of 10 requests per minute per API token. Provide exactly one source as base64 input_image or a public HTTPS image_url. URL input avoids the ALB request-body limit. Decoded images may contain up to 16 megapixels. Successful response JSON is limited to 850,000 bytes for AWS ALB compatibility.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "fix_pixel_art"
  }
}

Input Schema

NameRequiredDescriptionDefault
widthNoOptional neural target dimension in pixels. Accepted only with engine='neural'.
engineNoFixer engine. Standard uses the native Rust detector; neural uses the neural reconstruction engine.standard
heightNoOptional neural target dimension in pixels. Accepted only with engine='neural'.
image_urlNoPublic HTTPS PNG or JPEG URL to reconstruct. Provide this or input_image, not both. URL downloads may contain up to 20 MB and bypass the API request-body limit.
rd_api_keyNoRetroDiffusion API key (rdpk-...) for this call only; overrides session or header auth.
input_imageNoBase64 PNG or JPEG to reconstruct at its native pixel grid. Raw base64 or a data URL; provide this or image_url, not both. Decoded input may contain up to 16 megapixels, and complete base64 request JSON must stay within 900,000 bytes.
timeout_secondsNoRead-timeout override in seconds for this call; increase for animations or large batches.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • addedInput schema / properties / image_url
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Public HTTPS PNG or JPEG URL to reconstruct. Provide this or input_image, not both. URL downloads may contain up to 20 MB and bypass the API request-body limit."
      +}
    • addedInput schema / properties / input_image / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / input_image / default
      Added value: +null
    • changedInput schema / properties / input_image / description
      Previous value: -"Base64 PNG or JPEG to reconstruct at its native pixel grid. Raw base64 or a data URL; minimum 16x16, maximum 4 megapixels, and the complete request JSON must stay within 900,000 bytes."New value: +"Base64 PNG or JPEG to reconstruct at its native pixel grid. Raw base64 or a data URL; provide this or image_url, not both. Decoded input may contain up to 16 megapixels, and complete base64 request JSON must stay within 900,000 bytes."
    • removedInput schema / properties / input_image / type
      Removed value: -"string"
    • removedInput schema / required
      Removed value: -[
      -  "input_image"
      -]
  2. Added

TDQS

A4.6/5.0
Behavior5/5

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

Goes well past the annotations to disclose per-engine pricing ($0.002 vs $0.005), prepayment and automatic refund on failure, a 10 requests/minute per-token rate limit, the 16 MP decoded limit, and the 850,000-byte response cap. These are exactly the operational constraints an agent needs before committing to a paid call.

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 purpose, then packed with operational facts in short declarative sentences. It is dense but nearly every clause carries decision-relevant information; a few details (megapixel figure) partially overlap the schema.

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

Completeness5/5

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

With an output schema present and 100% parameter coverage, the description's remaining job is behavioral and operational context, which it delivers in full: cost, failure handling, rate limits, size limits, and input-source rules. Nothing needed to invoke it correctly is missing.

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 100%, so the baseline is 3; the description still adds value by tying width/height to the neural engine and attaching a rationale to the engine choice and to URL-vs-base64 selection. Some of this duplicates the schema's own wording, which keeps it from a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence gives a specific verb and resource ('Recover the native pixel grid') and enumerates the exact input conditions it targets (enlarged, softened, AI-rendered, compressed). It also explicitly fences itself off from generation siblings with 'This repairs existing art—it does not generate a new image.'

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the input contract ('exactly one source as base64 input_image or a public HTTPS image_url') and the practical reason to pick URL (avoids the ALB request-body limit), which is real routing guidance. It stops short of saying when to prefer neural over standard beyond the target-dimension capability, and it names no sibling tool as the alternative for generation.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources