PixelLab Forge MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PixelLab Forge MCPCreate a 32px tall pixel art knight with a shield."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PixelLab Forge MCP
An MCP server that connects AI assistants to the PixelLab pixel art generation API. Generate sprites, tilesets, characters, animations, and more directly from Claude, Cursor, or any MCP-compatible client.
Generated images are automatically saved to ./pixellab-forge-output/ in your project directory, ready to be moved into your game assets.
Prerequisites
Node.js 18 or later
A PixelLab API key — get one at pixellab.ai/account
Related MCP server: aseprite-mcp
Setup
No installation needed. npx downloads and runs the package automatically on first use.
Package registry:
pixellab-forge-mcpis published to the public npm registry (npmjs.org) — that's whatnpx/npm installuse. It is not distributed via GitHub Packages, so the repo's/pkgs/npm/…page will 404; that's expected.
Claude Code (CLI)
claude mcp add pixellab-forge-mcp -e PIXELLAB_API_KEY=your-api-key-here -- npx pixellab-forge-mcpThis adds it to the current project. To make it available across all your projects:
claude mcp add pixellab-forge-mcp -s user -e PIXELLAB_API_KEY=your-api-key-here -- npx pixellab-forge-mcpThat's it. Claude Code will start the server automatically when you begin a conversation.
Claude Desktop
Add to your config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"pixellab-forge-mcp": {
"command": "npx",
"args": ["pixellab-forge-mcp"],
"env": {
"PIXELLAB_API_KEY": "your-api-key-here"
}
}
}
}Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"pixellab-forge-mcp": {
"command": "npx",
"args": ["pixellab-forge-mcp"],
"env": {
"PIXELLAB_API_KEY": "your-api-key-here"
}
}
}
}Other MCP Clients
Any MCP client that supports stdio transport can use PixelLab Forge. Set the command to npx pixellab-forge-mcp and pass PIXELLAB_API_KEY as an environment variable.
Generated Images
When a tool returns image data, PixelLab Forge automatically saves the images as PNGs to ./pixellab-forge-output/ in whatever directory the MCP server is running from (usually your project root).
Image inputs can be passed by file_path instead of inline base64 — any image argument accepts { "file_path": "pixellab-forge-output/sprite.png" }, which the server resolves from disk before calling the API (saves passing large base64 blobs through the model). Paths are restricted to the output directory and workspace root. The dedicated read_image tool remains available for loading an image explicitly.
Add this to your .gitignore:
pixellab-forge-output/Available Tools (89)
Generation tools automatically poll for results — no manual job status checking needed. If a job takes longer than 10 minutes or the connection drops, use list_pending_jobs to find the job ID and get_job_status to retrieve the result.
Image Generation
Tool | Description | Key Options |
| Generate pixel art from text |
|
| Match style from 1-4 references |
|
| Game UI elements (buttons, panels, icons) |
|
| Pixen engine (max area 512×512, dims ÷4) |
|
| Pixflux engine (32-400px) |
|
| Pixflux engine tuned for backgrounds/scenes | Same as |
| Bitforge engine (max 200px) |
|
Characters & Objects
Tool | Description | Key Options |
| Character via v3 model (32-256px, newest) |
|
| Character/object via Pro engine (32-168px) |
|
| Character with N/S/E/W views |
|
| Character with 8 directional views | Same as 4dir |
| New state/variant of a saved character |
|
| Animate saved character (template only) |
|
| Animate saved character (template/v3/pro) |
|
| Object, single direction (32-256px) |
|
| Object with 8 directional views (32-256px) |
|
| Animate a saved object |
|
| New state/variant of a saved object |
|
| Keep specific candidate frames as objects |
|
| Accept an object as-is (clear review) |
|
| List with pagination |
|
| Get details by ID | |
| Delete by ID | |
| Delete animations (all, or scoped) |
|
| Export character as ZIP (saved to | |
| Manage tags | |
| Attach a bust portrait to a character (free; used by |
|
Animation
Tool | Description | Key Options |
| Animate from text + reference |
|
| Animate existing image (32-256px) |
|
| Animate from first/last keyframes |
|
| Pose control via keypoints |
|
| Edit animation frames (2-16) |
|
| Generate in-between frames |
|
| Apply outfit to frames |
|
| Extract keypoints from image |
|
Rotation
Tool | Description | Key Options |
| 8 directional views (32-168px) |
|
| 8 rotations from one frame (v3) |
|
| Rotate between views/directions |
|
Editing & Inpainting
Tool | Description | Key Options |
| Batch edit 1-16 images |
|
| Edit single image |
|
| Mask-based editing |
|
| Inpainting (legacy, max 200px) |
|
Image Operations
Tool | Description | Key Options |
| Convert photo to pixel art |
|
| Convert photo to pixel art (Pro, auto-sizes) |
|
| AI-powered pixel art resize |
|
| Remove background (max 400px) |
|
Tilesets
Tool | Description | Key Options |
| Top-down tileset (16 or 32px) |
|
| Platformer tileset |
|
| Isometric tile (16-64px) |
|
| Pro tiles (hex, iso, octagon, square) |
|
| Retrieve by ID | |
| List with pagination |
|
| Delete by ID |
Map Objects
Tool | Description | Key Options |
| Game-ready object |
|
| Status + metadata by ID |
|
UI Assets & Fonts
Tool | Description | Key Options |
| Persistent shape-based UI panel (distinct from the one-shot |
|
| Retrieve, list (paginated), or delete UI assets |
|
| Styled pixel-art font (glyph atlas + |
|
| Convert between a bust portrait and a full-body sprite (both directions) |
|
Talking Animation
Generate mouth positions once per expression (vocal_animation is the only step that costs generations), then produce unlimited talking GIFs or engine-ready lip-sync plans for free.
Tool | Description | Key Options |
| Generate mouth positions ("visemes") for a portrait (costs generations, once per expression) |
|
| Poll a |
|
| Text → animated GIF of the character speaking (free) |
|
| Frame-by-frame mouth plan for driving lips in a game engine (free, nothing rendered) |
|
Prompt Enhancement
Expand a short description into a richer prompt. These return enhanced text only — they do not generate images.
Tool | Description | Key Options |
| Enrich a prompt for |
|
| Enrich a motion prompt for |
|
| Enrich a prompt for |
|
Account & Jobs
Tool | Description |
| Check your credit balance |
| Check a background job by ID |
| Check a font-pro / portrait↔character job (dedicated endpoints) |
| List jobs that haven't completed (for recovery after disconnection) |
| Recent job history (auto-pruned after 24h) |
| Load a saved PNG as a Base64 image to pass into other tools |
Common Options
Most tools share these parameters, but the field names differ between endpoint generations:
Concept | v2 endpoints | Legacy endpoints |
Prompt adherence | n/a |
|
Transparent background |
|
|
Color reference | n/a |
|
Style controls | n/a |
|
Negative prompt | n/a |
|
Isometric mode | n/a |
|
Reproducibility |
|
|
Character, object, tileset, and map object endpoints also accept text_guidance_scale, outline, shading, detail, and color_image.
Usage
Just describe what you want in plain language. The assistant picks the right tool and parameters automatically.
Quick Examples
Sprites and icons:
"Generate a 64x64 pixel art knight with a blue cape, no background"
"Make a 16x16 health potion icon"
"Create a 128x128 dragon boss with detailed shading and thick outlines"Characters (persistent, multi-directional):
"Create a 48x48 character with 4 directions: a dwarf blacksmith in a leather apron, chibi proportions"
"Animate that character with the walk template"
"Now add a fireball animation"Tilesets:
"Create a 32x32 top-down tileset: ocean water below, sandy beach on top, foam transition"
"Make a 16x16 sidescroller tileset with stone platforms"Editing existing art:
"Edit this sprite to make the armor gold instead of silver"
"Remove the background from this image"
"Generate 8 rotations of this character"Which Tool Gets Used?
The assistant picks the right tool automatically, but the key decision is:
generate_image— default for most requests, highest quality, largest sizesgenerate_with_style— when you want new art matching existing art ("in the same style as these sprites")generate_ui— for game UI elements (buttons, panels, health bars, icons)create_tileset/create_tiles_pro— for tileable terrain; standard for square RPG tiles, pro for hex/isometric/octagoncreate_character_4dir/8dir— for persistent characters you can animate later by ID
Key Concepts
Sizes are in pixels as
width x height— different tools have different limits (e.g. characters max 128x128,generate_imagegoes up to 792x688)Transparent backgrounds are the default on most tools — ask for a background explicitly if you want one
Characters are persistent — once created, you can animate them by ID without re-describing
Seeds make results reproducible — same seed + same description = same output
For detailed size limits, style controls, endpoint comparison, and step-by-step workflows, see the Prompting Guide.
Prompt Commands
PixelLab Forge includes MCP prompt templates that appear as slash commands in supported clients (Claude Desktop, Cursor, etc.):
Command | Description |
| Overview of all tools and how to use them |
| Generate a pixel art sprite |
| Create a character with directional views + animation |
| Animate an existing sprite or character |
| Create a top-down or sidescroller tileset |
| Create hex, isometric, or octagon tiles |
| Generate game UI elements |
| Generate art matching existing sprites' style |
| Edit or modify an existing sprite |
Reliability
Auto-polling: Generation jobs are polled every 2 seconds for up to 10 minutes
Retry on failure: Network errors during polling are retried 3 times with backoff
Job recovery: If the connection drops, job IDs are logged to stderr and persisted to disk. Use
list_pending_jobsto find them andget_job_statusto retrieve resultsImage saving: Generated images are automatically saved as PNGs to
./pixellab-forge-output/
Testing
npx @modelcontextprotocol/inspector node dist/index.jsSet PIXELLAB_API_KEY in the inspector's environment variables, connect, and test any tool.
Contributing
Contributions are welcome via pull requests.
See CHANGELOG.md for release history. Maintainers: see RELEASING.md for the release process.
License
MIT
Available Tools
89 toolsanimate_characterB
Animate a SAVED character by ID using a preset animation template (walk, run, attack, etc). Requires a character_id from create_character_4dir/8dir. Uses the character's existing size. If you only have an image (not a saved character), use animate_with_text_v2 instead.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| isometric | No | Generate in isometric view | |
| directions | No | Specific directions to animate, or omit for all | |
| color_image | No | Color reference image | |
| description | No | Character description for context | |
| character_id | Yes | Character ID | |
| force_colors | No | Force use of colors from color_image (default false) | |
| animation_name | No | Custom animation name | |
| action_description | No | Action description for custom animations | |
| text_guidance_scale | No | How closely to follow the text (1.0-20.0, default 8) | |
| template_animation_id | Yes | Animation template ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It reveals that the tool uses the character's existing size and requires a character_id from specific creation tools, but omits behavioral traits such as return value (likely a job ID), async nature, error handling, or authentication requirements. Significant gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loaded with purpose, and contains no wasted words. It efficiently communicates the core function, prerequisite, and an alternative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 14 parameters and no output schema, the description fails to explain what the tool returns (likely a job ID) or that it may be asynchronous. It does not address the many optional parameters for customization (e.g., detail, outline, shading). Incomplete for a complex tool with many siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all parameters described. The description adds minimal value by listing example template names (walk, run, attack) but does not elaborate on optional parameters like detail, outline, or directions. Baseline 3 is appropriate as the schema already documents parameters well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it animates a saved character by ID using a preset animation template, providing a specific verb and resource. It distinguishes itself from animate_with_text_v2 by noting the prerequisite of a saved character, but does not differentiate from other animate siblings like animate_with_skeleton or animate_with_text_v3.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool (saved character with preset template) and when not to (only image → use animate_with_text_v2). This provides clear context and an alternative, though it does not cover all possible alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
animate_objectA
Animate a SAVED object by ID. mode='v3' (default, higher quality, supports custom_start_frame/end_frame interpolation) or 'pro'. Do NOT pass directions for 1-direction objects; for 8-direction objects pass the directions to animate. Requires an object_id from create_object_1dir/8dir.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Animation mode (default 'v3') | |
| end_frame | No | Optional target pose to interpolate toward (v3 mode only) | |
| object_id | Yes | ID of the object to animate | |
| directions | No | Directions to animate (8-direction objects only; omit for 1-direction objects) | |
| frame_count | No | Frames per direction | |
| display_name | No | Optional name for the animation | |
| enhance_prompt | No | Auto-expand the description into a richer prompt before generating (default false) | |
| replace_existing | No | Regenerate a direction already animated in this animation (default false) | |
| animation_group_id | No | For 8-direction objects: animation_group_id of an existing animation to add directions to | |
| custom_start_frame | No | Optional custom starting pose (v3 mode only) | |
| animation_description | No | Describe the animation, e.g. 'walking cheerfully' (required for a new animation, max 1000 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses mode defaults and quality difference, interpolation support, and dependency on object creation tools. Lacks details on credit consumption, job polling, or error behavior, but covers essential behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loads the action, then adds mode and constraint details. No wasted words; every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Description is brief given complexity (11 params, nested objects, no output schema). Doesn't explain result format (likely a job ID) or failure cases. Schema descriptions fill some gaps, but overall completeness is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds value by explaining mode differences and direction rules beyond schema descriptions (e.g., 'v3 (default, higher quality, supports custom_start_frame/end_frame interpolation)'). This clarifies parameter context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool animates a saved object by ID, specifies modes ('v3' vs 'pro'), and distinguishes from siblings by focusing on objects versus characters or text. The verb 'Animate' and resource 'SAVED object by ID' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: 'Do NOT pass directions for 1-direction objects; for 8-direction objects pass the directions' and 'Requires an object_id from create_object_1dir/8dir'. This helps the agent decide when to use it and prerequisites, but doesn't explicitly compare to sibling animation tools for characters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
animate_with_skeletonA
Create animation using skeleton keypoints for precise joint/pose control. Fixed sizes only: 16, 32, 64, 128, or 256px. Use this when you need exact body positioning per frame. For simpler text-described animation use animate_with_text_v2.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | Yes | Camera perspective | |
| direction | Yes | Character facing direction | |
| isometric | No | Generate in isometric view (default false) | |
| image_size | Yes | 16x16 to 256x256 | |
| color_image | No | Color palette reference image | |
| init_images | No | Initialization images per frame | |
| mask_images | No | ||
| guidance_scale | No | How closely to follow reference image and skeleton keypoints (1.0-20.0, default 4.0) | |
| reference_image | No | Character reference | |
| inpainting_images | No | ||
| oblique_projection | No | Use oblique projection (default false) | |
| skeleton_keypoints | Yes | Body joint positions per frame | |
| init_image_strength | No | Initial image influence strength (0-1000, default 300) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions fixed sizes and that it creates an animation, but lacks details on destructive potential, authentication, rate limits, or whether it modifies existing data. Does not contradict annotations (none present).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Only three sentences, front-loaded with purpose, no fluff. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite a high parameter count (14) and nested objects (e.g., skeleton_keypoints), the description does not explain how to structure keypoints, what the output will be, or provide examples. Schema coverage helps, but for a complex tool, more context is needed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 86%, so baseline is 3. The description adds fixed size constraints (16,32,64,128,256px) which clarifies image_size, but does not explain skeleton_keypoints format or other parameters beyond schema. Minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Create animation using skeleton keypoints for precise joint/pose control.' and contrasts with 'animate_with_text_v2', making the purpose and differentiation explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this when you need exact body positioning per frame. For simpler text-described animation use animate_with_text_v2.' Provides clear usage context and an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
animate_with_textA
Legacy animation from text description + reference image. FIXED 64x64 only. Prefer animate_with_text_v2 (any size 32-256px) or animate_with_text_v3 (keyframe-based) for new work. Use animate_character if you already have a saved character ID.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera angle (default 'side') | |
| action | Yes | Animation action (e.g. 'walking', 'attacking') | |
| n_frames | No | Number of frames (default 4) | |
| direction | No | Facing direction (default 'east') | |
| image_size | Yes | Frame size | |
| color_image | No | Color palette reference image | |
| description | Yes | Character description | |
| init_images | No | Initialization images per frame | |
| mask_images | No | ||
| reference_image | Yes | Character reference | |
| inpainting_images | No | ||
| start_frame_index | No | Starting frame index (default 0) | |
| init_image_strength | No | Initial image influence strength (0-1000, default 300) | |
| text_guidance_scale | No | Text prompt influence (1.0-20.0, default 7.5) | |
| image_guidance_scale | No | Reference image influence (default 1.5) | |
| negative_description | No | What to avoid in generation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. It mentions legacy and fixed size but lacks details on side effects, auth needs, rate limits, or return format. Critical gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is extremely concise: one sentence on purpose plus two sentences of usage guidance. Every sentence earns its place; front-loaded with key constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite high complexity (17 params, 4 required, nested objects) and no output schema, the description only covers legacy nature and size restriction. Missing workflow, expected input/output, and edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 88% (high), so baseline is 3. The description adds no parameter-specific info beyond the schema, nor does it compensate for the uncovered 12%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a legacy animation generator from text and reference image, with a fixed 64x64 size. It distinguishes itself from newer versions (v2, v3) and alternative tools (animate_character).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use alternatives: prefer v2 for any size 32-256, v3 for keyframe-based, and animate_character for saved character IDs. Provides clear guidance for selecting the appropriate tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
animate_with_text_v2A
RECOMMENDED animation tool — animate a character image with a text-described action. Provide a reference image + action text. 32-256px. Frames by size: 32-64px → 16, 128-256px → 4. Use this when you have a character image but NOT a saved character ID. If you have a character ID, use animate_character instead.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective (default 'none') | |
| action | Yes | Action to animate (e.g. 'walk', 'cast spell') | |
| direction | No | Facing direction (default 'none') | |
| image_size | Yes | Output frame size (32x32 to 256x256) | |
| no_background | No | Generate with transparent background | |
| reference_image | Yes | Character image to animate with dimensions | |
| reference_image_size | Yes | Character image dimensions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It discloses frame count variations by size and default no_background=true, but does not mention side effects (e.g., state changes) or output format. Still adds useful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, with 'RECOMMENDED' front-loaded. Every word adds unique value—no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers core use case, size constraints, and sibling distinction. Lacks details on return format but is sufficient given 100% schema coverage and typical agent expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds value by explaining frame count relation to image_size and range constraints (32-256px), which supplements the schema details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description explicitly states it animates a character image with text-described action, and distinguishes from animate_character (requires character ID). The verb 'animate' and resource 'character image' are clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Directly advises to use this tool when a character image is available but no character ID, and to use animate_character otherwise. Also provides size-dependent frame counts, aiding decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
animate_with_text_v3A
Keyframe-based animation — provide a first frame and optional last frame, get interpolated animation. Best for precise start/end control. 4-16 frames, max 256px. Pixel budget: W×H×frames ≤ 524,288. Use animate_with_text_v2 instead if you just want to describe an action.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| action | Yes | Action description | |
| last_frame | No | Optional ending keyframe | |
| first_frame | Yes | Starting frame image | |
| frame_count | No | Number of frames (4-16, default 8, must be even) | |
| no_background | No | Generate with transparent background |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explains the interpolation between frames, required first_frame, optional last_frame, and constraints like frame count evenness and no_background default. However, it does not describe the output format or behavior if constraints are violated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, highly front-loaded with purpose. Every sentence adds value: first defines the tool, second gives usage guidance and constraints. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description covers purpose, key constraints, and usage distinction. Missing output description (e.g., what is returned) but otherwise complete for selecting and invoking correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description adds contextual meaning by mentioning the first/last frame and constraints, but does not add semantic detail beyond what schema descriptions already provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs keyframe-based animation with first and optional last frame, producing interpolated results. It distinguishes itself from the sibling animate_with_text_v2, which is for action description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool ('Best for precise start/end control') and when not to ('Use animate_with_text_v2 instead if you just want to describe an action'). Also provides constraints like frame count range, max resolution, and pixel budget.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_character_4dirA
Create a PERSISTENT game character with 4 directional views (N/S/E/W). 32-168px. Returns a character_id that can be reused with animate_character for animations. Use this for game characters that need multiple directions and animations. For 8 directions use create_character_8dir. For one-off sprites without persistence use generate_image.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| isometric | No | Generate in isometric view (default false) | |
| image_size | Yes | Character sprite dimensions (32x32 to 168x168) | |
| color_image | No | Color reference image | |
| description | Yes | Character description | |
| proportions | No | Body proportions - preset (chibi, cartoon, stylized, realistic_male, realistic_female, heroic) or custom with head_size, arm_length, leg_length, shoulder_width, hip_width (0.5-2.0) | |
| template_id | No | Template ID (e.g. 'mannequin' for humanoid, 'bear'/'cat'/'dog'/'horse'/'lion' for quadruped) | |
| force_colors | No | Force use of colors from color_image (default false) | |
| text_guidance_scale | No | How closely to follow the text (1.0-20.0, default 8) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses persistence, return of character_id for later reuse, and directional views. It does not detail side effects, deletion, or rate limits, but the persistence aspect and reuse capability are clearly stated, which is sufficient for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only 4 sentences, all essential. It is front-loaded with the main action and resource, then quickly provides size, return value, and usage differentiation. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (13 params, no output schema), the description is fairly complete: it covers purpose, usage alternatives, return value, and key constraint (size). It does not explain the output format beyond character_id, but that is sufficient for context. Minor gap: could mention that the character is stored and can be listed/deleted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description does not need to restate parameter details. However, it adds no extra context beyond the size range already in the schema. Baseline 3 is appropriate as the description neither harms nor significantly enhances parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a persistent game character with 4 directional views, specifies size range (32-168px), and mentions the return of a character_id for reuse with animate_character. It effectively distinguishes from siblings by naming create_character_8dir for 8 directions and generate_image for one-off sprites.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this for game characters that need multiple directions and animations' and provides direct alternatives: 'For 8 directions use create_character_8dir. For one-off sprites without persistence use generate_image.' This gives clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_character_8dirA
Create a PERSISTENT game character with 8 directional views (N/NE/E/SE/S/SW/W/NW). 32-168px. Returns a character_id for use with animate_character. Use this for top-down or isometric games needing diagonal directions. For 4-direction games use create_character_4dir.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| isometric | No | Generate in isometric view (default false) | |
| image_size | Yes | Character sprite dimensions (32x32 to 168x168) | |
| color_image | No | Color reference image | |
| description | Yes | Character description | |
| proportions | No | Body proportions - preset (chibi, cartoon, stylized, realistic_male, realistic_female, heroic) or custom with head_size, arm_length, leg_length, shoulder_width, hip_width (0.5-2.0) | |
| template_id | No | Template ID (e.g. 'mannequin' for humanoid, 'bear'/'cat'/'dog'/'horse'/'lion' for quadruped) | |
| force_colors | No | Force use of colors from color_image (default false) | |
| text_guidance_scale | No | How closely to follow the text (1.0-20.0, default 8) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It reveals the tool creates a persistent character and returns a character_id, but lacks details on side effects, authorization, or error states. The description is adequate but not overly transparent; it meets basic requirements but could be improved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. First sentence covers the core purpose and key details. Second sentence adds return value and usage guidance. Information is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 13 parameters (2 required), nested objects, and no output schema, the description covers the essentials: what the tool does, its primary use case, and distinction from siblings. It does not mention error handling or detailed return behavior, but the schema covers parameters well. Slightly incomplete considering complexity, but adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, baseline is 3. The description adds some value by specifying size range (32-168px) and mentioning 8 directional views (implicit in name). It does not elaborate on other parameters, but since schema fully describes them, this is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the purpose: creating a persistent game character with 8 directional views. It specifies size range and directly distinguishes from sibling tool create_character_4dir by mentioning use cases (top-down/isometric games needing diagonal directions) and alternative for 4-direction games.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool vs. the alternative: 'Use this for top-down or isometric games needing diagonal directions. For 4-direction games use create_character_4dir.' Also mentions the returned character_id is for use with animate_character, linking to another tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_character_animationA
Animate a SAVED character by ID with flexible modes. mode='template' uses a skeleton-based template_animation_id; mode='v3' interpolates frames from a custom action_description (4-16 frames); mode='pro' is the pro animator. More flexible than animate_character, which is template-only. Requires a character_id.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Animation mode: 'template' (skeleton from template_animation_id), 'v3' (custom action), 'pro' | |
| seed | No | Seed for deterministic generation (default 0) | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| isometric | No | Generate in isometric view (default false) | |
| directions | No | Directions to animate (south, north, east, west, etc.), or omit for default | |
| color_image | No | Color palette reference image | |
| description | No | Character description (uses character's original if omitted) | |
| frame_count | No | Number of frames (4-16, must be even, default 8). v3 mode only | |
| character_id | Yes | ID of existing character to animate | |
| force_colors | No | Force use of colors from color_image (default false) | |
| animation_name | No | Name for this animation (defaults to action_description) | |
| enhance_prompt | No | Auto-expand the description into a richer prompt before generating (default false) | |
| action_description | No | Action description (required for custom v3/pro animations, e.g. 'walking', 'jumping') | |
| text_guidance_scale | No | How closely to follow the text (1.0-20.0, default 8) | |
| template_animation_id | No | Animation template ID (required for template mode, e.g. 'walking', 'attack') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It explains modes and inputs but does not disclose side effects (e.g., whether it modifies the character, creates a new animation, or returns a job ID). More transparency on expected behavior and output is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with 4 sentences, front-loading the purpose and modes. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 17 parameters, nested objects, and no output schema, the description is adequate but lacks details on return values, prerequisites (character must be saved), and default behaviors for parameters like frame_count and seed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, so the description adds marginal value. It provides context for mode and the difference between template and v3, but other parameters are not elaborated beyond schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool animates a saved character by ID, with flexible modes. It distinguishes itself from the sibling tool animate_character, which is template-only.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly explains when to use each mode (template, v3, pro) and notes that animate_character is an alternative. It also states the requirement for a character_id.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_character_proB
Create a character or object using the Pro engine. Output 32-168px. Methods: create_with_style (text-driven, optional style reference_image), create_from_concept (from a concept_image up to 1024x1024), rotate_character. Returns a character_id.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera view angle (default 'low top-down') | |
| method | No | How reference inputs are used (default 'create_with_style') | |
| image_size | Yes | Output frame size (32-168px) | |
| description | Yes | Description of the character or object to generate | |
| template_id | No | Body type for skeleton reconstruction (default 'mannequin') | |
| concept_image | No | Concept image (max 1024x1024) for method=create_from_concept | |
| no_background | No | Generate with transparent background | |
| reference_image | No | Style reference image (max 168x168) for method=create_with_style | |
| style_description | No | Free-text style hint layered on top of the description (max 2000 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It mentions output size constraints and return of a character_id, but fails to disclose any behavioral traits such as destructive potential, authentication needs, or processing characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loads the purpose, and contains no extraneous information. Every sentence contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (10 parameters, no output schema, no annotations), the description is insufficient. It does not explain the behavior of each method, required fields, or default parameter values, leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds marginal context (e.g., text-driven with optional style reference), but mostly duplicates schema info. No significant new meaning is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a character or object using the 'Pro engine' and lists the methods. However, it does not differentiate from sibling tools like create_character_v3 or animate_character, which reduces clarity among similar tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description briefly mentions three methods (create_with_style, create_from_concept, rotate_character) and their basic context, but does not provide explicit guidance on when to use this tool versus alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_character_stateA
Create a new state/variant of an existing character by editing it with a text description (e.g. 'wearing armor', 'damaged'). Requires a source character_id. Optionally snap the edit to the source character's color palette for visual consistency.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| character_id | Yes | ID of the source character | |
| no_background | No | Generate with transparent background | |
| edit_description | Yes | How to edit the character to create the new state | |
| use_color_palette_from_reference | No | Snap edited rotations to the source character's existing color palette (default false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses creation of new state, source requirement, and optional palette snapping, but does not specify side effects on original character, return value, or other behavioral aspects like rate limits or permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no wasted words. Efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters and no output schema, the description adequately explains core functionality but omits what the tool returns (e.g., an ID or image) and does not mention seed or no_background explicitly in the prose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds minimal extra meaning beyond schema descriptions (e.g., edit_description as text description), but does not provide additional context for seed or no_background.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action 'Create a new state/variant of an existing character' with specific details like using text description and source character_id, distinguishing it from sibling tools like create_character.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: requires a source character_id, and optional color palette snapping. Does not explicitly mention when-not-to-use or alternatives, but the purpose is clear enough to guide usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_character_v3A
Create a character using the v3 model. Two modes: provide a south-facing reference_image to rotate that exact character, or omit it to generate from scratch via description. Output 32-256px (advisory in reference mode). Returns a character_id. The newest character generator — prefer over create_character_4dir/8dir for best quality.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Display name (defaults to first 50 chars of description) | |
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera view angle (default 'low top-down') | |
| detail | No | Detail level hint for from-scratch mode (default 'medium detail') | |
| outline | No | Outline style hint for from-scratch mode (default 'single color black outline') | |
| image_size | No | Output frame size, 32-256px (advisory in reference mode) | |
| description | Yes | Character description (used as prompt + display name) | |
| template_id | No | Body type for skeleton reconstruction (default 'mannequin') | |
| no_background | No | Generate with transparent background | |
| enhance_prompt | No | Auto-expand the description into a richer prompt before generating (default false) | |
| reference_image | No | South-facing reference image; if provided, v3 rotates this exact character |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It adequately describes the two operational modes and output constraints (advisory size in reference mode, returns character_id). However, it lacks details on potential side effects, permissions, or processing time, which is a moderate gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3 sentences) and well-structured, with the main purpose front-loaded. Every sentence adds value, and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given tool complexity (11 params, nested objects, two modes), the description covers the core behavior and mode distinction. It lacks error handling or authentication details, but for a character creation tool, it is largely complete. A minor gap in mentioning possible issues or return format beyond character_id.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds context beyond the schema by explaining the two modes and that image_size is advisory in reference mode, but does not elaborate on other parameters. This meets the minimum for a well-documented schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a character using the v3 model, identifies two distinct modes (reference image or from scratch), and explicitly distinguishes it from sibling tools create_character_4dir/8dir by recommending v3 for best quality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on when to use this tool (prefer over older character generators) and explains the two modes with conditions for each. However, it does not include when-not-to-use scenarios or alternative tools beyond the two mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_image_bitforgeA
Generate pixel art using the legacy Bitforge engine. Max 200x200. Prefer generate_image (v2) for most tasks — use Bitforge only when you need inline skeleton keypoints, combined inpainting+generation, or style_image influence control in a single call.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| direction | No | Character facing direction | |
| isometric | No | Generate in isometric view (default false) | |
| image_size | Yes | Max 200x200 | |
| init_image | No | Starting image | |
| mask_image | No | Inpainting mask | |
| color_image | No | Color palette reference image | |
| description | Yes | Image description | |
| style_image | No | Style reference | |
| no_background | No | Generate with transparent background | |
| style_strength | No | Style image influence (default 0.0) | |
| inpainting_image | No | Image to inpaint on | |
| oblique_projection | No | Use oblique projection (default false) | |
| skeleton_keypoints | No | Body joint positions | |
| coverage_percentage | No | Percentage of canvas to cover (0-100) | |
| init_image_strength | No | Initial image influence strength (0-1000, default 300) | |
| text_guidance_scale | No | Text prompt adherence (1.0-20.0, default 3.0) | |
| extra_guidance_scale | No | Additional guidance (default 3.0) | |
| negative_description | No | What to avoid in generation | |
| skeleton_guidance_scale | No | Skeleton keypoint influence (default 1.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only mentions the 200x200 size limit. It does not disclose whether the tool is synchronous or async, what it returns (URL, base64?), any required permissions, error handling, or side effects. Missing critical behavioral context for a complex tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: first states purpose and constraint, second gives preference, third lists specific use cases. No redundant information, front-loaded with key advice. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the detailed schema, the description omits information about return values, required inputs beyond the two mandatory, and how parameters interact. For a tool with 24 parameters and no output schema, more context is needed to ensure correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 tool description does not add extra meaning beyond the schema, but the schema itself provides adequate descriptions for each parameter. No additional value from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it generates pixel art using the Bitforge engine with a max size constraint, and clearly distinguishes from the preferred v2 tool by listing specific use cases (inline skeleton keypoints, combined inpainting+generation, style_image influence control).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear guidance: prefer generate_image (v2) for most tasks, and only use Bitforge when specific features are needed. This directly helps an agent choose between sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_image_pixenA
Generate pixel art using the Pixen engine. Width/height 16-768px each but max area 512x512, and both must be divisible by 4. Supports outline/detail style hints, view/direction, and optional prompt enhancement. A modern alternative to generate_image with finer outline/detail control.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level (default 'highly detailed') | |
| outline | No | Outline style | |
| direction | No | Character facing direction | |
| image_size | Yes | Width/height each 16-768, max area 512x512, both divisible by 4 | |
| description | Yes | Text description of the image to generate | |
| no_background | No | Generate with transparent background (default false) | |
| enhance_prompt | No | Auto-expand the description into a richer prompt before generating (default false) | |
| background_removal_task | No | Background removal complexity (default remove_simple_background) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It mentions size constraints and optional style hints, but omits details about the generation process, expected output format, whether it's synchronous or async, and any side effects. Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at three sentences, front-loading the core purpose and constraints, then enumerating features and alternatives. Every sentence contributes value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite moderate complexity (10 params, nested objects, no output schema), the description does not explain what the tool returns (image URL, job ID, etc.) or mention likely async behavior given sibling tools like get_job_status. This critical gap makes the description incomplete for effective agent invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each parameter is described in the schema. The description adds context about the engine and mentions some parameters collectively (outline, detail, view, direction, enhance_prompt), but does not provide additional semantic meaning beyond what the schema already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'generate' and resource 'pixel art' using the Pixen engine. It distinguishes itself from sibling 'generate_image' by highlighting finer outline/detail control, making the purpose and differentiation clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides specific constraints (size range, divisibility, max area) and indicates when to use this tool as an alternative to generate_image with finer control. However, it does not explicitly exclude other pixel art tools like create_image_pixflux, nor does it provide guidance on prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_image_pixfluxA
Generate pixel art using the legacy Pixflux engine. 32-400px. Prefer generate_image (v2) for most tasks — use Pixflux only when you need fine-grained control over outline/shading/detail style params, view/direction, or coverage_percentage.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| direction | No | Character facing direction | |
| isometric | No | Generate in isometric view (default false) | |
| image_size | Yes | 32x32 to 400x400 | |
| init_image | No | Starting image for img2img | |
| color_image | No | Color palette reference image | |
| description | Yes | Image description | |
| no_background | No | Generate with transparent background | |
| coverage_percentage | No | Percentage of canvas to cover (0-100) | |
| init_image_strength | No | Initial image influence strength (0-1000, default 300) | |
| text_guidance_scale | No | How closely to follow text (1.0-20.0, default 8.0) | |
| negative_description | No | What to avoid in generation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose any behavioral traits such as credit consumption, rate limits, or whether it is a write operation. It only mentions it's 'legacy', which is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no extraneous information. Purpose and usage guidance are front-loaded, making it efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description covers purpose and usage, it lacks details about output (e.g., returns a job ID or image), required parameters, or potential side effects. With no output schema and 16 parameters, more context would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds context for a subset of parameters (outline, shading, detail, view, direction, coverage_percentage) but does not explain any parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Generate pixel art using the legacy Pixflux engine' and distinguishes it from the sibling tool 'generate_image' by specifying when to use each.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises 'Prefer generate_image (v2) for most tasks — use Pixflux only when you need fine-grained control over outline/shading/detail style params, view/direction, or coverage_percentage.' Provides clear context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_image_pixflux_backgroundA
Generate a seamless/background image using the Pixflux engine. Same parameters as create_image_pixflux but tuned for backgrounds and environments rather than isolated sprites.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| direction | No | Character facing direction | |
| isometric | No | Generate in isometric view (default false) | |
| image_size | Yes | 32x32 to 400x400 | |
| init_image | No | Starting image for img2img | |
| color_image | No | Color palette reference image | |
| description | Yes | Background/scene description | |
| no_background | No | Generate with transparent background (default false) | |
| coverage_percentage | No | Percentage of canvas to cover (0-100) | |
| init_image_strength | No | Initial image influence strength (0-1000, default 300) | |
| text_guidance_scale | No | How closely to follow text (1.0-20.0, default 8.0) | |
| negative_description | No | What to avoid in generation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It does not mention whether the tool is read-only or has side effects, required authentication, rate limits, or any constraints beyond generation. The description only states purpose, which is insufficient for full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, with no superfluous words. The first sentence states the core action, and the second provides differentiation. Every sentence adds value, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (16 parameters, nested objects, no output schema), the description is minimal. It provides purpose and differentiation but lacks details on return values, error handling, or parameter relationships. While the schema covers parameters, the description could offer more context for effective usage, so it is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all 16 parameters with 100% coverage. The description adds no extra parameter details beyond noting they are the same as 'create_image_pixflux'. Baseline 3 is appropriate as schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Generate a seamless/background image using the Pixflux engine', providing a specific verb and resource. It also distinguishes the tool from its sibling 'create_image_pixflux' by noting it is tuned for backgrounds/environments rather than sprites, making the purpose clear and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool should be used for background/environment generation versus the sibling for sprites, but it does not explicitly state when not to use it or list alternatives beyond the one sibling. The guidance is present but lacks explicit exclusions or deeper context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_isometric_tileA
Create an isometric tile. Size 16x16 to 64x64 (best quality >24px). For other tile types (hex, octagon, square_topdown) use create_tiles_pro instead.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| image_size | Yes | 16x16 to 64x64 | |
| init_image | No | Optional starting image | |
| color_image | No | Color palette reference image | |
| description | Yes | Tile description | |
| init_image_strength | No | Initial image influence strength (1-999, default 300) | |
| isometric_tile_size | No | Isometric tile size in pixels (default 16) | |
| text_guidance_scale | No | How closely to follow text (1-20, default 8) | |
| isometric_tile_shape | No | Shape of the isometric tile (default 'block') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral traits. It mentions size constraints and quality advice ('best quality >24px') but does not disclose authorization needs, rate limits, storage behavior, or output format. Minimal transparency for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, directly stated with no redundancy. Front-loaded with purpose and size constraints, then exclusion of other tile types. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 12 parameters, nested objects, and no output schema, the description is too brief. It does not explain what the tool returns (e.g., tile ID or URL), how to retrieve or use the output, or how this tool relates to get_isometric_tile/list_isometric_tiles. Incomplete for a complex creation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline 3. The description adds the size range (16x16 to 64x64) which aligns with image_size, but does not explain other parameters beyond what schema already provides. No significant additional meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create an isometric tile' and explicitly distinguishes from the sibling tool create_tiles_pro for other tile types (hex, octagon, square_topdown). This makes the tool's purpose unambiguous and well-differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly directs the agent to use create_tiles_pro for hex, octagon, or square_topdown tiles, providing clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_map_objectA
Generate a single-view map object (tree, rock, chest, etc.) with transparent background. Use this for environment/prop assets that don't need multiple directions. For objects with 4 directional views use create_object_4dir. For characters use create_character_4dir/8dir.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| image_size | Yes | Output dimensions | |
| init_image | No | Optional starting image | |
| inpainting | No | Inpainting configuration (JSON string or object) | |
| color_image | No | Color palette reference image | |
| description | Yes | Object description | |
| background_image | No | Background image for context | |
| init_image_strength | No | Initial image influence strength (1-999, default 300) | |
| text_guidance_scale | No | How closely to follow text (1-20, default 8) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the output has a transparent background and is a single-view generation, but does not mention required permissions, rate limits, or failure modes. The description adds some behavioral context but is not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, using two sentences and a brief clarification. Every sentence is essential, and the main purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 13 parameters (2 required), nested objects, and no output schema. The description fails to explain return values, parameter behaviors, or defaults. It is too minimal for a complex tool, leaving agents without guidance on how to configure the generation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with descriptions, so the description need not add much. It does not elaborate on parameter meanings beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a single-view map object with transparent background, and explicitly distinguishes from sibling tools like create_object_4dir and create_character_4dir/8dir, specifying when to use each.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool (for environment/prop assets that don't need multiple directions) and when not to (for objects with 4 directional views or characters), with alternative tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_object_1dirA
Create a persistent single-direction object. Square size 32-256px (default 64). view 'top-down' or 'sidescroller'. Optionally pass style_images for visual reference. Larger sizes may yield multiple objects (use item_descriptions to label each). For an object rotatable to 8 directions use create_object_8dir. For single-view non-persistent props use create_map_object.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Square image size in pixels (32-256, default 64) | |
| view | No | View (default 'top-down') | |
| description | Yes | Object description | |
| style_images | No | Style reference images (PNG/JPEG base64, max 256x256 each) | |
| item_descriptions | No | Per-object descriptions when the size produces multiple objects |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Clearly indicates creation, persistence, single-direction, and the effect of size on multiplicity. Lacks explicit mention of return values or error handling, but sufficient for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded with purpose, followed by parameter details and sibling comparisons. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters (1 required), no output schema, and no annotations, the description thoroughly covers tool purpose, parameter intricacies, and usage context with sibling tools. Complete enough for effective selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds meaningful context beyond schema: size range and default, view enum values, optional style_images, and the warning about multiple objects with item_descriptions. Schema already covers all parameters, but description clarifies behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description explicitly states verb 'Create' and resource 'persistent single-direction object', and distinguishes from siblings 'create_object_8dir' and 'create_map_object'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides alternatives: 'For an object rotatable to 8 directions use create_object_8dir. For single-view non-persistent props use create_map_object.' Also gives defaults and conditions like size range and view options.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_object_8dirA
Create a persistent object with 8 directional views. Square size 32-256px (default 64). view 'low top-down', 'high top-down', or 'side'. Provide reference_image to rotate that exact object, OR style_image to generate a new object in that style (mutually exclusive). For a single-direction object use create_object_1dir.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Square image size in pixels (32-256, default 64) | |
| view | No | Camera angle (default 'low top-down') | |
| description | Yes | Object description | |
| style_image | No | Style reference — generates a new object matching the description in this style (mutually exclusive with reference_image) | |
| reference_image | No | Reference image — generates 8 rotations of this exact object (mutually exclusive with style_image) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses persistence, size constraints, view options, and mutual exclusivity. Minor missing detail on number of generated images (8 views) but name implies it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with main purpose, then details. No redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but description covers inputs well. Could explicitly mention that 8 views are generated, but name and context imply it. Adequate given sibling tools and complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds value by explaining mutual exclusivity, default values, and square size constraint beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it creates a persistent object with 8 directional views. Explains size range, view options, and mutual exclusivity of image inputs. Distinguishes from sibling create_object_1dir.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use (for 8-directional objects) and when not to (use create_object_1dir for single direction). Also explains when to use reference_image vs style_image.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_object_stateB
Create a new state/variant of an existing object by editing it with a text description (e.g. 'open chest', 'broken'). Requires a source object_id.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| object_id | Yes | ID of the source object | |
| edit_description | Yes | How to edit the object to create the new state |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It says 'edit it with a text description' but does not clarify whether the original object is modified, what side effects occur, or what permissions are needed. The creation of a new state could imply mutation, which is not disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with an inline example, achieving conciseness. However, it could be slightly more structured (e.g., separating the example) without losing efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description does not explain the return value or output format, which is critical since there is no output schema. It also omits constraints like whether the source object must exist or what types of objects are valid. For a tool with three parameters, this lack of detail leaves significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing descriptions for all parameters. The tool description adds value by giving concrete examples ('open chest', 'broken') for the 'edit_description' parameter, clarifying the expected input format beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'create', the resource 'state/variant of an existing object', and the method 'by editing it with a text description'. It distinguishes from sibling tools like 'create_character_state' by specifying 'object'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite ('Requires a source object_id') but provides no guidance on when to use this tool versus alternatives such as 'create_object_1dir' or 'animate_object'. It does not explain scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_tilesetA
Create a TOP-DOWN tileset with base terrain, elevated terrain, and transitions (16x16 or 32x32 tiles). Outputs 16-23 seamless tiles. Use this for RPG/strategy maps. For platformer/sidescroller games use create_tileset_sidescroller. For isometric games use create_isometric_tile or create_tiles_pro.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective (default 'high top-down') | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| tile_size | Yes | 16x16 or 32x32 | |
| color_image | No | Color palette reference image | |
| tile_strength | No | Tile pattern strength (0.1-2, default 1) | |
| transition_size | No | Elevation difference 0.25-1.0 (default 0.5) | |
| lower_description | Yes | Base terrain (e.g. 'deep blue ocean water') | |
| tileset_adherence | No | Adherence to tileset patterns (0-500, default 100) | |
| upper_description | Yes | Elevated terrain (e.g. 'golden sandy beach') | |
| lower_base_tile_id | No | ID of existing lower base tile to use | |
| upper_base_tile_id | No | ID of existing upper base tile to use | |
| text_guidance_scale | No | How closely to follow text (1-20, default 8) | |
| lower_reference_image | No | Reference image for lower terrain style | |
| upper_reference_image | No | Reference image for upper terrain style | |
| transition_description | No | Transition terrain (e.g. 'wet sand with foam') | |
| tileset_adherence_freedom | No | Freedom from tileset constraints (0-900, default 500) | |
| transition_reference_image | No | Reference image for transition style |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It reveals that the tool creates a tileset with specified terrain types and outputs seamless tiles (16-23). It does not mention potential side effects like overwriting existing tilesets or required permissions, but the creation nature and output count are clearly communicated. Slightly lacking in deeper behavioral context but still good.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences that efficiently convey purpose, output, and usage alternatives. Front-loaded with the core action, then context and sibling differentiation. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (20 parameters, 3 required) and lack of output schema, the description provides essential high-level context but does not explain parameter interactions or detailed behavior. However, the schema is comprehensive, and the description covers the key differentiators. Just shy of complete for a complex creative tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning the schema already describes all 20 parameters. The description only reiterates tile_size options (16x16 or 32x32) and provides examples for lower_description and upper_description, which are already in the schema. No new parameter meaning is added, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool creates a top-down tileset with base terrain, elevated terrain, and transitions, specifying tile sizes 16x16 or 32x32 and output of 16-23 seamless tiles. It distinguishes from siblings by directing users to create_tileset_sidescroller for platformers and create_isometric_tile or create_tiles_pro for isometric, showing clear resource and verb specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly tells when to use this tool: 'Use this for RPG/strategy maps.' It also explicitly states alternatives for different game styles: 'For platformer/sidescroller games use create_tileset_sidescroller. For isometric games use create_isometric_tile or create_tiles_pro.' This provides comprehensive usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_tileset_sidescrollerA
Create a SIDESCROLLER/PLATFORMER tileset with terrain and transitions (16x16 or 32x32 tiles). Side-view perspective only. Use this for platformer games. For top-down RPG maps use create_tileset instead.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| tile_size | Yes | Tile dimensions (16x16 or 32x32) | |
| color_image | No | Color palette reference image | |
| tile_strength | No | Tile pattern strength (0.1-2, default 1) | |
| transition_size | No | 0.25-1.0 (default 0.5) | |
| lower_description | Yes | Base terrain description | |
| tileset_adherence | No | Adherence to tileset patterns (0-500, default 100) | |
| lower_base_tile_id | No | ID of existing lower base tile to use | |
| text_guidance_scale | No | How closely to follow text (1-20, default 8) | |
| lower_reference_image | No | Reference image for lower terrain style | |
| transition_description | No | Transition description | |
| tileset_adherence_freedom | No | Freedom from tileset constraints (0-900, default 500) | |
| transition_reference_image | No | Reference image for transition style |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It only states what the tool creates, not behavioral aspects like idempotency, permissions, rate limits, or side effects. Lacks disclosure of any destructive or mutational traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load essential purpose and usage distinction. No redundant information; every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 16 parameters and no output schema, description is very brief. It covers purpose and usage well but does not explain return value, parameter relationships, or process. Schema coverage helps, but more context would be beneficial for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions, so baseline is 3. Description adds no additional meaning beyond the schema; it only reiterates tile sizes already defined in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool creates a sidescroller/platformer tileset with terrain and transitions, specifies tile sizes (16x16 or 32x32) and perspective (side-view only). Explicitly distinguishes from sibling create_tileset for top-down RPG maps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use (platformer games, side-view) and when-not-to-use (top-down RPG maps, use create_tileset). Also states tile size constraints, giving clear context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_tiles_proA
Create professional tiles. Types: hex, hex_pointy, isometric, octagon, square_topdown. Size 16-128px (32px recommended).
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| n_tiles | Yes | Number of tiles to generate | |
| tile_size | Yes | Tile size in pixels (16-128, default 32) | |
| tile_type | Yes | Type of tile | |
| tile_view | No | Camera perspective for tiles | |
| description | Yes | Tile description | |
| tile_height | No | Tile height in pixels (16-128) | |
| style_images | No | Style reference images (JSON string) | |
| style_options | No | Style options (JSON string) | |
| tile_view_angle | No | View angle in degrees (0-90) | |
| tile_depth_ratio | No | Depth ratio (0-1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without any annotations, the description carries the full burden of behavioral disclosure. It only mentions the tile types and size range, but fails to indicate side effects, permission requirements, resource consumption, or how optional parameters like style_images affect behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—only two sentences—yet conveys essential information (tile types, size range, recommendation) without any redundant or extraneous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 11 parameters and no output schema, the description covers the core purpose and common options but omits context for advanced parameters (e.g., tile_view, style_images, tile_height). It is adequate but not thorough for a tool with many optional inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 11 parameters. The description adds value by recommending a tile size of 32px and explicitly listing the tile types, providing guidance beyond the schema's enum and default values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates 'professional tiles' and lists the five supported tile types (hex, hex_pointy, isometric, octagon, square_topdown), which distinguishes it from sibling tools like create_isometric_tile or create_tileset that focus on specific tile types or collections.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool by listing the tile types it supports, but does not explicitly contrast with alternatives or provide when/when-not guidance. It lacks direction on choosing this over other tile creation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_ui_assetA
Generate a shape-based pixel-art UI panel (Pro) from a text description — a persistent, saved UI asset (distinct from generate_ui, which is a one-shot generator). Returns a job_id and a ui_asset_id immediately; poll get_job_status or get_ui_asset until ready. Optionally scaffold the panel from named UI elements or a custom shape template.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Friendly name for the saved asset | |
| seed | No | Seed for deterministic generation (default 0) | |
| pieces | No | Optional custom shape template. Each piece needs a unique id, a kind, and an optional label. Coords are on a virtual canvas where the longer side spans 0–512 and the shorter side scales to the output aspect ratio. kinds: rounded_rect {x,y,w,h,radius}, circle {x,y,r}, polygon {x,y,r,sides,phase}. | |
| elements | No | Optional named UI element types to scaffold the panel from (auto-positioned, no coords needed). Combine with pieces for custom shapes; omit both for a default full-canvas panel. | |
| image_size | No | Output size in pixels, 192–688 per axis (max per axis depends on aspect; default 256×256) | |
| project_id | No | If set, assign the finished asset to this project | |
| description | Yes | Style description for the UI panel (e.g. 'wooden RPG panel with gold trim') | |
| style_image | No | Optional style reference image (PNG/JPEG) | |
| color_palette | No | Optional palette specification (e.g. 'brown and gold') | |
| no_background | No | Generate with transparent background |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It correctly discloses the async behavior (returns IDs immediately, poll status) and notes it's a 'Pro' feature. However, it lacks details on error handling, rate limits, or authorization.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences convey purpose, distinction, return flow, and customization. No wasted words. Front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 params, no output schema, and nested objects, the description covers workflow (generate, poll), distinction from generate_ui, and optional scaffolding. Missing error handling details but adequate for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds high-level context for key parameters (description, elements, pieces) but doesn't elaborate on all 10 params. It meets the baseline by not repeating schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it generates a persistent, saved UI asset from a text description, using specific verbs and resources. It clearly distinguishes from generate_ui (one-shot generator).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description directly compares with generate_ui, indicating when to use this tool for persistent assets. It also outlines the polling workflow, providing context for usage. No explicit exclusions, but clear guidance overall.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_characterC
Delete a character by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| character_id | Yes | Character ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states 'Delete' without mentioning side effects, idempotency, or error behavior. This is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. However, it lacks necessary detail, making it less useful than it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple deletion tool with one parameter and no output schema, the description fails to explain success/error outcomes, any restrictions, or additional context needed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no semantic value beyond what the schema already provides ('Character ID').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete'), the resource ('a character'), and the method ('by ID'). It effectively distinguishes from siblings like list_characters or get_character.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, prerequisites (e.g., character must exist), or consequences of deleting a non-existent character.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_character_animationsA
Delete animations from a character. Omit all optional filters to delete every animation; pass animation_type and/or animation_group_id (both shown by get_character) to narrow it, and direction to remove a single direction only.
| Name | Required | Description | Default |
|---|---|---|---|
| direction | No | Single direction to delete (e.g. 'south'). Omit for all directions | |
| character_id | Yes | Character ID | |
| animation_type | No | Animation type shown by get_character (e.g. 'walk', 'idle') | |
| animation_group_id | No | Animation group UUID shown by get_character as [group: ...] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It discloses that omitting all filters deletes every animation on the character, which is important destructive behavior. It explains the effect of each filter, but could mention if deletion is irreversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose, second explains usage variants. No unnecessary words, front-loaded with key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 params (1 required) and no output schema, the description comprehensively covers behavior for all usage scenarios (delete all vs. selective with filters). No ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds value by explaining how parameters interact (omitting all deletes all, using filters narrows) and referencing get_character as the source for animation_type and animation_group_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete) and resource (animations from a character). It differentiates from siblings like delete_character or delete_object_animations by detailing how to narrow deletion using specific filters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly explains when to delete all animations (omit optional filters) versus selectively delete by animation_type, animation_group_id, or direction. Provides clear guidance on how to narrow the operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_isometric_tileB
Delete an isometric tile by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| tile_id | Yes | Isometric tile ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates deletion (destructive action) but lacks details on irreversibility, cascading effects, required permissions, or error handling. Without annotations, the description carries full burden and falls short.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that directly states the action and resource. There is no redundant information, making it highly concise and efficiently front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple input schema (1 parameter, no output schema), the description is minimally adequate, but lacks usage context and behavioral details that would help an agent choose correctly among numerous deletion sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'tile_id' has a schema description 'Isometric tile ID', which covers the parameter's purpose. The tool description adds no new information beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and the resource (isometric tile) along with the method (by ID). It effectively distinguishes from siblings like 'delete_tiles_pro' which likely operates on different tile types or in bulk.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'delete_tiles_pro'. There is no mention of prerequisites, side effects, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_objectC
Delete an object by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| object_id | Yes | Object ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, placing full burden on description. The description does not disclose any behavioral traits such as whether deletion is permanent, requires authorization, or has side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a single sentence. However, this conciseness comes at the cost of missing critical details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a deletion tool with no output schema and simple parameters, the description should at least mention irreversibility or permissions. It is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but the description adds no value beyond what is already in the schema. The parameter 'object_id' is simply restated as 'Object ID'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete an object by ID' clearly states the verb and resource, but does not differentiate from sibling tools like 'delete_tiles_pro' or 'delete_ui_asset'. It lacks specificity about which type of 'object' is being deleted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description provides no context about when deletion is appropriate or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_object_animationsA
Delete animations from an object. Omit all optional filters to delete every animation; pass animation_type and/or animation_group_id (both shown by get_object) to narrow it, and direction to remove a single direction only.
| Name | Required | Description | Default |
|---|---|---|---|
| direction | No | Single direction to delete (e.g. 'south'). Omit for all directions | |
| object_id | Yes | Object ID | |
| animation_type | No | Animation type shown by get_object (e.g. 'walk', 'idle') | |
| animation_group_id | No | Animation group UUID shown by get_object as [group: ...] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. It describes deletion behavior with filtering but does not disclose whether it's destructive, reversible, or requires permissions. The deletion nature is implied but not detailed beyond the action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded, no filler. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 params (1 required) and no output schema, the description sufficiently covers all parameters and usage patterns, leaving no ambiguity for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds value by explaining how filters work together and references get_object for obtaining values, which is not in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete animations from an object' with a specific verb and resource. It distinguishes from sibling tools like delete_character_animations and delete_object.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on when to use each optional filter: 'Omit all optional filters to delete every animation; pass animation_type and/or animation_group_id to narrow it, and direction to remove a single direction only.' Does not state when not to use, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_tilesetA
Delete a top-down tileset by ID. For sidescroller tilesets use delete_tileset_sidescroller.
| Name | Required | Description | Default |
|---|---|---|---|
| tileset_id | Yes | Tileset ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavior. It states 'Delete', implying destructive action, but fails to mention whether the deletion is permanent, reversible, or if it cascades to associated data like tiles.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences: the first states the core action, the second provides the sibling alternative. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with one parameter and no output schema, the description provides the essential purpose and sibling differentiation. Lacks behavioral details but adequate for a straightforward operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (tileset_id described as 'Tileset ID'). The description adds no additional meaning beyond the schema, as it merely reiterates 'by ID'. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action 'Delete', the resource 'top-down tileset', and the identifier 'by ID'. It distinguishes this tool from its sibling 'delete_tileset_sidescroller' by indicating top-down vs sidescroller.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly directs users to use 'delete_tileset_sidescroller' for sidescroller tilesets, providing clear guidance on when to avoid this tool. However, it does not elaborate on prerequisites or other exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_tileset_sidescrollerA
Delete a sidescroller tileset by ID. For top-down tilesets use delete_tileset.
| Name | Required | Description | Default |
|---|---|---|---|
| tileset_id | Yes | Sidescroller tileset ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states the destructive action without disclosing additional behaviors like reversibility, permissions, or side effects. The statement is accurate but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff. The first sentence states the core action, and the second provides a useful alternative for a related tool. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one required parameter and no output schema, the description is complete enough. It explains the tool's purpose and usage context. No elaboration on return values is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents the parameter. The description mentions 'by ID' but adds no semantic value beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete), resource (sidescroller tileset), and method (by ID). It also distinguishes from the sibling tool delete_tileset for top-down tilesets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells when to use this tool (for sidescroller tilesets) and when not to (for top-down tilesets, use delete_tileset), providing direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_tiles_proB
Delete a pro tile by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| tile_id | Yes | Tiles pro ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the basic action without mentioning irreversibility, permissions, or side effects. For a delete operation, more transparency is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (5 words) with no fluff. It is appropriately short for a simple delete operation, though it could be slightly more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required param, no output schema), the description is barely adequate. It fails to mention that deletion is likely irreversible or any prerequisites, which are important for a destructive action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the sole parameter tile_id is described). The description adds no additional meaning beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Delete' and the resource 'pro tile' with the identifier 'by ID'. It distinguishes from sibling tools like delete_tileset and delete_isometric_tile which operate on different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no context on prerequisites or conditions, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_ui_assetA
Permanently delete a UI panel and its backing image files.
| Name | Required | Description | Default |
|---|---|---|---|
| ui_asset_id | Yes | UI asset ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations exist, the description carries the full burden. It reveals that the action is permanent and affects both the UI panel and backing image files. However, no details about permissions, reversibility, or side effects are provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that delivers the key information without extra words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers the essential behavior: deletion of the panel and its backing images. It is sufficiently complete for an AI agent to understand the tool's effect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'ui_asset_id'. The tool description does not add any additional meaning beyond what is in the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'delete' and the resource 'UI panel and its backing image files'. It specifies the permanent nature and distinguishes from other delete tools that might not affect backing files.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like delete_tiles_pro or delete_character_animations. The description does not mention prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dismiss_object_reviewB
Dismiss the review state on an object, accepting it as-is without selecting specific frames. Takes no body beyond the object_id.
| Name | Required | Description | Default |
|---|---|---|---|
| object_id | Yes | ID of the object to dismiss review for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It states the tool dismisses review state and accepts as-is, but omits important details such as whether the action is destructive, if it requires special permissions, or any side effects. For a state-changing mutation, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, very concise and front-loaded. Every word serves a purpose. However, the description could have been slightly more informative without becoming verbose, e.g., clarifying the outcome or permissions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema, no annotations), the description covers the basic action but lacks completeness in behavioral context. It does not explain what happens after dismissal or whether it can be reverted, which is important for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter with a description). The description adds 'Takes no body beyond the object_id', which restates the schema's implication that only object_id is needed. This adds minimal additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb 'dismiss' and the resource 'review state on an object', clearly differentiating from sibling tools like select_object_frames. It specifies the action 'accepting it as-is without selecting specific frames', which is unique among object-related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (when dismissing review without selecting frames) but provides no explicit guidance on when not to use or alternatives. Among siblings, select_object_frames is a related alternative, but this is not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
download_character_zipA
Download a character as a ZIP file with all sprites and metadata. Saves it to the pixellab-forge-output directory and returns the file path.
| Name | Required | Description | Default |
|---|---|---|---|
| character_id | Yes | Character ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses a side effect: 'Saves it to the pixellab-forge-output directory and returns the file path.' However, it does not mention potential overwrites, idempotency, or permission requirements. The download action implies a read operation, but no destructive hint is given.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the key action, and contains no extraneous information. Every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers the main function, side effect, and return value. It could mention error cases (e.g., if character_id does not exist) but is otherwise complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter). The description does not add meaning beyond the schema's 'Character ID' description. No format, origin, or context is provided for the ID, which is adequate but not enhanced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Download a character as a ZIP file with all sprites and metadata' with a specific verb ('download') and resource ('character as a ZIP'). It distinguishes from sibling tools like list_characters (listing) and get_character (retrieving data, not a zip). The action and result are clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like get_character or delete_character. It does not specify prerequisites (e.g., the character must already exist) or exclude scenarios where this tool would be inappropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_animationA
Edit an existing animation sequence (2-16 frames) using a text description. 16-256px. Use this to modify animations you already have — to create new animations from scratch use animate_with_text_v2 or animate_character.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| frames | Yes | Animation frames (2-16) | |
| image_size | Yes | Frame dimensions (16-256px) | |
| description | Yes | Edit description | |
| no_background | No | Generate with transparent background |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose whether the edit replaces the original animation or creates a new one, any required permissions, idempotency, or side effects. The lack of behavioral context is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences convey purpose, constraints, and usage guidelines with zero redundancy. Information is front-loaded and each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of an edit tool with nested parameters and no output schema, the description is too brief. It omits details about return values, prerequisites (e.g., needing an animation ID from another tool), and how the edit process works (e.g., overwrites existing frames).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already well-documented. The description adds only minor reinforcement of frame count and size ranges. No additional semantic value beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Edit an existing animation sequence' with specific constraints (2-16 frames, 16-256px). It clearly distinguishes from sibling creation tools by naming alternatives (animate_with_text_v2, animate_character).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use ('modify animations you already have') and when-not-to-use ('to create new animations from scratch use...') guidance, directly naming the appropriate sibling tools as alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_imageA
Edit a single image globally using a text description (e.g. 'add a hat', 'change colors'). 16-400px. For editing a specific REGION use inpaint_v3 with a mask instead. For batch-editing multiple images at once use edit_images.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| image | Yes | Image to edit | |
| width | Yes | Target canvas width (16-400px) | |
| height | Yes | Target canvas height (16-400px) | |
| image_size | Yes | Current image dimensions | |
| color_image | No | Color reference image | |
| description | Yes | Edit description | |
| no_background | No | Generate with transparent background | |
| text_guidance_scale | No | How closely to follow text (1.0-10.0, default 8) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions global edit and size constraints but does not describe return value, potential side effects, or authentication needs. Lacks detail for a mutation tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste. Purpose and alternatives are front-loaded. All text adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exits, so description should explain return value, but it doesn't. Also lacks description of color_image parameter's role. Incomplete for a tool with 9 params and nested objects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds minimal value beyond schema—just an example and size range. Does not compensate for missing param context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool edits a single image globally using a text description, provides examples, and distinguishes it from sibling tools like inpaint_v3 and edit_images.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says when to use alternatives: inpaint_v3 for region edits and edit_images for batch edits, making guidance very clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_imagesA
Batch-edit 1-16 images consistently using text or a reference image. Use this for editing animation frames or sprite sets uniformly. Output 32-512px, input max 256px each. Max frames by output size: 32-64px → 16, 65-80px → 9, 81-128px → 4, 129-512px → 1. For single image edits use edit_image instead.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| method | Yes | ||
| image_size | Yes | Output size 32x32 to 512x512 | |
| description | No | Edit description (for edit_with_text) | |
| edit_images | Yes | 1-16 images to edit with dimensions | |
| no_background | No | Generate with transparent background | |
| reference_image | No | Style reference with dimensions (for edit_with_reference) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description shares important constraints (input max 256px, output 32-512px, frame limits by output size) but does not disclose return format, mutability, or whether results are returned directly or as jobs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two focused sentences plus a concise constraint table and sibling directive. No wasted words; critical information front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, description covers constraints and use-case well, but omits what the tool returns (e.g., edited images or job IDs). Still sufficient for selection and basic invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage high (86%); description adds value by specifying batch range (1-16) and output-size constraints, and explains method enum choices. Still, some parameters like seed lack elaboration beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states batch-editing 1-16 images consistently, with text or reference image, for animation frames or sprite sets. Specifically distinguishes from sibling 'edit_image' tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool (for uniform edits on multiple images) and when to use alternative (single image edits use edit_image instead).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enhance_animation_promptA
Expand a short action description into a richer motion prompt for animate_with_text_v3. Provide the first frame (and optional last frame for interpolation). Returns enhanced text — does not generate frames.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Action description to enhance (e.g. 'walking', 'sword swing') | |
| last_frame | No | Optional end frame; when provided the prompt describes the interpolated motion | |
| first_frame | Yes | Starting frame image |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that it does not generate frames, only returns text. Lacks details on side effects or permissions, but reasonable for a text transformation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the core purpose, include key details, and avoid redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and description only says 'Returns enhanced text' without specifying format or type. For a tool with nested object parameters, the return value is underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description adds context that last_frame is for interpolation, but doesn't provide additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it expands a short action into a richer motion prompt for animate_with_text_v3, with specific inputs (first frame, optional last frame) and output (enhanced text, not frames). It distinguishes itself from frame generation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly indicates it is a helper for animate_with_text_v3, implying usage before that tool. Does not mention alternatives or when-not-to-use, but context is clear from the purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enhance_character_promptA
Expand a short character description into a richer, more detailed prompt for create_character_v3. Returns enhanced text — does not generate an image. Use this to preview/refine a prompt before generating.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | Camera view (default 'low top-down') | |
| detail | No | Detail level hint | |
| outline | No | Outline style hint | |
| image_size | Yes | Output frame size, 32-256px (advisory) | |
| description | Yes | Character description to enhance |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It clearly states that the tool does not generate an image and returns enhanced text, which is the key behavioral trait. No side effects or permissions are mentioned, but for this tool, that seems acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the purpose and target tool, then providing usage guidance. Every word is meaningful and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters and no output schema, the description provides sufficient context: it explains the tool's output (text), its non-generative nature, and its relation to create_character_v3. However, it could briefly mention the output format or constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds limited value over the schema. The description implies that parameters are used to create a richer prompt, but does not add specific meaning per parameter. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'expand' and the resource 'character description', and specifies it is for create_character_v3. It distinguishes from image generation tools by noting it returns text only.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this to preview/refine a prompt before generating', providing clear context for when to use the tool. However, it does not mention alternatives or when not to use it, though the sibling list includes other enhance prompts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enhance_pixen_promptA
Expand a short image description into a richer prompt for create_image_pixen. Returns enhanced text — does not generate an image.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | Camera perspective | |
| detail | No | Detail level (default 'highly detailed') | |
| outline | No | Outline style | |
| direction | No | Character facing direction | |
| image_size | Yes | Width/height each 16-768, max area 512x512, both divisible by 4 | |
| description | Yes | Image description to enhance | |
| no_background | No | Enhanced description targets a plain background (default false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description accurately discloses the tool's non-generative nature (does not create an image). While it omits details like authentication or rate limits, the behavior is simple and sufficiently transparent for a text enhancement utility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with key information front-loaded. Every word serves a purpose, and the structure efficiently conveys the tool's role and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's relatively simple function, the description is adequate. However, it could briefly mention that the output is a text prompt ready for create_image_pixen, which is implied but not stated. Overall, it covers the essential context for usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all 7 parameters, so the description adds no extra parameter-level information. The baseline score of 3 is appropriate given the schema already provides full parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it expands short descriptions into richer prompts for create_image_pixen, specifying the verb, resource, and distinguishing it from image generation tools. It also implicitly differentiates from other prompt enhancers (enhance_character_prompt, enhance_animation_prompt) by targeting pixen prompts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly positions this tool as a pre-step for create_image_pixen and notes it returns text, not an image. It lacks explicit when-not-to-use guidance or alternative tool mentions, but the context is clear enough for most agents.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
estimate_skeletonB
Estimate skeleton keypoints from a character image.
| Name | Required | Description | Default |
|---|---|---|---|
| image | Yes | Character image |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior but only states the basic function. It does not mention whether the tool is synchronous or asynchronous, what the output format is, whether it consumes resources, or any side effects (e.g., no destructive hint). The agent is left guessing about the tool's execution model and return value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. Every word adds value, and it is highly scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, the description is adequate but incomplete. It does not explain what 'skeleton keypoints' are or what the output looks like, which could be critical for the agent to correctly process the result. The absence of an output schema makes this gap more significant.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description does not need to repeat parameter details. However, it adds no additional meaning beyond the schema's 'Character image' description. The baseline score of 3 is appropriate as the description is sufficient but not enhancing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Estimate'), the resource ('skeleton keypoints'), and the input source ('from a character image'). It effectively distinguishes from sibling tools like 'animate_with_skeleton' which uses skeleton data rather than estimating it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as when to estimate skeleton keypoints before animation or when other body estimation tools might be more appropriate. Prerequisites or post-processing steps are not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_8_rotationsA
Generate 8 directional views from an existing image, style, or concept art. 32-168px. Does NOT create a persistent character — for that use create_character_8dir instead. Methods: rotate_character (from existing sprite), create_with_style (from description), create_from_concept (from concept art).
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| method | Yes | Generation method | |
| image_size | Yes | 32x32 to 168x168 | |
| description | No | For create_with_style: character description | |
| concept_image | No | For create_from_concept: concept art | |
| no_background | No | Generate with transparent background | |
| reference_image | No | For rotate_character: character image with dimensions | |
| style_description | No | Style description for the character |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility. It discloses the output (8 directional views) and size range, but does not mention whether the tool is read-only or mutating, what permissions are needed, or whether it's synchronous/asynchronous. The description is adequate but lacks depth on behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise—only three sentences that immediately convey the core purpose and key distinctions. Every sentence adds value without unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 parameters, multiple methods, nested objects), the description provides a high-level overview but does not map methods to their required parameters. While the schema is detailed, the description could better guide users on which parameters are needed for each method, especially since required parameters vary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value by grouping methods with their sources (e.g., 'rotate_character (from existing sprite)'), which clarifies the intended use of associated parameters like 'reference_image'. This extra context justifies a higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates 8 directional views from various sources, and distinguishes from a sibling tool (create_character_8dir) that creates a persistent character. The verb 'generate' and resource '8 directional views' are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says when not to use the tool and provides a direct alternative ('use create_character_8dir instead'). It also outlines the three methods, helping users choose the right approach. However, it could be more explicit about when to use each method based on the user's input type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_8_rotations_v3A
Generate 8 directional rotations from a single source frame using the v3 model. Simpler than generate_8_rotations — just provide one image and the model produces all 8 views. Does NOT create a persistent character; use create_character_8dir for that.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for reproducible generation (0 for random, default 0) | |
| first_frame | Yes | Source frame to rotate into 8 directions | |
| no_background | No | Remove background from generated frames |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses a key behavioral trait (does not create persistent character) but does not explain what happens to the generated images (e.g., returned or saved), output format, or any potential rate limits or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and contains no superfluous information. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description correctly distinguishes from siblings but fails to explain the return value (no output schema). For a tool with 3 parameters and no output schema, it should clarify how the generated images are returned (e.g., URLs, base64 data). This gap makes it moderately incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are already documented. The description adds 'just provide one image' which aligns with the 'first_frame' parameter but does not add meaningful semantic depth beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates 8 directional rotations from a single source frame using the v3 model. It distinguishes itself from the sibling 'generate_8_rotations' by claiming it is simpler, and from 'create_character_8dir' by stating it does not create a persistent character.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use this tool vs alternatives: it compares with 'generate_8_rotations' (simpler) and explicitly recommends using 'create_character_8dir' for persistent characters. However, it does not mention any prerequisites or conditions (e.g., image requirements).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_font_proA
Generate a styled pixel-art font (Pro) from a text description. Produces a glyph atlas plus a ready-to-use TrueType (.ttf) font. Returns a job_id immediately — poll get_job_status for the result.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| weight | Yes | Stroke weight; guides glyph thickness | |
| glyph_px | No | Native glyph resolution in pixels — the real bitmap size per glyph in the output (default 16) | |
| font_name | No | Explicit font family name; defaults to '{description} {weight}' | |
| image_size | No | Generation resolution tier / pricing key (default '1K'). 1K costs fewer generations | 1K |
| description | Yes | Style description, e.g. 'warm orange arcade font' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the async nature (returns job_id) and the need for polling, but does not mention potential failures, rate limits, or cost implications beyond what is hinted in the image_size parameter description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. It front-loads the purpose and immediately provides the key behavioral information (async, polling). Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description sufficiently describes the outputs (glyph atlas + .ttf). It could mention how to use the result or what the job status returns, but the polling tool (get_job_status) is a sibling. The description is adequate for an agent to understand the workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description does not add new meaning to individual parameters; it only restates the main input 'description'. It does not explain parameters like seed, weight, or glyph_px beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the action (generate font), the input (text description), and the outputs (glyph atlas and .ttf font). It clearly distinguishes from sibling tools as it's the only font generation tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells the agent to poll get_job_status for the result, providing a clear next step. However, it does not specify when not to use this tool or contrast with other generation tools, though no sibling font tools exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_imageA
Generate pixel art from a text description. PRIMARY generation tool — use this for standalone sprites, icons, and one-off images. 16-512px. Variants by size: ≤42px → 64, 43-85px → 16, 86-170px → 4, >170px → 1. For style-matched sets use generate_with_style. For game characters with directional views use create_character_4dir/8dir instead. For UI elements use generate_ui.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| image_size | Yes | Output image dimensions | |
| description | Yes | Text description of the pixel art to generate | |
| style_image | No | Style reference image for consistent pixel art style | |
| no_background | No | Generate with transparent background | |
| style_options | No | Options controlling what to copy from the style image | |
| reference_images | No | Up to 4 reference images for subject guidance |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It adds size range and variant count rules but does not disclose output format, latency, or potential side effects. Some behavioral insight but insufficient depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Highly concise: two sentences plus brief directives. Front-loaded with purpose, then usage guidelines, then size info, then alternatives. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose and usage well, but lacks description of return values (no output schema) and the variant numbers are ambiguously explained. Missing details on output format and behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (baseline 3). The description adds behavioral context for image_size via the variant mapping (e.g., ≤42px → 64), which enhances understanding beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Generate pixel art from a text description' and specifies it's for 'standalone sprites, icons, and one-off images', distinguishing it from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides when to use (standalone) and when not to (style-matched sets, characters, UI) with named alternative tools like generate_with_style and create_character_4dir.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_uiA
Generate pixel art UI elements for games — buttons, panels, health bars, inventory slots, icons, frames. Use this instead of generate_image when creating interface/HUD elements. Min 16x16, max 512x512.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| image_size | Yes | Output dimensions (min 16x16) | |
| description | Yes | UI element description (e.g. 'medieval stone button with gold trim') | |
| color_palette | No | Color palette description (e.g. 'brown and gold') | |
| concept_image | No | Design guidance image | |
| no_background | No | Generate with transparent background |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It mentions size constraints (min/max) and default transparency, but does not explain whether the tool is destructive, requires authentication, or what side effects occur (e.g., saving an asset). This leaves gaps in transparency for a generation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two focused sentences. The first sentence covers purpose and examples, the second provides usage guidance and constraints. No unnecessary words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 6 parameters (including nested objects) and no output schema, the description fails to explain what the tool returns—whether it generates an image, saves a UI asset, or something else. This omission makes it incomplete for an agent to understand the tool's full effect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds context about UI elements and size limits, but the input schema already describes parameters adequately. No additional parameter semantics beyond what schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates pixel art UI elements for games and lists specific examples like buttons, panels, and health bars. It also explicitly distinguishes itself from the sibling tool 'generate_image', making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool ('instead of generate_image when creating interface/HUD elements'), which differentiates it from a key sibling. However, it does not cover when not to use it or mention other alternatives, which would strengthen this dimension.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_with_styleA
Generate pixel art matching a specific visual style from 1-4 style reference images. Use this when you need consistent style across multiple assets. SQUARE images only, 16-512px. Auto-pads to nearest bucket (16/32/64/128/256/512). Variants: 16-32px → 64, 33-64px → 16, 65-128px → 4, 129-512px → 1.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| image_size | Yes | Output dimensions (square, 16-512px) | |
| description | Yes | What to generate | |
| style_images | Yes | 1-4 style reference images | |
| no_background | No | Generate with transparent background | |
| style_description | No | Fine-tune style matching details |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It discloses auto-padding to nearest bucket and variant counts based on size. It also states 'SQUARE images only.' However, it does not clarify what happens if non-square input is given or the exact output structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences and a variant mapping line. It is front-loaded with the core purpose and usage guideline, without unnecessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers inputs and key behaviors but lacks output specification. Without an output schema, the agent may not know what the result contains (e.g., single image or list of variants). Complexity is moderate, but more detail on return value would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds some behavioral context (auto-padding, variants) but does not elaborate on individual parameter meanings beyond what schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates pixel art matching a specific visual style from style reference images. This verb+resource combo distinguishes it from sibling tools like general image generation or style-transfer tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this when you need consistent style across multiple assets.' It also constrains usage to square images of 16-512px. However, it does not mention when not to use or list alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_balanceA
Get your current PixelLab credit balance
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description does not explicitly state it's a read-only operation, but the name and context imply it. Some additional safety disclosure would be ideal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple no-parameter tool that returns a balance, the description is complete. It specifies what the tool does and the expected result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters in the schema, so baseline is 4. The description correctly avoids mentioning any, as there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the current credit balance. It uses a specific verb+resource and is easily distinguishable from the many sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when or when not to use, but for a simple balance check the context is clear. No alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_characterA
Get a character by ID including all directional views and animations.
| Name | Required | Description | Default |
|---|---|---|---|
| character_id | Yes | Character ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It mentions the output includes directional views and animations but fails to specify if it's a read-only operation, authentication needs, or any side effects. The description is minimally transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the main action and includes key details. Every word earns its place, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one required parameter and no output schema, the description adequately explains the purpose and output contents. It could be improved by noting that it is a read operation, but it is largely complete for a simple retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with a description for character_id. The description adds 'by ID', which matches the parameter but does not provide additional meaning beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a character by ID including all directional views and animations' clearly states the action (Get), the resource (character by ID), and the scope (including all directional views and animations). It distinguishes from siblings like list_characters and creation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving a specific character, but it does not explicitly mention when to use this tool versus alternatives such as list_characters for browsing or other character-related tools. Some guidance would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_font_pro_jobA
Get the status and result of a generate_font_pro job by its job_id. Use this rather than get_job_status for font-pro jobs — they are served from a dedicated endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | Job ID returned by generate_font_pro |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It implies a read-only operation (getting status/result) and mentions a dedicated endpoint, but does not elaborate on rate limits, data freshness, or error behavior. Adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no extraneous words. The critical information is front-loaded: verb, resource, and usage guidance. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter, lack of output schema, and no annotations, the description covers all necessary context: what the tool does, what input it needs (from generate_font_pro), and when to use it. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for job_id. The description adds no additional meaning beyond restating that the tool takes a job_id. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'status and result of a generate_font_pro job', and explicitly distinguishes it from the sibling 'get_job_status' tool by specifying 'font-pro jobs'. This provides full clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this rather than get_job_status for font-pro jobs' and provides the reason 'they are served from a dedicated endpoint'. This gives clear when-to-use guidance and an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_isometric_tileA
Get a previously created isometric tile by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| tile_id | Yes | Isometric tile ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states 'Get a previously created isometric tile,' which is a simple read operation. No behavioral details like authentication, rate limits, or side effects are disclosed, but for a retrieval tool, this is minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has one simple parameter and no output schema. The description is basic but sufficient for a straightforward retrieval operation. However, it does not mention the return format or any related context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the tile_id parameter already described as 'Isometric tile ID.' The description adds no additional meaning beyond 'by ID,' which is redundant. Baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a previously created isometric tile by ID' clearly states the verb ('Get') and resource ('isometric tile by ID'). It distinguishes from sibling tools like create_isometric_tile and list_isometric_tiles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have a tile ID, but does not provide explicit guidance on when to use this tool versus alternatives (e.g., list_isometric_tiles). No when-not or context is mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_job_statusA
Check the status of a background job and retrieve its results when complete. All creation tools return a job_id immediately — use this tool to poll for completion and get the generated images/data.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The background job ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. States it polls and returns data, but doesn't disclose idempotency, rate limits, or error handling. Adequate for a simple status check.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, and zero wasted words. Highly concise and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description hints at return values (generated images/data). Covers essential flow but could mention polling frequency or timeout. Adequate for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with a description of job_id. Description adds context about where the job_id comes from (creation tools), but no extra meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it checks status and retrieves results, and explains the relationship with creation tools. Distinguishes itself as the polling tool for async jobs 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use after creation tools return a job_id to poll for completion. Lacks explicit when-not-to-use or alternatives, but context is clear given sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_map_objectA
Get a map object's status and metadata by ID (from create_map_object).
| Name | Required | Description | Default |
|---|---|---|---|
| object_id | Yes | Map object ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implies a read-only operation with no side effects, but does not explicitly state that it is safe, idempotent, or what happens on invalid input. For a simple read tool, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words, efficiently conveying the tool's purpose and a key usage hint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter getter with no output schema, the description adequately indicates it returns 'status and metadata', but lacks details on return format, potential errors, or pagination (if any). It is mostly complete for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with a simple description for object_id, but the tool description adds the context that the ID comes from create_map_object, which provides meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'map object's status and metadata by ID', with a parenthetical referencing 'from create_map_object' which differentiates it from sibling tools like list_objects and get_object for other object types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context that this tool is used after creating a map object to retrieve its status and metadata, but does not explicitly state when not to use it or mention alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_objectC
Get an object by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| object_id | Yes | Object ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description fails to disclose read-only nature, error handling, authorization, or rate limits. Merely states action without behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is efficient and front-loaded. No wasted words, though could benefit from slightly more context without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, description is incomplete. Does not explain return format, error cases, or side effects. Inadequate for a 1-param tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers one parameter with description 'Object ID'. The tool description adds no extra meaning, format examples, or clarification beyond the schema. Schema coverage is 100%, so baseline is 3, but description adds zero value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Get an object by ID' with specific verb and resource. Among siblings, it distinguishes from list_objects which lists all objects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like list_objects or get_character. No context on prerequisites or use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_portrait_character_pro_jobA
Get the status and result of a portrait_character_pro job by its job_id. Use this rather than get_job_status for portrait↔character jobs — they are served from a dedicated endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | Job ID returned by portrait_character_pro |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description indicates it is a read operation retrieving status and result, but does not disclose additional behavioral traits such as rate limits, authentication requirements, or side effects. It mentions a dedicated endpoint but without further details, so transparency is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence states the purpose, the second provides usage guidance. Perfectly front-loaded and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple polling tool with one parameter and no output schema, the description is fairly complete. It covers what it does, how to use it, and when to prefer it. It could mention the nature of the result or error handling, but not critical. Overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter job_id, with schema already describing it as 'Job ID returned by portrait_character_pro'. The description does not add further semantics beyond restating that it's the job_id. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets status and result of a specific job type (portrait_character_pro job), using the verb 'Get' and the resource 'status and result of a portrait_character_pro job'. It also explicitly distinguishes from sibling get_job_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises when to use this tool: 'Use this rather than get_job_status for portrait↔character jobs — they are served from a dedicated endpoint.' This provides clear guidance and names the alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tilesetB
Get a previously created tileset by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| tileset_id | Yes | Tileset ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden. It only states the basic purpose (get by ID) without disclosing side effects, rate limits, or authentication requirements. For a read operation, the risk is low, but additional context would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded and contains no unnecessary words. It efficiently communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter read tool with no output schema, the description is adequate. However, it could mention that the tool returns the tileset details, which would provide completeness given the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter described as 'Tileset ID'. The description aligns with this but adds no additional semantic information beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Get' and the resource 'previously created tileset by ID'. It effectively differentiates from sibling tools like create_tileset, list_tilesets, and delete_tileset.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as list_tilesets or other retrieval tools. No prerequisites or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tileset_sidescrollerA
Get a previously created sidescroller tileset by ID. For top-down tilesets use get_tileset.
| Name | Required | Description | Default |
|---|---|---|---|
| tileset_id | Yes | Sidescroller tileset ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose error behavior, return format, or any other behavioral context beyond 'Get'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: first states the purpose, second provides the alternative. Front-loaded and no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool with one parameter and no output schema, the description is almost complete. It lacks only a mention of what is returned (e.g., the tileset data).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description 'Sidescroller tileset ID' is already in the schema. The tool description adds no additional semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Get' and the resource 'sidescroller tileset', and distinguishes from the sibling tool 'get_tileset' for top-down tilesets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides when to use this tool (for sidescroller tilesets) and when not to (use get_tileset for top-down tilesets).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tiles_proB
Get previously created pro tiles by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| tile_id | Yes | Tiles pro ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It only states a read operation but does not disclose return format, error behavior, or any side effects. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no waste. Could be slightly more structured but adequate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple parameters and no output schema, description covers basic purpose but lacks details on return values or error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no extra meaning beyond the schema's 'Tiles pro ID' for tile_id. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Get', resource 'previously created pro tiles', and input 'by ID'. It distinguishes itself from sibling tools like list_tiles_pro and create_tiles_pro.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like list_tiles_pro. No context about prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_ui_assetB
Get a UI panel's details by ID. Reports progress while the panel is still generating.
| Name | Required | Description | Default |
|---|---|---|---|
| ui_asset_id | Yes | UI asset ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. It mentions progress reporting, which is helpful, but omits key behavioral traits such as read-only nature, authentication requirements, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that convey purpose and a notable behavior without any extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one parameter and no output schema, the description covers the core retrieval function and an interesting behavior (progress reporting). However, it lacks detail about what constitutes 'details' or expected response format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter described as 'UI asset ID'. The description adds no additional meaning beyond the schema, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves UI panel details by ID, with an added behavioral note about progress reporting. It distinguishes from sibling tools like list_ui_assets and delete_ui_asset by focusing on a single asset retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when needing details of a specific UI panel by ID, but does not provide explicit guidance on when to use vs alternatives or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_vocal_animation_jobA
Get the status and result of a vocal_animation job by its job_id. Mouth positions stream in as they are produced (completed_visemes fills up while the job runs). On completion, a character_id job has saved the set onto the character; a portrait job returns the frames in visemes.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | Job ID returned by vocal_animation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It transparently explains streaming behavior ('Mouth positions stream in as they are produced'), that completed_visemes fills during execution, and that the outcome differs depending on job type (character_id saves, portrait returns frames). This goes well beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, all information-dense, with zero filler. The structure front-loads the core purpose, then explains runtime behavior, then completion behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a simple one-parameter tool with no output schema, the description covers the essential behavior: how to identify the job, what streams during execution, and what happens on completion for both job types. Minor gaps exist (e.g., how to determine job failure or when to stop polling), but it is functionally complete for most use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter job_id already has a clear description ('Job ID returned by vocal_animation'). The tool description adds only mild redundancy ('by its job_id') and no new parameter-level detail, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and clearly identifies the resource ('status and result of a vocal_animation job by its job_id'). It also distinguishes this from the generic sibling get_job_status by scoping it to vocal_animation jobs and describing job-type-specific results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context implies it should be used after launching a vocal_animation job to poll for status/result, and it explains what happens during and after the job. However, it does not explicitly contrast it with the generic get_job_status sibling or state when NOT to use it, so the guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_to_pixelartA
Convert a photograph or regular image into pixel art. Input 16-1280px, output 16-320px. Recommended: output = 1/4 of input size.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| image | Yes | Source image to convert | |
| image_size | Yes | Input image dimensions | |
| output_size | Yes | Target pixel art size (max 320x320) | |
| text_guidance_scale | No | Pixel art style adherence (default 8.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions size ranges but does not describe the conversion process, output format, or any side effects. Lacks important safety indications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, no fluff. Purpose, constraints, and recommendation are presented concisely and front-loaded with the action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description should mention return type or format. It covers size constraints and recommendation but omits output details and any behavioral caveats. Adequate but incomplete for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, baseline 3. The description adds value by recommending a 1/4 size ratio, which helps the agent set sensible parameters, slightly exceeding baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool converts a photograph or regular image into pixel art, with specific size constraints. It distinguishes itself from the sibling 'image_to_pixelart_pro' by focusing on basic conversion and recommending output size ratio.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description provides a size recommendation but no guidance on when to use this tool versus alternatives like 'image_to_pixelart_pro' or other image editing tools. No explicit usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_to_pixelart_proA
Convert a photograph or regular image into pixel art using the Pro engine. The model derives output size from the input — you only supply the source image and optional style instructions. Higher quality than image_to_pixelart but less manual size control.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| image | Yes | Source image to convert | |
| description | No | Optional extra style instructions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, but the description discloses key behavioral traits: the model derives output size from input, and it has higher quality with less manual control. Does not detail potential side effects or exact output format, but is sufficient for safe usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no fluff. Front-loaded with the main action and key differentiator. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description does not specify what the tool returns (e.g., base64 PNG). However, for image conversion, it is reasonable to assume a pixel art image as output. The missing output info slightly reduces completeness, but overall it adequately covers the tool's role among many siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds extra context: 'you only supply the source image and optional style instructions' and 'model derives output size from the input', which clarifies parameter usage beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('convert'), resource (photograph/image to pixel art), and explicitly distinguishes from sibling 'image_to_pixelart' by mentioning 'Pro engine' and 'higher quality but less manual size control.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: 'you only supply the source image and optional style instructions' and contrasts with sibling ('Higher quality...but less manual size control'), indicating when to use vs. the alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inpaintA
Legacy inpainting using the Bitforge engine. Max 200x200. Prefer inpaint_v3 (up to 512px, better quality). Only use this if you need Bitforge-specific params like style controls or oblique projection during inpainting.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| detail | No | Detail level | |
| outline | No | Outline style | |
| shading | No | Shading style | |
| direction | No | Character facing direction | |
| isometric | No | Generate in isometric view (default false) | |
| image_size | Yes | Max 200x200 | |
| init_image | No | Initialization image | |
| mask_image | Yes | Mask image | |
| color_image | No | Color palette reference image | |
| description | Yes | What to generate | |
| no_background | No | Generate with transparent background | |
| inpainting_image | Yes | Image to edit | |
| oblique_projection | No | Use oblique projection (default false) | |
| init_image_strength | No | Initial image influence strength (0-1000, default 300) | |
| text_guidance_scale | No | Text prompt influence (1.0-20.0, default 3.0) | |
| extra_guidance_scale | No | Additional guidance (default 3.0) | |
| negative_description | No | What to avoid in generation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the burden. It reveals the engine, legacy status, and maximum size, but omits side effects, return format, authentication needs, or error behavior. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three focused sentences without filler, efficiently conveying purpose, limits, and when to use alternatives.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 19 parameters and no output schema, the description is minimal. It lacks details on return values, failure modes, parameter interactions, or comprehensive behavior, making it incomplete for fully autonomous use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds value by linking 'style controls' and 'oblique projection' to parameter groups (e.g., shading, outline, isometric, oblique_projection), providing context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as legacy inpainting using the Bitforge engine and distinguishes it from the preferred inpaint_v3 by noting size limits and Bitforge-specific capabilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to prefer inpaint_v3 (for better quality and up to 512px) and when to use this tool (when Bitforge-specific params like style controls or oblique projection are needed).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inpaint_v3A
Edit a specific region of a pixel art image using a mask. White mask = generate, black mask = preserve. Image 32-512px, optional context image up to 1024x1024. Preferred over legacy inpaint (which caps at 200px).
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| mask_image | Yes | Mask (white=generate, black=preserve) | |
| description | Yes | What to generate in the masked area | |
| bounding_box | No | Precise editing area within the image (deprecated) | |
| crop_to_mask | No | Whether to crop generated content to mask boundary (default true) | |
| context_image | No | Style guidance image (up to 1024x1024) (deprecated) | |
| no_background | No | Generate with transparent background | |
| inpainting_image | Yes | Image to edit |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Explains mask color meaning and size limits, but does not disclose if operation is destructive, asynchronous, or requires authentication. Lacks behavioral details like how results are returned (likely job ID, as sibling tools suggest). Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundancy. First sentence states core action and mask semantics. Second provides constraints and comparison to legacy. Well front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and description does not mention return value (likely a job ID given sibling tools). Omits async nature, job polling, or how to retrieve results. For an 8-parameter tool, this is a significant omission, leaving the agent uninformed about post-invocation steps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline 3. Description adds minimal extra value: only mentions deprecation for bounding_box and context_image (already in schema). No elaboration on seed, crop_to_mask, or no_background beyond schema. Fails to enhance semantic understanding significantly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool edits a specific region of a pixel art image using a mask, with explicit mask semantics (white generate, black preserve). Distinguishes from sibling 'inpaint' by noting it is preferred and has higher resolution limit (512px vs 200px).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit preference over legacy inpaint and size constraints (image 32-512px, context image up to 1024x1024). However, lacks guidance on when not to use (e.g., for non-pixel art) or prerequisites (e.g., need a mask). Nearly complete but missing exclusionary criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
interpolate_framesA
Generate intermediate animation frames between a start and end keyframe. 16-128px. Use this to smooth out animations by adding in-between frames. For full animation creation from a single image use animate_with_text_v2.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| action | Yes | Animation action description | |
| end_image | Yes | Last keyframe | |
| image_size | Yes | Frame size (16x16 to 128x128) | |
| start_image | Yes | First keyframe | |
| no_background | No | Generate with transparent background |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions size range and generation of in-between frames, but lacks details on number of frames, output format, or any constraints beyond the size limit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no redundancy; front-loaded with the core purpose and followed by usage guidance. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description covers basic purpose and size, it does not explain the action parameter's role or how many frames are generated. Given no output schema and nested inputs, more behavioral context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage, so the description adds minimal new information beyond repeating the size constraint already in the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates intermediate animation frames between keyframes, and distinguishes itself from animate_with_text_v2 for full animation creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (smooth out animations) and when not to (for full animation from single image use animate_with_text_v2), providing an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lip_syncA
Get the frame-by-frame lip-sync plan for a line of text — which mouth position to show, for how long, and how far through the text it lands. Free, and nothing is rendered: use this instead of talking_gif when animating in a game engine and driving the mouth yourself. Provide character_id (response also carries the spritesheet URL and row to read) or a bare viseme_count preset.
| Name | Required | Description | Default |
|---|---|---|---|
| mood | No | Which stored expression to use (defaults to the character's first). Only valid with character_id | |
| text | Yes | The line of dialogue to lip-sync | |
| hold_ms | No | Extra time on the final closed mouth (default 600) | |
| frame_ms | No | Milliseconds to hold each mouth position (default 90) | |
| character_id | No | Use the mouth positions stored on this character; the response then also carries the spritesheet URL and the row to read. Mutually exclusive with viseme_count | |
| viseme_count | No | Plan against a preset without touching a character — useful if you hold the frames yourself. Mutually exclusive with character_id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It discloses the tool is free, renders nothing, and details the response contents (spritesheet URL and row with character_id). Adds useful context beyond a simple 'get' operation, though it doesn't discuss error conditions or rate limits. Sufficient transparency for a read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that are front-loaded with the core purpose and value proposition. The first sentence explains what it returns; the second clarifies when to use it and the two parameter modes. Every sentence earns its place with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description explains the return format (frame-by-frame plan, mouth positions, durations, text progress, spritesheet URL). It covers both usage modes and the distinction from talking_gif. For a tool with 6 params and no output schema, this is a complete and self-contained description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter docs. The description adds value by clarifying the output difference between character_id (response carries spritesheet URL/row) and viseme_count (preset without character), and notes mutual exclusivity. This goes beyond the schema's basic field semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it gets a frame-by-frame lip-sync plan for a line of text, specifying mouth position, duration, and text progress. Distinguishes itself from talking_gif by noting it's free, renders nothing, and is intended for game engines. Specific verb and resource with a clear scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to use this instead of talking_gif when animating in a game engine and driving the mouth yourself. Also explains the two modes (character_id vs viseme_count), providing clear selection criteria. No ambiguity about when to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_charactersA
List your created characters with pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results per page (1-100, default 50) | |
| offset | No | Pagination offset |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Mentions pagination behavior, but does not disclose ordering, default limit, or that it only lists created characters (not all characters). Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is front-loaded with the core action and resource, no wasted words. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but typical for list tools. Description does not specify return format or pagination response structure. Given many sibling tools, slightly incomplete but not severely lacking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with descriptions (limit: 1-100 default 50, offset). Description adds minimal value beyond confirming pagination. Baseline 3 due to 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'list', resource 'your created characters', and includes key detail 'with pagination'. Distinguishes from sibling tools like get_character (single) and list_objects (different resource).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage for listing characters, but no explicit guidance on when to use vs alternatives (e.g., get_character for a specific character). No when-not-to-use or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_isometric_tilesB
List your previously created isometric tiles with pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results per page (1-100, default 50) | |
| offset | No | Pagination offset (default 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a safe read operation but does not disclose behavioral traits like ownership scope, return format, or performance characteristics. Without annotations, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no fluff, front-loading the purpose. It's efficiently written but could benefit from slightly more detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and the description does not specify what fields the list returns (e.g., id, name). For a listing tool, this is a notable gap, especially among many similar sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the descriptions for limit and offset already exist. The tool description adds no extra meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists previously created isometric tiles with pagination, but does not distinguish from sibling tools like list_tiles_pro or list_characters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Among many list_* siblings, the agent receives no differentiation or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_job_historyA
List recent job history (completed, failed, and pending). Jobs are pruned after 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden. It discloses the pruning behavior but lacks details on order, count, or definition of 'recent'. This is moderately transparent but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no unnecessary words. Front-loaded with the core action and statuses, then the pruning note. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless listing tool, the description covers the purpose and a key behavior. It does not describe the return format or fields, but given simplicity, it is mostly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description adds no parameter information, which is acceptable since none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists recent job history covering completed, failed, and pending statuses, distinguishing it from siblings like 'get_job_status' (single job) and 'list_pending_jobs' (only pending). The mention of pruning after 24 hours adds specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to see all recent jobs) but does not explicitly state when not to use or mention alternatives. Given sibling tools, the context helps, but the description itself offers no direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_objectsC
List your created objects with pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | 1-100, default 50 | |
| offset | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only mentions pagination, omitting details like return format, rate limits, or that it is a read-only operation. More context is needed for safe usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with 5 words, making it efficiently concise. However, it could be slightly expanded to include key information without losing brevity, such as noting the default limit or order of results.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a listing tool with no output schema, the description fails to specify what fields or properties are returned, how pagination works (e.g., cursor vs. offset-based), or whether results are ordered. This leaves significant gaps for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no meaning beyond the input schema. The schema already documents the limit parameter but omits description for offset. The tool description does not compensate for the missing offset semantics, leaving its purpose and constraints unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists 'your created objects' with pagination. The verb 'list' and resource 'objects' are specific, and the sibling tools include list_characters, list_tilesets, etc., making this tool distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like list_characters or list_tilesets. The description does not specify context, prerequisites, or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pending_jobsA
List background jobs that were started but haven't completed yet. Use this to recover jobs after a disconnection or timeout.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral aspects. It implies a read operation but lacks details on ordering, limits, or behavior when no jobs exist. Does not disclose if it returns only active or also failed jobs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. First states purpose, second provides usage guidance. No fluff. Front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is adequate but could be improved by mentioning output format (e.g., list of job IDs, statuses). Given many sibling tools, the agent may still navigate effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is 100%. Description adds no param info, which is appropriate. Baseline 4 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists background jobs that haven't completed. It distinguishes from siblings like 'list_job_history' by focusing on pending jobs, but doesn't explicitly differentiate from 'get_job_status'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a specific use case ('recover jobs after disconnection or timeout'), which gives context. Does not mention when not to use or list alternatives, but the single-purpose nature reduces ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tilesetsB
List your previously created tilesets with pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results per page (1-100, default 50) | |
| offset | No | Pagination offset (default 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must fully convey behavior. It only states pagination, lacking details on authentication, rate limits, ordering, or behavior when no tilesets exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no filler. However, the brevity may sacrifice useful detail, though appropriate for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given two simple parameters, no output schema, and standard list behavior, the description is minimally adequate but could mention default ordering or max results for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both parameters (limit and offset). The description adds no additional meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List'), the resource ('tilesets'), and scope ('previously created' with 'pagination'). It distinctly differentiates from sibling tools like list_tilesets_sidescroller.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'pagination', implying use for paginated listing, but provides no explicit guidance on when to use this tool versus alternatives like list_tilesets_sidescroller, or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tilesets_sidescrollerA
List your sidescroller tilesets with pagination. For top-down tilesets use list_tilesets.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results per page (1-50, default 10) | |
| offset | No | Pagination offset (default 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses pagination behavior, but does not mention rate limits or error handling; still adequate for a simple read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with verb and resource, zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but the description explains the tool's purpose and distinction. Could mention return format, but still sufficient given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for limit and offset. Description adds no extra meaning beyond the schema, meeting baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and resource 'sidescroller tilesets', and explicitly differentiates from sibling tool list_tilesets for top-down tilesets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use (sidescroller tilesets) and when-not-to-use (top-down), and mentions pagination feature.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tiles_proB
List your previously created pro tiles with pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results per page (1-50, default 10) | |
| offset | No | Pagination offset (default 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description provides minimal behavioral info beyond listing and pagination. It mentions 'previously created' but lacks details on authentication, rate limits, or empty results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 8 words, front-loaded with action and purpose. No wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple list tool with pagination, but lacks info on sort order, error handling, or relationship to sibling tools. No output schema means return format is unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with descriptions. Tool description adds no extra meaning beyond schema, so baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly identifies the verb (list), resource (pro tiles), and scope (previously created, paginated). It distinguishes from sibling tools like list_tilesets and list_isometric_tiles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like list_tilesets or list_isometric_tiles. Agent must infer from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_ui_assetsA
List your saved UI panels (newest first), with pagination. Includes ghost rows for panels still generating.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results per page | |
| offset | No | Pagination offset |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses ordering and ghost rows for pending generations, but does not state that the operation is read-only or non-destructive, which could be assumed but should be explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences covering core function and a special feature (ghost rows) without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple list tool with high schema coverage; mentions ghost rows, but could optionally describe return fields since no output schema is provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds minimal additional context about ordering which is related to pagination, but doesn't enhance parameter meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool lists saved UI panels with ordering (newest first) and pagination, distinguishing it from other list tools by resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives like list_characters. The resource name implies differentiation but lacks comparative context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
portrait_character_proA
Convert between a bust portrait and a full-body character sprite (Pro). direction='portrait_to_character' takes a portrait in and returns a full-body sprite; 'character_to_portrait' does the reverse. Returns a job_id immediately — poll get_job_status for the result.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera angle of the character (default 'low top-down') | |
| image | Yes | Input image (a portrait or a character, matching direction) | |
| direction | No | Conversion direction (default 'portrait_to_character') | portrait_to_character |
| result_size | No | Output sprite size in pixels (default 64). 128/160 render at 2K for extra detail and cost more |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It correctly discloses the async behavior (returns job_id immediately) but does not mention potential errors, auth requirements, or side effects. The description is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the main purpose and then detailing the directions and async workflow. Every sentence adds value, and no redundant information is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, async) and lack of output schema, the description covers the essential: what it does, how to use it, and the return type. It could be more complete by explaining the job polling process, but it is still adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 reinforces the direction parameter but adds little beyond schema details like seed, view, image structure, and result_size costs. No new parameter insight.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool converts between a bust portrait and full-body character sprite, with explicit direction options. This specific verb-resource combination distinguishes it from sibling tools like list_characters or get_character.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the two conversion directions and notes that the tool is async, instructing the agent to poll get_job_status for results. This provides clear usage context. It could mention when not to use it or alternatives, but the specificity suffices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_imageA
Read a previously saved image from disk and return it as a Base64Image object that can be passed directly to other tools (e.g. edit_image, remove_background, image_to_pixelart). Use the file paths shown in earlier tool responses.
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | Yes | Absolute path to a saved PNG image (from a previous tool response) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the output type and that the tool reads from disk, but does not mention error handling (e.g., what happens if the file doesn't exist) or behavior details like performance or idempotency. It is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and output reference. No redundant words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers all essential aspects: what it does, how to use it, and what to do with the result. It is complete given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema description for the single parameter is clear. The description adds minimal reinforcement ('Use the file paths shown in earlier tool responses') but no new semantic information beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Read'), a resource ('previously saved image from disk'), and the output format ('Base64Image object'). It also names sibling tools that consume this output, clearly distinguishing it from other tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells when to use the tool ('when you have file paths from earlier tool responses') and provides a usage hint ('Use the file paths shown in earlier tool responses'). It does not explicitly state when not to use it, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_backgroundC
Remove the background from a pixel art image (max 400x400).
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| text | No | Description of the foreground object to help removal | |
| image | Yes | Source image | |
| image_size | Yes | Image dimensions | |
| background_removal_task | No | Type of background removal (default remove_simple_background) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only discloses the size limit. It does not specify if the output is a transparent background, how the background_removal_task enum affects behavior, or any other side effects. Since no annotations exist, the description fails to adequately inform the agent about behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the core action. It could be expanded slightly without losing conciseness, but it is not verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters including nested objects and an enum, but no output schema. The description does not explain what the tool returns (e.g., a new image with transparent background), nor does it cover constraints like image format or error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description adds no extra meaning such as guidance on using the 'text' parameter or when to choose simple vs complex removal.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool removes background from pixel art images with a maximum size constraint, making the purpose clear. However, it does not differentiate from sibling tools like inpaint or edit_image that could also manipulate backgrounds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as inpaint or create_image_pixflux_background. The absence of usage context leaves the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resize_imageA
AI-powered resize of a pixel art image to a different resolution while preserving quality. Source and target 16-200px. Best in steps: max 50% shrink or 2x grow per operation.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| view | No | Camera perspective | |
| direction | No | Character facing direction | |
| isometric | No | Generate in isometric view (default false) | |
| init_image | No | Optional initialization image | |
| color_image | No | Color palette reference image | |
| description | Yes | Description of the character/object | |
| target_size | Yes | Target dimensions (16-200px) | |
| no_background | No | Generate with transparent background | |
| reference_image | Yes | Image to resize | |
| oblique_projection | No | Use oblique projection (default false) | |
| init_image_strength | No | Init image influence (default 150.0) | |
| reference_image_size | Yes | Current image dimensions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses it is AI-powered and preserves quality, with step recommendations. No annotations exist, so the description carries the full burden. It omits details about output format, side effects, or behavior when limits are exceeded, but provides some useful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no fluff. Every word earns its place. Ideal conciseness for a tool description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite good purpose clarity, the description is too brief given the tool's complexity (13 parameters, nested objects, no output schema). It does not explain key parameters like seed, view, direction, or how the tool handles multiple inputs. Compared to similar tools, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage, so baseline is 3. The description adds value by reiterating size limits (16-200px) and the step guidance, which are not explicit in schema descriptions. This enhances understanding beyond raw field definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool resizes pixel art images to a different resolution while preserving quality, with specific size limits (16-200px). It uses a specific verb ('resize') and resource ('pixel art image'), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides practical usage advice: 'Best in steps: max 50% shrink or 2x grow per operation.' This helps the agent know how to use the tool effectively. However, it does not explicitly state when not to use it or offer alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotateA
Rotate a single character sprite from one view/direction to another. Fixed sizes only: 16, 32, 64, or 128px. For generating all 8 directions at once use generate_8_rotations or create_character_8dir instead.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| to_view | No | Camera perspective | |
| from_view | No | Camera perspective | |
| isometric | No | Generate in isometric view (default false) | |
| from_image | Yes | Source image | |
| image_size | Yes | 16x16 to 128x128 | |
| init_image | No | Initialization image | |
| mask_image | No | Mask image | |
| color_image | No | Color palette reference image | |
| view_change | No | Relative view change (alternative to from/to_view) | |
| to_direction | No | Character facing direction | |
| from_direction | No | Character facing direction | |
| direction_change | No | Relative direction change (alternative to from/to_direction) | |
| oblique_projection | No | Use oblique projection (default false) | |
| init_image_strength | No | Initial image influence strength (0-1000, default 300) | |
| image_guidance_scale | No | Source image influence (default 3.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It discloses fixed size restrictions (16,32,64,128px) but does not elaborate on behavior of other parameters (e.g., init_image, mask_image) or output expectations. Partially transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loads purpose, then adds key constraints and alternatives. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 16 parameters and no output schema, description covers core purpose and alternatives but omits explanation of parameter combinations (e.g., view vs direction) and output format. Adequate but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3 applies. Description adds only the fixed sizes constraint beyond schema descriptions. No additional semantics for other parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Rotate a single character sprite from one view/direction to another', specifying the verb and resource. It also distinguishes from siblings by directing to alternative tools for generating all 8 directions at once.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (single sprite rotation) and when not to use (for all 8 directions, use generate_8_rotations or create_character_8dir). Provides clear context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_object_framesB
From an object that generated multiple candidate frames, keep specific frames (by 0-based index) as completed individual objects. Optionally tag all newly-created objects.
| Name | Required | Description | Default |
|---|---|---|---|
| indices | Yes | Frame indices (0-based) to keep as completed individual objects | |
| object_id | Yes | ID of the object whose frames to select | |
| common_tag | No | Optional tag applied to every newly-created object |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It does not disclose whether the original object is modified or deleted, what permissions are needed, or what the return value is. It only mentions the action without side effects or requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with two clauses, no redundant words. It efficiently communicates the main purpose and optional feature.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's likely side effects (creating new objects) and lack of output schema, the description does not explain what happens to the original object, how many frames can be selected, or what the result looks like. Important operational context is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description does not add meaning beyond what the input schema already provides. The description repeats the schema's framing (0-based indices, optional tag) but does not elaborate on parameter constraints or usage nuances.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it keeps specific frames as completed individual objects from a multi-frame object, which is a specific verb-resource combination. It is distinct from sibling tools like create_object or animate_object, but the verb 'keep' is imprecise; 'select' or 'extract' would be clearer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when an object has multiple candidate frames, but it does not explicitly state when to use this tool versus alternatives, nor when not to use it. No exclusions or alternative tool references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_character_portraitA
Attach a bust portrait to a saved character (free — no generation runs). The portrait is the starting frame for talking animations: vocal_animation generates mouth positions from it. Overwrites any existing portrait. To generate a portrait from a full-body sprite first, use portrait_character_pro with direction='character_to_portrait'.
| Name | Required | Description | Default |
|---|---|---|---|
| image | Yes | Bust portrait image to attach | |
| character_id | Yes | Character ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description discloses that the operation overwrites an existing portrait (destructive), is free (no generation runs), and that the portrait serves as the starting frame for talking animations. It doesn't mention error cases or permissions, but for a mutation tool, key side effects are addressed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, includes alternative tool reference. Every sentence adds value; nothing extraneous.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the schema is fully documented (100% coverage) and this is a simple attach operation, the description covers the key context: free operation, overwrite behavior, downstream use in vocal_animation, and the alternative generation tool. Lacks only minor details like response type or error handling, but acceptable for this tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both character_id and image are fully described). The description adds no parameter-specific details beyond the schema, but it explains the tool's purpose and relationship to vocal_animation, which helps context. Baseline 3 is appropriate since schema already handles parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool attaches a bust portrait to a saved character, with specific verb ('attach') and resource ('saved character'), and distinguishes it from portrait_character_pro by noting this is free with no generation runs. The sibling tool is explicitly named with direction parameter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explains when to use it: attaching a portrait directly without generation. It also directs users to portrait_character_pro when they need to generate from a full-body sprite, giving an explicit alternative. It doesn't explicitly state when NOT to use it, but the contrast with the sibling covers the main ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
talking_gifA
Turn a line of text into an animated GIF of a character speaking it. Free — spends no generations; it only re-orders mouth positions already produced by vocal_animation. Provide either character_id (with mouth positions stored on the character) or supply visemes directly as returned by get_vocal_animation_job.
| Name | Required | Description | Default |
|---|---|---|---|
| mood | No | Which stored expression to talk with (defaults to the character's first). Only valid with character_id | |
| text | Yes | The line of dialogue to lip-sync. Mouth shapes are derived from the letters, so any language using the latin alphabet works | |
| hold_ms | No | Pause held on the closed mouth at the end, so a looping GIF has a beat between takes (default 600) | |
| visemes | No | Supply the mouth positions directly, as returned by get_vocal_animation_job (map of viseme name to image). Mutually exclusive with character_id | |
| frame_ms | No | Milliseconds per mouth position (default 90) | |
| character_id | No | Use the mouth positions stored on this character. Mutually exclusive with visemes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses a key behavioral trait: 'Free — spends no generations; it only re-orders mouth positions' — indicating this is a non-destructive, cost-free operation. It also clarifies the input dependency on pre-existing mouth data. However, it does not specify the return format (e.g., URL, base64) or whether the operation is synchronous, which are minor omissions given the tool likely returns a GIF URL.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose. The first sentence states exactly what the tool does; the second conveys cost and usage in one compact sentence. No redundancy or filler. It is highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 parameters, nested object for visemes) and no output schema, the description covers the essential inputs and the key behavioral context (free, uses existing mouth positions). It explains the two input pathways and the dependency on prior vocal_animation output. It omits the return format, but the description's mention of 'animated GIF' as the output gives sufficient context for an agent to proceed. Overall, it is complete enough for effective use without excessive ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds modest value by explaining the mutual exclusivity of character_id and visemes and pointing to the source of visemes (get_vocal_animation_job). It does not elaborate on individual parameter semantics beyond what the schema already provides (e.g., mood, hold_ms, frame_ms), so it meets the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: 'Turn a line of text into an animated GIF of a character speaking it.' It clearly distinguishes the tool from siblings like vocal_animation (which generates mouth positions) and get_vocal_animation_job (which fetches visemes) by focusing on assembling a GIF from existing mouth data. The verb 'turn' and resource 'line of text' plus output 'animated GIF' make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use guidance: it's free and reuses mouth positions from vocal_animation, implying it should be used after obtaining those positions. It also gives concrete instructions on the two ways to supply input: 'Provide either character_id (with mouth positions stored on the character) or supply visemes directly as returned by get_vocal_animation_job.' This clarifies prerequisites and alternatives without requiring further research.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transfer_outfitA
Transfer an outfit/costume from a reference image onto animation frames (2-16 frames, 32-256px). Use this to reskin an existing animation with a different character appearance.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for deterministic generation (default 0) | |
| frames | Yes | Animation frames (2-16) with dimensions | |
| image_size | Yes | Output frame dimensions | |
| no_background | No | Generate with transparent background | |
| reference_image | Yes | Outfit source image with dimensions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Although no annotations exist, the description discloses frame count limits (2-16) and pixel size range (32-256px), adding behavioral context beyond the schema. It does not detail other behavioral traits like seed determinism or background handling, but covers key constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states action and constraints, second states purpose. No redundancy, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters, nested objects, no output schema, and many siblings, the description covers core purpose and constraints. Lacks explanation of return value or process details, but is sufficient for an AI agent given the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds the 32-256px size constraint not present in schema descriptions, providing additional value. It does not repeat schema parameter details, which is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'transfer' and resource 'outfit/costume from reference image onto animation frames', clearly distinguishing it from siblings that generate or edit animations differently.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use: 'reskin an existing animation with a different character appearance'. It implies a specific use case, but does not explicitly exclude or compare to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_character_tagsA
Update tags on a character (max 20 tags, 50 chars each).
| Name | Required | Description | Default |
|---|---|---|---|
| tags | Yes | Tags to set | |
| character_id | Yes | Character ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses tag limits (max 20, 50 chars) but does not clarify whether tags are replaced or merged. With no annotations (like destructiveHint), the agent cannot determine side effects. The description partially compensates for missing annotations but lacks full behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately conveys the action, resource, and constraints. Every word adds information; there is no redundant or irrelevant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update tool with 2 parameters and no output schema, the description is moderately complete. It includes key constraints but omits behavioral details like whether previous tags are overwritten or appended. Given the low complexity, it is near minimally viable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes both parameters (character_id, tags) with 100% coverage. The description adds value by specifying constraints on tags array (max 20 items, each max 50 characters), which are not present in the schema. This helps agents validate inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update tags'), the resource ('a character'), and includes constraints ('max 20 tags, 50 chars each'). It effectively distinguishes from sibling tools like 'update_object_tags' by specifying the resource is a character.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention scenarios where other tag-related tools (e.g., 'update_object_tags') or character update tools would be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_object_tagsC
Update tags on an object.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | Yes | Tags to set | |
| object_id | Yes | Object ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the full burden. It does not disclose whether tags are replaced or merged, error handling for nonexistent objects, or side effects like overwriting existing tags.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence front-loading the purpose. It is efficient but could be slightly expanded to include key behavioral details without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the many sibling tools for objects, the description lacks context on what objects are affected, whether tags are appended or replaced, and error handling. No output schema to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear param descriptions (Tags to set, Object ID). The tool description adds no additional meaning beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it updates tags on an object with a specific verb+resource. However, it does not differentiate from sibling tools like update_character_tags, though the name implies object-specific context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives, such as when to use update_character_tags for characters. No prerequisites or conditions for use are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vocal_animationA
Generate the set of mouth positions ('visemes') that lets a portrait be lip-synced to any line of text. This is the only talking-animation step that costs generations — pay it once per expression, then talking_gif and lip_sync are free and unlimited. Provide either character_id (uses the character's stored portrait, set via set_character_portrait, and saves the result onto it) or an inline portrait image (max 256x256, result returned inline). Returns a job_id — poll get_vocal_animation_job.
| Name | Required | Description | Default |
|---|---|---|---|
| mood | No | Expression held on the face throughout (default 'neutral'). Call once per expression you want | neutral |
| seed | No | Seed for deterministic generation (default 0) | |
| portrait | No | Generate from this image instead and store nothing — mouth positions come back inline. Max 256x256. Mutually exclusive with character_id | |
| character_id | No | Generate from this character's stored portrait and save the result onto it. Required to later use character_id with talking_gif. Mutually exclusive with portrait | |
| viseme_count | No | How many mouth positions to generate (default 7). 3 for tiny portraits, 12 for large close-ups. Must be the same for every expression on one character | |
| no_background | No | Return frames with a transparent background (default true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the async behavior (returns a job_id to poll), the cost model (only step that costs generations), storage implications (saves result onto the character when using character_id), and size constraints (max 256x256). These go beyond the structured schema and provide key operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, each earning its place: purpose, cost model, input options, and async result handling. It is front-loaded with the primary action and avoids fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex async tool with two input modes, the description covers purpose, cost, prerequisites, input selection, storage behavior, and polling. It gives enough to safely invoke the tool even without prior knowledge of the talking-generation pipeline.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes all six parameters thoroughly (100% coverage), so the baseline is 3. The description adds meaningful context by explaining the mutual exclusivity of portrait and character_id, the save behavior of character_id, and the cost relationship to the mood parameter ('pay it once per expression'). It doesn't explain seed or viseme_count beyond schema, but those are well-defined in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Generate the set of mouth positions (visemes) that lets a portrait be lip-synced to any line of text.' It clearly distinguishes this from sibling tools like talking_gif and lip_sync by framing it as the generation step that makes those downstream tools possible.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool: 'This is the only talking-animation step that costs generations — pay it once per expression, then talking_gif and lip_sync are free and unlimited.' It also gives guidance on choosing between character_id and inline portrait, and mentions that set_character_portrait is a prerequisite for the character_id path.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v1.7.0- Added
get_vocal_animation_job - Added
lip_sync - Added
set_character_portrait - Added
talking_gif - Added
vocal_animation
84 tool updates
v1.6.0- First observed
animate_character - First observed
animate_object - First observed
animate_with_skeleton - First observed
animate_with_text - First observed
animate_with_text_v2 - First observed
animate_with_text_v3 - First observed
create_character_4dir - First observed
create_character_8dir - First observed
create_character_animation - First observed
create_character_pro - First observed
create_character_state - First observed
create_character_v3 - First observed
create_image_bitforge - First observed
create_image_pixen - First observed
create_image_pixflux - First observed
create_image_pixflux_background - First observed
create_isometric_tile - First observed
create_map_object - First observed
create_object_1dir - First observed
create_object_8dir - First observed
create_object_state - First observed
create_tiles_pro - First observed
create_tileset - First observed
create_tileset_sidescroller - First observed
create_ui_asset - First observed
delete_character - First observed
delete_character_animations - First observed
delete_isometric_tile - First observed
delete_object - First observed
delete_object_animations - First observed
delete_tiles_pro - First observed
delete_tileset - First observed
delete_tileset_sidescroller - First observed
delete_ui_asset - First observed
dismiss_object_review - First observed
download_character_zip - First observed
edit_animation - First observed
edit_image - First observed
edit_images - First observed
enhance_animation_prompt - First observed
enhance_character_prompt - First observed
enhance_pixen_prompt - First observed
estimate_skeleton - First observed
generate_8_rotations - First observed
generate_8_rotations_v3 - First observed
generate_font_pro - First observed
generate_image - First observed
generate_ui - First observed
generate_with_style - First observed
get_balance - First observed
get_character - First observed
get_font_pro_job - First observed
get_isometric_tile - First observed
get_job_status - First observed
get_map_object - First observed
get_object - First observed
get_portrait_character_pro_job - First observed
get_tiles_pro - First observed
get_tileset - First observed
get_tileset_sidescroller - First observed
get_ui_asset - First observed
image_to_pixelart - First observed
image_to_pixelart_pro - First observed
inpaint - First observed
inpaint_v3 - First observed
interpolate_frames - First observed
list_characters - First observed
list_isometric_tiles - First observed
list_job_history - First observed
list_objects - First observed
list_pending_jobs - First observed
list_tiles_pro - First observed
list_tilesets - First observed
list_tilesets_sidescroller - First observed
list_ui_assets - First observed
portrait_character_pro - First observed
read_image - First observed
remove_background - First observed
resize_image - First observed
rotate - First observed
select_object_frames - First observed
transfer_outfit - First observed
update_character_tags - First observed
update_object_tags
TDQS
Scored across 89 tools
Many tools overlap heavily: generate_image, generate_with_style, create_image_pixflux, create_image_bitforge, create_image_pixen, and image_to_pixelart_pro all create pixel art with only subtle differences. Character creation is split across create_character_4dir/8dir/v3/pro, and animation has animate_with_text_v1/v2/v3, animate_character, create_character_animation, plus multiple legacy versions explicitly flagged as 'prefer X instead' — an agent would struggle to pick the right tool consistently.
There's a loose pattern of verb_noun (list_tilesets, delete_character) but it's frequently broken: create_image_pixflux vs generate_image, create_tiles_pro vs create_tileset, get_tiles_pro vs get_tileset, and delete_tiles_pro vs delete_tileset. Version suffixed tools (animate_with_text_v2/v3, generate_8_rotations_v3) add inconsistency. Some tools use get_*_job instead of the generic get_job_status. Overall readable but not predictable.
89 tools is far beyond the typical well-scoped 3-15 range. While the server covers many domains (generation, animation, tiles, characters, UI, vocal), the sheer number — including multiple overlapping generators and legacy alternates — makes the surface feel bloated. Many tools could be consolidated or clearly deprecated.
The tool set is remarkably complete for pixel art creation: generation, editing, resizing, background removal, animation (text/keyframe/skeleton/template), characters (4dir/8dir/v3/pro/states), objects, tilesets (top-down/sidescroller/isometric/pro), UI assets, fonts, portraits, vocal lip-sync, and full CRUD with get/list/update/delete for each resource. Even advanced workflows like prompt enhancement and job recovery are covered. No obvious dead ends.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Generate authentic pixel art - sprites, animations, and tilesets - from any MCP client
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP server for Flux AI image generation
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server that forges pixel art sprites & game assets using Google Gemini — generate, crop, split & process, all from your AI assistant.8184MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for programmatically creating and editing Aseprite sprites, enabling AI agents to draw, manage layers and frames, and iterate until the desired result is achieved.MIT
- AlicenseBqualityDmaintenanceMCP server for Aseprite — create, edit, and export pixel art sprites, animations, and sprite sheets from any AI assistant.437MIT
- AlicenseNot gradedqualityFmaintenanceMCP server for generating style-consistent pixel art assets from PixelLab API, with project management, asset review, and an embedded Claude assistant.MIT