Pixel art and sprite MCP servers for AI agents: 7 compared

Seven pixel art and sprite MCP servers for AI agents, checked on 17 October 2026 by the makers of Pixelbolt: aseprite-mcp and pixel-mcp drive the paid Aseprite editor, SpriteCook and pixelforge-mcp generate images with hosted AI models, pixscii and pixelart-mcp draw on canvases on your machine, and Pixelbolt renders editable JSON recipes on your machine with no paid app, account, API key or image model. We read the other six from their code and docs without running them, and measured Pixelbolt on one Windows machine: all 19 of its plain example recipes rendered twice to byte-identical files, and a one-pixel fix over MCP changed exactly 1 pixel in 1 of 6 frames when we decoded the frames before and after. Method, sources and data are below.

We make Pixelbolt. Read this as a vendor's page: our own numbers come from runs you can repeat, and everything about the other tools links to where we read it. Pixelbolt was called PixelForge before version 0.8.0; it still answers to the old pixelforge command, and its file formats keep pixelforge-* names. None of that is related to the npm package pixelforge-mcp (freema/pixelforge-mcp, compared below) or to the other GitHub repositories called pixelforge-mcp. If we got something wrong, open an issue and we will correct it.

Last checked: 17 October 2026 (UK time) · Pixelbolt main at a2420d5 and release 0.8.0 · Next check by 16 November 2026, or sooner when one of these tools releases.

The short answer

Side by side

Pixelbolt's column is measured or taken from its own docs. The other columns are from each project's README, docs and source at the commit named under Sources, or from its own web pages, read on 17 October 2026, not run by us. Tool counts for the others are counted in their source.

