MCP servercom.spriteship/spriteship
Build a game's 2D art layer with your agent: characters, animations, tilesets, levels, 5 engines.
Overview
Score?
UNRATED 0.789
of what a free look can see, on 31 looks
Looks
36
last 4 hr ago
Tools
90
changed 3 days ago
More info
URL
spriteship.com/mcp
streamable-http
Says it is
spriteship 1.1.0
protocol 2025-06-18
In the record since
32 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.789 · highest on record 0.8561
Toolsfrom sha256:c00217c2ad…9cea2c · +18 −0 3 days ago
| Tool | Schema |
|---|---|
| animate_asset PAID (image-to-video; Wan 3.0 costs 150 credits/second, so each default 2-second pair is 300 credits; total cost scales with duration × pair count). Animate ANY asset type — the an |
input · no output |
| approve_automatic_pose_fallback Successful automatic poses now continue without review, including imports. Four-direction setup stays automatic and eight-direction keeps its existing selection. Imported generatio |
input · no output |
| approve_directional_poses FREE approval checkpoint. Use only when get_job returns status:"waiting_approval", wizardPhase:"waiting-directional-pose-approval", and directionalPoseReview. Present every returne |
input · no output |
| cancel_job 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 char |
input · no output |
| commit_map_draft added FREE. Commit the exact draftHash as a recoverable revision. The existing map must still match its expectedRevision; conflicts require re-reading and merging the user’s changes. Reu |
input · no output |
| convert_texture_to_material 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 c |
input · no output |
| create_animation_from_pose 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__ |
input · no output |
| create_asset 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 |
input · no output |
| create_character PAID (standard 1K: 60 credits; 2K: 100; 4K: 150; premium models may differ). Generate a NEW character from a text prompt. This is the entry point for building art from nothing — ca |
input · no output |
| create_project 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 d |
input · no output |
| create_ui_composition Create a free static composition of existing icon/frame revisions; indicators and functional widgets remain independent. No new image generation. |
input · no output |
| create_ui_pack Create an empty project-owned UI Pack with its guide snapshot. Free; generation is a separate quoted action. |
input · no output |
| duplicate_animation 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 rend |
input · no output |
| export_map Engine-ready map JSON built from the SAVED level data, preserving placement name/gameplayId and baking custom-field values. Every engine retains materialRendering and materialRende |
input · no output |
| fix_asset_seams LEGACY ONLY; new Brushable Materials reject this operation because they use world-space sampling. PAID (60 credits per standard-model edit attempt; use the dry-run quote). Make an |
input · no output |
| frame_animation 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 allowe |
input · no output |
| generate_character_animation PAID, and the cost MULTIPLIES BY THE NUMBER OF ANIMATIONS (each is its own image-to-video call; Wan 3.0 costs 150 credits/second, so its default 2-second clip is 300 credits). All |
input · no output |
| generate_character_turn 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 r |
input · no output |
| generate_pose PAID (standard 1K: 60 credits; 2K: 100; 4K: 150; premium models may differ). Generate a new pose for a character from a text description. DEFAULTS TO A COST PREVIEW — see the dryRu |
input · no output |
| generate_project_intake 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 descriptio |
input · no output |
| generate_project_vision 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, a |
input · no output |
| generate_ui_pack 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 c |
input · no output |
| get_asset 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 typ |
input · no output |
| get_character The full PhaserCharacter JSON: animations, frameSize, gameType, animationDirection, per-group atlas + spritesheet URLs, poses and mount points. For topdown characters, animationDir |
input · no output |
| get_character_manifest 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 bef |
input · no output |
| get_credits 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 propos |
input · no output |
| get_custom_fields 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 ge |
input · no output |
| get_export_command 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 m |
input · no output |
| get_frames 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 ju |
input · no output |
| get_integration_status 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 avail |
input · no output |
| get_job 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 creditsRefun |
input · no output |
| get_map A map row plus its saved level data, revision and dependency-sensitive contentVersion for plan_sync. Preserve the returned contentVersion in the map lock entry after a successful i |
input · no output |
| get_map_draft added Read a prepared map draft, resolved document, hash and expiry. |
input · no output |
| get_project One project with its description, registered mount slots, and saved style guide. The legacy assetSuggestions field is currently always null because automatic suggestions are disabl |
input · no output |
| get_project_export_command added Return an authenticated shell download command for a ready project export job. This tool checks status first and never starts a build. Run the command outside the model; do not tra |
input · no output |
| get_project_export_review added FREE. Check all saved maps, character and asset dependencies, choose the starting map/player, and inspect target-runtime compatibility before downloading an editable complete Phase |
input · no output |
| get_project_export_status added FREE. Read a queued export job. Poll queued/running jobs about every two seconds. Ready jobs include the artifact size and expiry; failed jobs explain what to fix before retrying. |
input · no output |
| get_project_style_guide Read the current guide; old projects without an adopted guide receive an initial suggestion. Existing assets retain their saved guide versions. |
input · no output |
| get_subscription_allowances 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 accumul |
input · no output |
| get_ui_pack Read components, immutable revisions, capabilities, fonts and batch progress. Artwork URLs expire; native engine capability gaps are not successful tests. |
input · no output |
| get_ui_pack_batch Read one paid batch and retained source URL; provider completion does not prove usable component delivery. |
input · no output |
| get_ui_pack_batch_recovery 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. |
input · no output |
| get_ui_pack_export_command 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 |
input · no output |
| import_asset_image Free imports: import ONE still PNG or WebP as an Object or Character. Unlimited for every account, including free users, with zero credits and no subscription or allowance check. B |
input · no output |
| list_assets Assets (Object / Object Collection / staged / background / Environment Kit / Terrain Materials) with slug, hasAnimation, updatedAt, tags and favourite. Wire types remain tileset fo |
input · no output |
| list_character_poses 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 — p |
input · no output |
| list_characters Characters with the re-sync signals: contentVersion (opaque change token — compare for equality, never parse or order), hasActiveJob, apiReady, pose/animation counts, tags, favouri |
input · no output |
| list_map_revisions added List recoverable map revisions from editor and agent saves. |
input · no output |
| list_maps Level-editor maps with updatedAt and hasMapData. hasMapData:false means the map was never saved and cannot be exported. |
input · no output |
| list_projects All of the user's projects: { id, name, gameType, style, itemCount, createdAt, updatedAt }. gameType (platformer / topdown / topdown_overhead / isometric / point_and_click) is the |
input · no output |
| list_ui_fonts Read the retained licensed Google Fonts catalog. Existing font selection, preview and export cost zero customer credits. |
input · no output |
| list_ui_packs List owned UI Packs, optionally within a project. |
input · no output |
| map_authoring_context added Read project art, material recipes, limits, shape classes, current map JSON and revision. Inspect the returned artwork visually before selecting assets. Read your game code to esta |
input · no output |
| map_authoring_schema added Read the authoritative JSON Schema before composing a map. Use assetRef instead of inventing image URLs. Shapes, custom properties and paths retain their existing editor meanings. |
input · no output |
| map_project_library added Read owned project maps, reusable detached assemblies, destination spawn IDs, room links and broken-link diagnostics. No browser required. |
input · no output |
| map_workbench_context added Read saved camera, reference brief, gameplay, assemblies, links, tests and per-engine support. Runtime availability is distinct from playability evidence. |
input · no output |
| mirror_animation 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 anima |
input · no output |
| phase_split 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 ai |
input · no output |
| plan_sync 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 pac |
input · no output |
| prepare_map_draft added FREE. Resolve owned artwork and validate a complete editable map without changing the live map. Preserve stable placement IDs on edits and pass expectedRevision from context. Retur |
input · no output |
| prepare_map_edits added FREE. Apply up to 200 stable-ID operations against expectedRevision. Returns a validated draft and semantic diff without changing the live map. Preview/test then use commit_map_dra |
input · no output |
| preview_map_draft added FREE. Render the actual map composition using canonical terrain/export rendering. Omit viewport for an overview, or request world-pixel viewport and scale for camera-sized inspecti |
input · no output |
| rebuild_character 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 o |
input · no output |
| recover_ui_pack_components 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 delive |
input · no output |
| regen_asset_pair PAID (Wan 3.0 costs 150 credits/second: 300 credits at the default 2-second settings). Re-run video generation for a SINGLE motion pair of an animated asset, leaving its other pair |
input · no output |
| rematte_animation 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 h |
input · no output |
| rename_ui_component 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 dis |
input · no output |
| replace_ui_component_png 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. |
input · no output |
| reprocess_asset 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 |
input · no output |
| restore_map_revision added FREE. Restore a saved revision as a new revision, preserving history. Pass the latest expectedRevision and reuse requestId on retry. |
input · no output |
| resume_pose FREE. Resume a failed pose when list_character_poses reports removalRecoveryAvailable. Reuses the saved image; never generates or charges for another image. Respect the retry-after |
input · no output |
| resume_ui_pack_batch FREE. Resume background removal when a failed/uncertain illustrated batch reports removalRecoveryAvailable. Reuses its saved artwork and original billing identity. Respect cooldown |
input · no output |
| retry_job 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 whos |
input · no output |
| retry_unusable_result 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 cr |
input · no output |
| revise_asset 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 acc |
input · no output |
| revise_ui_pack_png 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 |
input · no output |
| run_map_playtest added FREE bounded browser-free route/clearance or deterministic controller replay. Choose exactly one saved mapId or prepared draftId. Returns map hash, declared body/profile, trace, ev |
input · no output |
| save_project_style_guide Adopt a new immutable guide revision with optimistic concurrency. Colors, typography and camera apply to future generation, never silently rewrite prior assets. |
input · no output |
| save_ui_component_defaults Save supported fill, text and layout values for an exact current revision. Free and deterministic; cannot manufacture unsupported capabilities or edit arbitrary SVG geometry. |
input · no output |
| save_ui_pack_style 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. |
input · no output |
| select_frames 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 reta |
input · no output |
| set_asset_collision_body FREE and SYNCHRONOUS (no jobId — do not poll). Author the PHYSICS shape a game should build its collider from for an asset revision: rect, circle, polygon, compound of 1..16 simple |
input · no output |
| set_asset_collision_roles added FREE, synchronous metadata edit for an owned revision or collection tileIndex. Each independent role accepts a normalized simple body, disconnected compound, or none. Coordinates r |
input · no output |
| set_asset_runtime_intent 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 |
input · no output |
| set_character_collision_roles added FREE, synchronous metadata edit. Independent normalized full-frame movement, hurtbox and hitbox bodies. Character movement permits a simple body or none; hurtbox/hitbox also permit |
input · no output |
| start_project_export added FREE. Queue a durable complete Phaser, Godot or Unity project export. First review with get_project_export_review and pass its version and selected starting map/player. Returns a j |
input · no output |
| suggest_motion_hint 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 ani |
input · no output |
| suggest_project_style Suggest palette, treatment and existing font IDs from the available catalog. Free to customers; suggestions require explicit save to adopt. |
input · no output |
| validate_ui_component_layout 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 but |
input · no output |
| whoami Verify the API key and report which powers it has. Returns { userId, username, keyId, keyName, scopes, mapLimits }. mapLimits contains maxMapsPerProject (null means unlimited), max |
input · no output |
Verify it yourself
npx teppi-check https://spriteship.com/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1FZ293N7DNSWJ5KAC2B0899