Skip to main content
Glama

Reprise — un-flatten any flat AI design into editable layers

Reprise MCP

You made a great design with AI. Then you needed to change one word — and you couldn't, because it's a flat PNG.

Reprise turns that finished, flat AI design (ChatGPT / Midjourney / Claude / etc.) back into editable layers and rebuilds it bit-perfect — and it returns a measured fidelity score, so you can verify the reproduction instead of trusting a claim. Reproducing runs locally and free; from there you can remix one design into a whole campaign.

It's built for agents, too: this repo is a remote MCP server, so Claude / Cursor / any MCP client can call reproduce / autodetect / diagnose directly.


Try it now (no signup)

Browser: open https://tepesama-reprise-mcp.hf.space/ → the “Try it” tab → drop a flat design (or click the sample). You'll see it un-flattened into layers, plus the fidelity score.

From your agent (MCP):

claude mcp add --transport http reprise https://tepesama-reprise-mcp.hf.space/gradio_api/mcp/http

Endpoints: /gradio_api/mcp/http (streamable-HTTP) · /gradio_api/mcp/sse (SSE) · /gradio_api/mcp/schema Listed on the official MCP registry as design.reprise/reprise.

Related MCP server: @designjs/mcp-server

Tools

Tool

What it does

reproduce(image)

Un-flatten a flat design into editable layers and reproduce it bit-perfect. Returns a fidelity score (MAE / PSNR / exact-match % / stray px).

autodetect(image)

Detect the elements (subjects and text) in a design as relative bounding boxes.

diagnose(original, reproduction)

Score how faithfully a reproduction matches an original.

image is an http(s) URL or a base64 data URL.

How it works

Instead of asking a model to regenerate the image (which drifts and never comes back the same), Reprise keeps your original pixels:

  1. Detect the elements in the design.

  2. Lift each element out onto its own transparent layer.

  3. Inpaint the gaps to make a clean background "plate".

  4. Recompose losslessly — because untouched regions are literally the original pixels, the rebuild is bit-perfect (MAE 0.00, 0 stray pixels), and diagnose returns that score so you can check it.

Once it's layered, you can swap copy/colors and mass-produce on-brand variants with the layout fixed.

Honest by design

  • Reproduction and unedited layers are bit-perfect (0.00 MAE).

  • When you edit a region (swap a subject, change a product), that region is newly generated — not pixel-identical. We measure everything so we never overclaim.

  • Auto element-detection is v1 (rembg + OpenCV); it can miss small text. Manual element maps are supported.

  • Export today is layered SVG + transparent PNGs (PSD export not yet).

About this repo

This is the public MCP wrapper for Reprise (app.py is the thin server surface). The reproduction engine itself is proprietary and is loaded privately at build time, so it isn't included here. The wrapper is published openly for transparency and so the MCP interface can be relied on.

Found an image that breaks it? Open an issue with the image — hardening auto-detection (toward SAM2-class) is the top of the roadmap.

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tepesama/reprise'

If you have feedback or need assistance with the MCP directory API, please join our Discord server