Pixelboltaseprite-mcppixel-mcppixsciipixelart-mcppixelforge-mcpSpriteCook
How the art is made Rendered on your CPU from a JSON recipe: palettes, text grids, reusable symbols and drawing operations Drives Aseprite in batch mode, one Lua script per call Drives Aseprite in batch mode, one Lua script per call Drawing on in-memory 16-colour canvases, plus a bundled sprite library and procedural characters Drawing on PNG files on disk with Pillow Generated by Google Gemini image models, then cropped and split locally Generated by third-party AI models (its terms name OpenAI, Google Gemini and xAI) through SpriteCook's hosted service
What you need Node.js 20+; a clone, or the MCPB bundle for Claude Desktop Aseprite, Python 3.13+ and uv Aseprite 1.3+, and Go to build it or a prebuilt release Node.js 18.17+ (npx -y pixscii) Python 3.11+, uv and a clone (not on PyPI) Node.js 20+ and a Gemini API key A SpriteCook account, and an API key or OAuth sign-in
Cost Free Free, plus Aseprite (US$19.99 on Steam) Free, plus Aseprite Free Free to download; no licence file Free, plus your Gemini API usage (price not checked) Free plan: 40 credits every 30 days, and free generations appear in its public gallery. Paid: from US$8 a month (excl. VAT) for 800 credits. A standard 1K image costs 8 credits (costs vary by model and settings)
MCP tools 8 (counted from tools/list) 116 (README says 104) 50 (README tables list 48) 19 39 8 (README documents 6) 29 (its server card)
Animation Frames with durations, named animations, tweened poses, particle effects Frames, cels, tags, per-frame durations, tweening with easing Frames, durations, tags with a playback direction Six preset motions, and one-call scenes with up to 8 moving characters over a background (a colour, a sprite or a tilemap); up to 32 frames Rig-based motions (walk, run, idle and others), looping GIFs with per-frame durations A number of generated frames, split into PNGs; no timing Turns an image into a short looping cycle
Exports PNG sprite sheet, atlas JSON, single PNGs, APNG, GIF, CSS, a Canvas player, numbered frames for a video editor PNG, GIF, JPG; sprite sheets with JSON data; .aseprite PNG, GIF, JPG, BMP; sprite sheets with JSON metadata; .aseprite PNG only, returned to the agent; its MCP tools write no files PNG, GIF, sprite sheet grids PNG files PNG and ZIP downloads; Unity, Godot, Phaser and sprite sheet exports on paid plans
What the agent sees A PNG contact sheet of every frame, and palette-key text grids on request Upscaled PNGs written to disk for the client to open; pixel rectangles as JSON No image; pixels as a paginated colour list PNG images; pixels as a hex grid Canvas images; pixels as a labelled character grid A JSON list of the files written; no image Not checked (closed server)
Fix one pixel of an existing asset Yes, pixel_patch. In our run, the decoded frames showed 1 changed pixel in 1 of 6 frames, as its reply said Yes, in an .aseprite file Yes, in a sprite file Only on canvases it holds in memory; no tool loads a PNG from disk as it is Yes, in a PNG on disk No pixel tools No pixel tools in its server card
Same input, same output Measured: 19 of 19 example recipes rendered twice to identical files, on one machine No claim found No claim found Claimed in its README; not run by us Claimed in its README and code; not run by us Not expected: a generative model with no seed option (not run by us) No claim found
Size limits A frame up to 256×256; a project up to 256 frames and 4,194,304 pixels None in its code (Aseprite's own limits apply) Up to 65,535 pixels a side 256×256, 16 colours, 32 frames Up to 1,024 pixels a side, 256 frames Sprites, frames, tiles and items downscaled to a standard size from 16 to 128 pixels (48 by default, tiles 32; 0 keeps full size); backgrounds and thumbnails stay at the model's size Not checked
Network and files The MCP server makes no network calls; it reads asset files only under its root folder (--root, the working directory by default) and writes only under --out. The studio listens on your own machine only No outbound calls found; run_lua_script runs any Lua on your machine, and its preview web server listens on all network interfaces No network code found Its convert tool downloads any public web address the agent gives it No network code found; reads and writes any path your account can reach Sends prompts and reference images to Google's Gemini API Runs on SpriteCook's servers and its model providers'
Licence · stars · latest release MIT · 7 · 0.8.0, 13 Oct 2026 MIT · 707 · no releases; last commit 29 Jul 2026 MIT · 152 · 0.5.0, 18 Oct 2025 MIT · 3 · npm 0.3.1, 12 Apr 2026 No licence file · 5 · no releases; last commit 10 Oct 2026 MIT · 5 · npm 0.2.0, 21 Mar 2026 Closed hosted server · not applicable (its setup tool's repository has 5) · setup tool 0.2.17

What we measured on Pixelbolt

On 17 October 2026, on one machine: Windows 11 Pro (build 26200), Node.js 24.19.0, an AMD Ryzen 9 7950X3D, no GPU work. We ran main at a2420d5, and repeated the MCP round trip on the 0.8.0 release (9ec9a90). The JSON data files record the commit, Node, OS build and CPU.

To repeat it, with Node.js 20 or newer:

git clone https://github.com/skulitom/Pixelbolt
cd Pixelbolt
git checkout a2420d5
node --test
node bin/pixelbolt.js render examples/coin.json --out out-a
node bin/pixelbolt.js render examples/coin.json --out out-b

Then compare the two folders. Our scripts do the same for every plain recipe and fluid preset, and drive the MCP round trip: pixelbolt-determinism.mjs and pixelbolt-probe.mjs, each run as node <script> <clone> <fresh folder> <result.json>.

Each tool, and when to choose it over Pixelbolt

aseprite-mcp

diivi/aseprite-mcp is a Python server that runs Aseprite in batch mode with a Lua script for each call. Its source registers 116 tools (its README says 104) across drawing, layers, frames and tags, tweening, palettes, tilemaps, slices, text and effects, and it reads and writes native .aseprite files. The agent checks its work the way its README describes: draw, export an upscaled PNG for the client to open, look and iterate; it can also read a rectangle of pixels as JSON. It has no releases, and its latest commit is from 29 July 2026. Two tools need care: run_lua_script runs any Lua code on your machine (its README says so), and start_preview_server starts Python's web server without binding it to your own machine only.

Choose it when you own Aseprite and want the agent to work in the same .aseprite files you open by hand, or when you want Aseprite's own tools, from layers and tilemaps to text. Choose Pixelbolt when you don't want a paid editor in the loop, want byte-for-byte repeatability you can check (we measured ours), or want the image returned inside the MCP reply rather than as a file to open.

pixel-mcp

willibrandon/pixel-mcp is a Go server, also built on Aseprite in batch mode, with 50 tools in its source (its README tables list 48): canvas, layers, frames and tags, drawing, selection, palettes, and its own dithering patterns, palette quantization, auto-shading and antialiasing, plus export to PNG, GIF, JPG, BMP and sprite sheets with JSON metadata. It reads pixels back as a colour list and returns no image to the agent. Its latest release, 0.5.0, came out on 18 October 2025, and it has had no commits since.

Choose it for a single Go binary in front of Aseprite, with its own dithering, quantization, auto-shading and antialiasing tools. Choose Pixelbolt for active development, no paid editor, and a picture the agent can look at after each step.

pixscii

rxolve/pixscii (npm pixscii) keeps canvases of up to 256×256 in memory as 16-colour hex grids, with PICO-8, greyscale and Game Boy palettes, a library of bundled sprites and procedural characters. Its 19 tools draw, mirror, compose tilemaps and sprite sheets, animate with six preset motions, and build an animated scene with up to 8 moving characters over a background (a colour, a sprite or a tilemap) in one call. Results come back as PNG images in the agent's reply, and its MCP tools write no files. Its README calls it offline and deterministic. Its convert tool downloads any public web address the agent gives it. The npm package (0.3.1, 12 April 2026) is four commits behind the repository (three changes and a merge), which still says 0.3.1.

Choose it for a one-command start (npx -y pixscii), 16-colour sprites, one-call animated scenes, or when a bundled sprite library is enough. Choose Pixelbolt for your own palettes beyond 16 colours, animations longer than 32 frames (up to 256), files on disk (sheets, atlases, APNG, GIF) and recipes you can edit later.

pixelart-mcp

light-vp/pixelart-mcp is a Python server that edits ordinary PNG files on disk with Pillow. It has 39 tools, among them rig-based motions (walk, run, idle and others), onion and filmstrip views, an image of the canvas for the agent and a labelled character grid of its pixels, and export to GIF and sprite sheet grids. Its code says the same inputs give the same pixels. It has no licence file and isn't on PyPI, and it reads and writes any path your account can reach.

Choose it for a Python stack, editing existing PNGs in place, or rig-based walk cycles, once its author has granted a licence that suits you. Choose Pixelbolt for an MIT licence, atlases and APNG, and a recipe you can edit later rather than only pixels.

pixelforge-mcp (freema)

freema/pixelforge-mcp (npm pixelforge-mcp, 0.2.0) asks Google Gemini image models for sprites, animation frames, backgrounds, thumbnails, tilesets and item kits. It then crops and splits the results locally and downscales sprites, frames, tiles and items to 16 to 128 pixels (or keeps them full size); backgrounds and thumbnails are saved as generated. It needs a Gemini API key, which its code sends to Google with each request, and reference images you give it are uploaded to Google. It has no single-pixel tools and returns a list of files rather than an image. It is a different project from Pixelbolt, which was called PixelForge before 0.8.0.

Choose it when you want art from a prompt, in your own Gemini account, and can accept a different result each time. Choose Pixelbolt when the art must be exact, repeatable and editable, or must not leave your machine.

SpriteCook

SpriteCook is a hosted service whose MCP server runs on its own servers, reached with an API key or an OAuth sign-in; its public repository holds only a setup tool. Its terms say it uses third-party model providers, naming OpenAI, Google Gemini and xAI. Its server card lists 29 tools for game art, characters and their animations, tilesets (with a Godot export tool), UI kits, projects and credits. Pricing, read on 17 October 2026: a free plan with 40 credits every 30 days and no card, whose generations appear in a public gallery; then from US$8 a month (excl. VAT) for 800 credits, with a standard 1K image at 8 credits. Its pricing page lists engine exports (Unity, Godot, Phaser) and private assets as paid-plan features.

Choose it when you want finished, consistent art from prompts, characters with animation sets and UI kits, and are happy to pay per image. Choose Pixelbolt when you want no account or credits, art that stays on your machine, and the same files on every run.

Pixelbolt's limits

Also in the same searches

Method

Sources

All read on 17 October 2026, at the commit shown.