Skip to main content
Glama

animateSprite

Animate a static sprite into a spritesheet driven by a motion text prompt (image-to-spritesheet): supply an initial_image (URL or base64) plus a motion_prompt like "walking" or "attack slash", and optionally a final_image to interpolate between a start and end frame. For animations driven by up to three keyframes (including a middle frame), use animateSpriteKeyframes instead. The job result is a single sprite result directly (spritesheet URL, frame layout, and optionally a GIF or individual frame URLs when requested) with no separate polling step. The chosen model must support sprite animation and the duration must be valid for it; incompatible model/duration combinations return HTTP 400. Credits are charged only on success, based on the produced duration and never more than the duration you requested. For best results, call generatePose first to put the character into the desired pose, then animate it here; use listAnimationPresets to discover named presets, and prefer transferMotion when you already have a reference video or preset to copy motion from rather than describing it in text. Pass an optional request_id to tag the result so you can locate it later via GET /assets/sprites/results. Requires an API key (user scope). Returns 202 with a job id immediately; poll getApiJob (pass wait: 30) until status is succeeded, then read its result field, which is exactly the response documented for this operation. Each account may have up to 50 generations queued or running at once; beyond that submissions return 429 (PENDING_JOBS_LIMIT) - wait for jobs to finish.

Credits: cost varies by model and duration (credits/sec): Blitz 1.9/s (min 4), Eagle 2.6/s (min 4), Eagle with Audio 3.1/s (min 4), Forge 1.5/s (min 4), Forge Pixel 1.5/s (min 4); see this endpoint's full pricing table in the API docs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
requestBodyYesPayload for generating an animated spritesheet from a static image. Input images can either be provided in base64 or URL. If the image was generated using Ludo, ideally it should be generated using the "sprite", "sprite-vfx" or "ui_asset" type.

TDQS

A4.8/5.0
Behavior5/5

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

The description fully discloses behavior: asynchronous job with polling, credits charged only on success, rate limiting (429 PENDING_JOBS_LIMIT) with a max of 50 concurrent jobs, and per-model cost breakdown (e.g., Blitz 1.9/s min 4). It also notes that incompatible model/duration combos return HTTP 400, leaving no ambiguity about side effects or failure modes.

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

Conciseness4/5

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

The description is long but well-structured, leading with the core function and then layering details like credits, limits, and alternatives. Some redundancy exists with the schema (e.g., pricing appears both in description and model enum), but the information is relevant and logically organized, so it earns a high score without being maximally concise.

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

Completeness5/5

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

The description covers all necessary context for correct usage: asynchronous job flow, polling via getApiJob, credit costs per model, rate limits, error codes, and relationship to sibling tools. It also explains optional outputs like individual_frames and gif, and notes that images generated with Ludo should use specific types, making it fully self-contained for an agent to invoke it correctly.

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

Parameters4/5

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

The input schema already provides 100% coverage with detailed descriptions, examples, and enums for parameters. The description adds value by enriching model selection with visual quality and motion stability ratings (e.g., Blitz 4/10 quality, 8/10 motion) and clarifying when margin_ratio and per-axis margin params conflict, which goes beyond the schema.

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

Purpose5/5

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

The description clearly defines the tool's function: animating a static sprite into a spritesheet using a motion prompt. It differentiates from animateSpriteKeyframes by specifying the number of keyframes, and includes concrete examples like 'walking' and 'attack slash', making the purpose unmistakable.

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

Usage Guidelines5/5

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

It explicitly states when to use this tool vs animateSpriteKeyframes (single motion prompt vs up to three keyframes), recommends listAnimationPresets for discovering presets, and advises preferring transferMotion when a reference video/preset exists. It also mentions for best results call generatePose first, giving practical usage guidance.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation4/5

Most tools pair a clear action and asset type (create3DModel, editVideo, removeBackground), and overlapping pairs such as animateSprite vs transferMotion vs animateSpriteKeyframes are carefully differentiated by input mode. The main friction is listApiJobs vs listGenerations, which both return generation history from slightly different scopes.

Naming Consistency4/5

The set is overwhelmingly consistent camelCase verb+noun (create*, edit*, list*, animate*, cancel*), with only minor deviations like generatePose/generateWithStyle alongside createImage and the slightly awkward validateApiKeyEndpoint. There is no chaotic mixing of conventions.

Tool Count2/5

At 31 tools this exceeds the 25+ threshold for 'too many', even though the multimodal game-asset scope explains much of the breadth. Agents face a large selection surface with many generation variants across 3D, sprites, images, audio, and video.

Completeness4/5

Core workflows are covered: image-to-3D plus rigging and animation, sprite pose/rotation/animation/editing, image create/edit/style/background-removal, video create/edit/upscale, and audio SFX/ambiance/music/voice. Minor gaps remain, such as no image upscaler and no individual asset retrieval or deletion.