Skip to main content
Glama
retrace-mcp

retrace-mcp

by anthoo582

texture_decode_ps2

Decode PS2 GS swizzled or linear textures (PSMCT32/16/16S, PSMT8/4) with optional CSM2 CLUT into RGBA and PNG for inspection.

Instructions

Decode a PS2 GS texture (PSMCT32/16/16S, PSMT8/4) from swizzled or linear data, optionally with a CSM2 CLUT, into RGBA and PNG.

Input Schema

NameRequiredDescriptionDefault
psmYes
widthYes
heightYes
clutHexNo32-bit RGBA CLUT entries as hex (required for PSMT8/PSMT4)
dataHexYesTexture bytes as hex
swizzledNoTreat input as GS VRAM (default true)
clutStorageNoCLUT storage mode (default CSM2; CSM1 is refused)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden and does disclose the important behavior: both swizzled and linear input are accepted, only CSM2 CLUTs are supported, and output is RGBA plus PNG. It does not say how the PNG is delivered (file path vs. inline data), what happens on invalid sizes or missing CLUT, or anything about limits. So it covers the mode contract but not the error or output-delivery contract.

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?

A single front-loaded sentence that packs the resource, input modes, CLUT constraint, and output formats with no filler. The format parenthetical is dense but readable, and nothing is redundant enough to cut.

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 7-parameter, 4-required compute tool with no annotations and no output schema, the description should at least explain output delivery and failure modes. It names the two outputs but not their form, and leaves three parameters undocumented in both schema and prose. Adequate to identify the tool, not adequate to call it confidently on edge cases.

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

Parameters2/5

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

At 57% schema description coverage, width, height, and psm carry no schema documentation, and the description adds nothing about their meaning or constraints. Everything the description does mention (PSM format list, swizzled vs. linear, CSM2 CLUT) is already present in the enum values and parameter descriptions, so it contributes no meaning beyond the schema.

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 (decode) and resource (PS2 GS texture) and enumerates the pixel formats handled, so an agent can distinguish it from texture_decode_n64 and texture_inspect. It stops short of naming those siblings or stating what the decode is for, but the verb+resource pairing is unambiguous. Minor inconsistency: the description lists PSMCT32/16/16S, PSMT8/4 while the enum additionally accepts PSMZ32/16/16S.

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?

Usage is only implied: an agent can infer it is the tool for turning raw PS2 texture bytes into an image. There is no explicit when-to-use versus texture_inspect, texture_analyze_palette, or texture_decode_n64, and no prerequisites such as needing a CSM2 CLUT for indexed formats stated as guidance. The CSM1 refusal is instead buried in the schema.

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