com.spriteship/spriteship
com.spriteship/spriteshipBuild a game's 2D art layer with your agent: characters, animations, tilesets, levels, 5 engines.
Tools · 69
Free advisory version check. Call once when starting SpriteShip work in a session, passing the version actually read from the installed skill; omit it when unknown. Report an available update with its…
Verify the API key and report which powers it has. Returns { userId, username, keyId, keyName, scopes, mapLimits }. mapLimits contains maxMapsPerProject (null means unlimited), maxAreaPx (width × heig…
Current credit balance, and optionally the recent ledger. Every ledger entry carries apiKeyId/apiKeyName so you can see exactly what THIS key spent. Check the balance before proposing any paid generat…
All of the user's projects: { id, name, gameType, style, itemCount, createdAt, updatedAt }. gameType (platformer / topdown / topdown_overhead / isometric / point_and_click) is the default perspective …
One project with its description, registered mount slots, and saved style guide. The legacy assetSuggestions field is currently always null because automatic suggestions are disabled; do not poll for …
Characters with the re-sync signals: contentVersion (opaque change token — compare for equality, never parse or order), hasActiveJob, apiReady, pose/animation counts, tags, favourite. Persist contentV…
Compare the versions in assets/spriteship/spriteship.lock.json with current SpriteShip state in one call. Returns unchanged/changed/unavailable per character, asset, map, or UI pack; exact animation f…
The full PhaserCharacter JSON: animations, frameSize, gameType, animationDirection, per-group atlas + spritesheet URLs, poses and mount points. For topdown characters, animationDirection is Luna's sav…
The self-describing export contract (tizo-export.json manifest + its JSON Schema) without downloading the zip. Use this to learn the Phaser integration shape and field meanings before wiring an export…
All poses on a character: { id, name, prompt, status pending|done|error, url, direction, pendingSince, errorCode, creditsRefunded }. This is the poll target after generate_pose — pose generation has n…
Assets (Object / Object Collection / staged / background / Environment Kit / Terrain Materials) with slug, hasAnimation, updatedAt, tags and favourite. Wire types remain tileset for collections, terra…
One asset with its revision iterations and typed animation projection. Accepts the asset id OR its slug. New Material assets use the wire-compatible `texture` type and expose a typed `material` block …
Typed custom-field definitions for a character or asset, plus the derived builtins ($animation for characters, $autoplay/$loop for animated assets). Per-placement VALUES ride on get_map; map exports b…
Presigned per-frame thumbnails for a character animation or an asset motion pair — never inline base64. Use format:"sheet" to get ONE index-labeled contact sheet, which lets you judge a whole capture …
Level-editor maps with updatedAt and hasMapData. hasMapData:false means the map was never saved and cannot be exported.
A map row plus its saved level data. Every placement has an immutable internal id and may have a user-authored mapData.materialRendering v1 snapshots the art style with optional profile, edgeMode and …
Engine-ready map JSON built from the SAVED level data, preserving placement name/gameplayId and baking custom-field values. Every engine retains materialRendering and materialRenderingResolved when pr…
Poll a background job. Every write tool that returns a jobId is polled here. On status:"error" the response is enriched with failureKind, failureAction, attempt-scoped creditsRefunded, retryCost, retr…
Build the authenticated download URL + a ready-to-run curl line for a zip export (character engine bundle, asset bundle, or map bundle). Run the curl in your own shell — zips are multi-MB binaries and…
FREE, no AI. Curate which frames an animation keeps, by index into the full capture, in order. Pass an empty array to reset to all frames. Non-destructive: the full capture is retained, so you can re-…
FREE, synchronous, no AI. Make an exact copy of the CURRENT saved animation under a new slug, preserving its selected frame order, loop/hold settings, compositing, mounts, and rendered pixels. The ori…
FREE, no AI. Promote a pose into a real 1-frame animation (a still/idle) that is scaled to match the character's other animations and exports to every engine. Pass poseId "__idle__" to use the charact…
FREE and SYNCHRONOUS (no jobId — do not poll). Declare how an asset revision should be rendered at runtime: plain_image, particle_emitter, deformable_strip, repeat_fill, nine_slice or shader_effect. p…
FREE and SYNCHRONOUS (no jobId — do not poll). Author the PHYSICS shape a game should build its collider from for an asset revision: a rect, a circle, or a closed polygon, in NORMALIZED coordinates (0…
FREE. Abort a running job. Failed/incomplete provider work is refunded automatically. If the job is waiting for directional-pose approval, its successful reusable 360 and pose charges are retained; no…
FREE approval checkpoint. Use only when get_job returns status:"waiting_approval", wizardPhase:"waiting-directional-pose-approval", and directionalPoseReview. Present every returned previewUrls to the…
FREE, and NO AI AT ALL — no video model, no credits, nothing to approve. The tiles of a tileset/staged asset ARE the frames: give the tile indices in playback order (repeats allowed) and they are comp…
FREE, no AI. Re-render one animation from its durable cached frames by passing animation. This is the repair/refresh tool: use it when a sheet looks stale or wrong after a series of edits, or when a p…
FREE, no AI. Flip every cached frame of ONE animation horizontally and rebuild it — the cheap way to get walk_left from walk_right. NOT idempotent: calling it twice flips the animation back to its ori…
FREE, no AI. Try a cleaner background removal on ONE animation's source video — the repair for a quality read showing deliveredIssues containing "matte" (green fringe, flickering holes, ragged edges).…
FREE, no AI. Carve ONE multi-state clip into separate game-phase animations by frame windows — the classic case is a jump becoming crouch/rise/fall/land, with fall looping while airborne and the rest …
FREE and SYNCHRONOUS (no jobId — do not poll), no AI. Rebuild a staged, tileset, or terrain collection's presentation layout: anchor chooses the shared fixed point and cellOffsets apply per-item nudge…
FREE and SYNCHRONOUS (no jobId — do not poll). Creates the container everything else needs: characters and assets are created INSIDE a project, and the project's gameType is what decides how they are …
PAID (~150 credits). Generate a NEW character from a text prompt. This is the entry point for building art from nothing — call create_project first if the user has no project. Artwork is strictly text…
PAID, and the cost MULTIPLIES BY THE NUMBER OF ANIMATIONS (each is its own image-to-video call, ~400 credits at defaults). All frames are text-free by default: no subtitles, captions or invented writi…
PAID (200 credits — ONE 2-second rotation video), except retrying the exact failed job is FREE while its provider task/result or validated stored source survives. The default dry run reports 0 credits…
PAID (~150 credits). Generate a new pose for a character from a text description. DEFAULTS TO A COST PREVIEW — see the dryRun argument. Returns { poseId } once executed; poses have no jobId, so poll l…
PAID (image-to-video, cost scales with duration × pair count). Animate ANY asset type — the animation lands on the source asset and its still image is preserved. For grid assets (tileset/staged) pass …
PAID. Generate a new revision of an asset from feedback text. The previous revision is kept — revisions are additive, never destructive. Environment Kit (`terrain`) assets also accept the legacy templ…
PAID (~400 credits at defaults). Re-run video generation for a SINGLE motion pair of an animated asset, leaving its other pairs alone. The new take lands as an additional iteration on that pair — earl…
FREE and SYNCHRONOUS, no AI. Copies a legacy repeat-xy texture into a new immutable Brushable Material revision; the original revision is preserved. Topdown/isometric conversions can be ready immediat…
LEGACY ONLY; new Brushable Materials reject this operation because they use world-space sampling. PAID (~100 credits, one image-to-image call). Make an old texture tile seamless. Legacy textures were …
PAID (one image call). Creates a NEW asset from a prompt in any of the six types. The default dry run now returns a strictly text-free artwork brief: no captions, labels, lettering, digits or pseudo-w…
FREE when the original KIE task or a validated stored artifact can be recovered; otherwise PAID only for the sub-steps that still need to run. Re-runs the FAILED step of a job whose status is "error" …
PAID but very cheap and SYNCHRONOUS. Use this for a broad game vision, story, or mood before create_project. Returns a proposed project name, game type, art style, world description, creative guidance…
PAID but very cheap (one configured text-model call) and SYNCHRONOUS — the result comes back in this response, there is no jobId to poll. Turns a rough game idea into { aiVision, aiPromptGuidance, aiN…
PAID but very cheap (one configured text-model call) and SYNCHRONOUS — returns { hint, cost } inline, no jobId. Reads a STAGED asset's prompt plus the stage pairs you intend to animate and writes the …
Read the currently enabled subscriber benefits and their separate monthly limits, caps and balances. Disabled benefits return zeroed values and cannot be used. Unused units accumulate up to three mont…
Quality Retry is the subscription compensation for AI art that invents details, ignores the request, or arrives unusable, letting the user try again without asking support for a credit refund. Costs O…
Import ONE still PNG or WebP as an Object or Character using one separate import allowance (Studio unlimited), zero credits. Use get_subscription_allowances first and proceed only when features.import…
List owned UI Packs, optionally within a project.
Read components, immutable revisions, capabilities, fonts and batch progress. Artwork URLs expire; native engine capability gaps are not successful tests.
Read original PNG dimensions, expiring image URL, source hash, and exact delivered/missing slots for an illustrated batch needing review. Inspect artwork before choosing crops.
Crop missing slots from a retained original PNG after visual review. No provider call or credit charge. Supply original-pixel rectangles and the current source hash; already delivered siblings remain …
Read one paid batch and retained source URL; provider completion does not prove usable component delivery.
Read the retained licensed Google Fonts catalog. Existing font selection, preview and export cost zero customer credits.
Read the current guide; old projects without an adopted guide receive an initial suggestion. Existing assets retain their saved guide versions.
Adopt a new immutable guide revision with optimistic concurrency. Colors, typography and camera apply to future generation, never silently rewrite prior assets.
Suggest palette, treatment and existing font IDs from the available catalog. Free to customers; suggestions require explicit save to adopt.
Create an empty project-owned UI Pack with its guide snapshot. Free; generation is a separate quoted action.
Save a pack-specific style for future quotes using the current pack updatedAt. Free; preserves project defaults and existing component revisions. A stale timestamp is rejected.
Revalidate an exact current revision and apply only proven deterministic runtime layout repairs, including bar fill openings, panel text/slice regions, and explicitly named SVG button-state separation…
Get a cost preview for an exact component list and batch breakdown, then generate using the returned signed quote. Every paid raster/SVG batch is 100 credits; one pack action can contain several batch…
Get a cost preview for a 100-credit selected PNG revision, then pass its signed quote to execute. SVG artwork editing is Phase 2; it is not enabled by this tool. Siblings and prior revisions remain av…
Rename an owned component for free. Supply its current name as expectedName to reject stale edits. Preserves IDs, artwork and historical revisions; re-sync updates its exported display name.
Save supported fill, text and layout values for an exact current revision. Free and deterministic; cannot manufacture unsupported capabilities or edit arbitrary SVG geometry.
Save a locally edited PNG, revalidate behavior metadata and preserve the prior revision. Free. Maximum PNG 4 MB and 2048 pixels per axis; no SVG artwork editing.
Create a free static composition of existing icon/frame revisions; indicators and functional widgets remain independent. No new image generation.
Return an authenticated curl command for a whole/selected UI Pack ZIP or component source. Run locally; never put multi-MB ZIP data into model context. Phaser has browser behavior coverage; Godot/Unit…
Similar MCP servers embedding-nearest
How to use
Add to your Claude Desktop / Cursor / Cline MCP config:
{
"mcpServers": {
"com.spriteship/spriteship": {
"url": "https://spriteship.com/mcp",
"transport": "streamable-http"
}
}
}