Skip to main content
Glama
AstralVoidZ
by AstralVoidZ

ppsspp_dump_clut

Read-onlyIdempotent

Dump the currently-bound CLUT palette as an image with metadata for debugging PSP graphics. Read-only; if no palette is bound, an error prompts advancing to a scene that uses it.

Instructions

PURPOSE: Dump the currently-bound CLUT palette as an image plus metadata.

USAGE: session_id. Only the CURRENTLY bound palette can be captured — no VRAM-address targeting.

BEHAVIOR: READ-ONLY. An empty capture raises CAPTURE_EMPTY — advance to a scene that uses the palette and retry.

RETURNS: structuredContent metadata (file_path/size_bytes/format); the image itself arrives as an ImageContent block.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
session_idYesActive session ID.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
formatYes
file_pathYes
size_bytesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description reinforces this with 'READ-ONLY'. It adds valuable behavioral context beyond annotations by disclosing that an empty capture raises CAPTURE_EMPTY and advising to advance to a relevant scene and retry. The RETURNS section also clarifies how output is delivered.

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?

The description is tightly organized into four labeled sections, each carrying distinct information: purpose, usage, behavior, and returns. Every sentence earns its place, and the most important facts are front-loaded. There is no fluff or redundancy beyond a harmless READ-ONLY restatement of the annotation.

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?

For a single-parameter, read-only tool with an output schema and rich annotations, this description covers everything an agent needs: what it does, its key limitation, its error mode, and the shape of its result. No critical information is missing for selecting or invoking the tool correctly.

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?

The input schema already documents session_id with 100% coverage, so the description need not repeat it. The description only mentions 'session_id' as a usage label and adds no deeper meaning about its format or constraints. This matches the baseline for high schema coverage.

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 description names a specific action ('Dump'), a concrete resource ('currently-bound CLUT palette'), and the output form ('image plus metadata'). It further distinguishes the tool from address-targeted dumps by explicitly saying 'no VRAM-address targeting', making its scope unmistakable even among many siblings.

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?

The USAGE section provides clear context: it takes a session_id and can only capture the currently-bound palette. It does not explicitly name alternative tools or state when-not-to-use it, but the restriction against VRAM-address targeting gives an agent actionable guidance about the tool's limits.

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