liquid_schema
Recipe schema
JSON Schema of recipes and layer patches, and the guide.
Takes no parameters.
io.github.fronteduPublished by GitHub account fronteduv2.1.0Updated Nov 3, 2026
Check Liquid Glass app icon recipes and open them in the browser editor.
Liquid Composer's hosted MCP server (liquid-composer.vercel.app); no sign-in required; Streamable HTTP; 3 tools.
No AI overview yet: these facts come from the registry entry and the server itself.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.frontedu%2Fliquid-composer/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"liquid-composer": {
"type": "http",
"url": "https://liquid-composer.vercel.app/mcp"
}
}
}Design Liquid Glass app icons in the browser.
[GitHub stars] [GitHub forks] [npm downloads]
Liquid Composer is a web recreation of Apple's Icon Composer that reproduces the Liquid Glass icon material of iOS 27 and Icon Composer 2. Drop in your artwork, stack it in layers, and the engine renders the glass in real time: light from above, highlights and dark edges that define each shape, refraction between layers, background blur, translucency and layer shadows, composited inside the iOS squircle.
Rendering runs on a WebGL2 pipeline. A distance field of each layer's silhouette drives refraction and edge lighting; when Blur is on, two separable Gaussian passes blur everything beneath the layer, and the glass composite shader works in gamma-encoded sRGB, like Icon Composer. Without WebGL2 the app falls back to Canvas 2D: layers keep their shadow, translucency and edge lighting, but lose refraction and blur.
Highlights, refraction, translucency, blur and shadows follow the formulas and values of Icon Composer 27. The Advanced panel scales the highlights and adds dispersion and frostiness on top.
Default/, Dark/, ClearLight/ and ClearDark/ folders, each holding PNGs from 4096 to 256 px.icon package that opens in Icon Composer and Xcode. A document with refraction on or specular set to Inside or Outside needs Xcode 27, as Icon Composer 2 writes it; otherwise it also opens in Xcode 26On a Mac, use ⌘ in place of Ctrl.
Ctrl+Z undo, Ctrl+Shift+Z or Ctrl+Y redoCtrl+D duplicate, Delete remove, F2 rename the focused layerCtrl+C / Ctrl+X / Ctrl+V copy, cut and paste layers (or paste an image)Shift; Ctrl+↑ selects its groupCtrl+] / Ctrl+[ bring forward or send backward; Ctrl+Alt+Shift+F / Ctrl+Alt+Shift+B bring to front or send to backCtrl+Alt+C / Ctrl+Alt+V copy and paste style: glass, fill, opacity and blend modeCtrl+Alt+G toggle the icon gridRequires Node 22.12+.
Agents drive the same app and engine as the editor. An icon is a JSON recipe: background, layers top to bottom, glass settings and outputs. Applying a recipe replaces the document, and renders come from the WebGL2 engine in headless Chrome.
Each command prints one JSON object with the written files, the document state and any warnings. Rendering uses your installed Google Chrome through playwright-core, on SwiftShader by default; pass --gpu to use the GPU. In a checkout, run npm run build once and use npm run -s agent -- in place of npx liquid-composer.
npx -y liquid-composer mcp provides liquid_apply, liquid_update, liquid_render, liquid_export, liquid_import_icon, liquid_state and liquid_schema, and returns previews as images. With Claude Code: claude mcp add liquid-composer -- npx -y liquid-composer mcphttps://liquid-composer.vercel.app/mcp checks recipes and returns a link that opens the icon in your browser. The link carries the recipe in its URL fragment, so opening it does not send the recipe to the server; the MCP call itself keeps nothing. This server does not render. In Claude, add it under Customize → Connectors → Add custom connector, with no sign-innpx skills add frontedu/liquid-composer teaches agents the recipe format and the workflowwindow.liquidComposer (apply, update, render, export, state, schema). Add ?agent to the URL to turn off autosave, analytics and the offline cacheThe editor is Vite, React 19, Tailwind and Nanostores. The engine lives in src/engine/:
IconRenderer.ts orchestrates compositing. It rasterizes each layer, draws its shadow, resolves the specular placement and hands each glass layer everything already painted below itLiquidGlass.ts is the WebGL2 renderer: a jump-flood distance field of the layer's silhouette, ping-pong framebuffers for the blur (RGBA16F when supported, skipped when Blur is off), then the glass composite passshaders/ holds the GLSL ES 3.00 sources. The composite pass computes refraction, dispersion, translucency and the edge highlights and dark edgesglassContract.ts holds the material constants: highlight table, refraction and blur limits, layer shadowIconDocument.ts reads and writes Icon Composer .icon documentsThe agent API lives in src/agent/, the CLI and local MCP server in scripts/agent/, and the remote MCP endpoint in api/mcp.ts.
Source: README.md at commit 4edfb44
Recipe schema
JSON Schema of recipes and layer patches, and the guide.
Takes no parameters.
Validate recipe
Check a recipe without opening it; returns ok or the list of issues with their paths.
reciperequiredOpen in Liquid Composer
Turn a recipe into a link that opens the icon in Liquid Composer. The link carries the recipe in its URL fragment, so opening it does not send the recipe to a server. Images must be inline SVG markup or data: URLs.
reciperequired100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
npm installnpm run dev # http://localhost:5173npm run build # production build in dist/npx liquid-composer apply icon.json --out out/ # PNG, all-appearances zip or .icon, as the recipe asksnpx liquid-composer render icon.json --size 512 --mode darknpx liquid-composer import App.icon --render 512npx liquid-composer validate icon.jsonnpx liquid-composer schema