StoreCraft Studio
Enables AI agents to create high-resolution marketing images from simple JSON configs without design skills or API keys. Provides presets, themes, and layouts to render deterministic PNGs locally.
README
StoreCraft Studio šØ
Turn JSON into production-ready design assets ā by hand, or by AI agent.
StoreCraft Studio is a deterministic design renderer + MCP server that generates high-resolution marketing images (banners, social posts, marketplace screenshots, covers) from plain JSON configs. No design skills. No API keys. No LLM guessing ā the same config always produces the same pixel-perfect PNG.
Designed for AI agents (via Model Context Protocol) and humans (via CLI).
"Make me a Gumroad hero banner for my product"
ā agent calls list_presets ā finds marketplace-hero-1080p
ā agent calls list_themes ā picks swiss-dark
ā agent composes a JSON config from your description
ā agent calls render_design ā returns output/gumroad-hero.png ā
⨠Why this is different
| Capability | StoreCraft Studio | Other MCP design servers |
|---|---|---|
| Generates image files (PNG) | ā | ā (mostly emit HTML/CSS) |
| Deterministic ā no LLM at render time | ā | ā (most require an AI provider key) |
| No API keys / BYOK | ā | ā (several require external AI keys) |
| 35+ platform presets out of the box | ā | ā (generic renderers) |
| 8 curated color themes | ā | ā |
| 7 composable layouts | ā | ā |
| Works offline, fully local | ā | ā |
The closest prior art is Vercel's @json-render/image, but that's a generic image renderer. StoreCraft Studio is purpose-built for marketing asset creation ā the kind of thing you'd otherwise open Canva or Photoshop for.
š¼ļø What it produces



š Quick Start (CLI)
npm install
npx playwright install chromium
# Start the render server (needed by both CLI and MCP)
npm run dev
Render a template:
npm run render -- templates/demo-banner.json --output output/demo.png
Render an inline config:
npm run render -- '{"preset":"marketplace-hero-1080p","theme":"swiss-dark","headline":"My Product","subtitle":"Ship faster"}'
List presets and themes:
npm run render -- presets
npm run render -- themes
š¤ Quick Start (MCP ā for AI agents)
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"storecraft-studio": {
"command": "node",
"args": ["C:\\path\\to\\storecraft\\studio\\mcp-server.js"]
}
}
}
Or Cursor (.cursor/mcp.json):
{
"mcpServers": {
"storecraft-studio": {
"command": "node",
"args": ["C:\\path\\to\\storecraft\\studio\\mcp-server.js"]
}
}
}
Start
npm run devfirst ā both the CLI and MCP render via the local Vite server onhttp://localhost:3100.
Available tools
| Tool | Description |
|---|---|
list_presets |
List all design presets (sizes/platforms) |
list_themes |
List all color themes |
render_design |
Render a JSON config to a high-res PNG |
save_template |
Save a config as a reusable JSON template |
load_template |
Load a saved template by name |
list_templates |
List all saved templates |
š Presets (35+)
Marketplace
marketplace-hero-1080p Ā· marketplace-standard Ā· marketplace-hd Ā· square-thumbnail Ā· envato-banner
Chrome Web Store
cws-screenshot Ā· cws-small-tile Ā· cws-marquee Ā· cws-icon
Social Media
twitter-header Ā· twitter-post Ā· instagram-post Ā· instagram-story Ā· instagram-carousel Ā· linkedin-post Ā· linkedin-banner Ā· facebook-post Ā· facebook-cover Ā· youtube-thumbnail Ā· youtube-banner Ā· discord-banner Ā· tiktok-thumbnail Ā· pinterest-pin
OpenGraph
opengraph-card
Banners
blog-hero Ā· newsletter-header Ā· podcast-cover Ā· banner-leaderboard Ā· banner-medium Ā· banner-skyscraper
Presentations
slides-16-9 Ā· slides-4-3
Custom
custom ā any width Ć height
šØ Themes (8)
swiss-light Ā· warm-paper Ā· swiss-dark Ā· obsidian-indigo Ā· ocean-blue Ā· emerald-dark Ā· rose-dark Ā· minimal-white
š§© Layouts
split-feature-right (default) Ā· split-feature-left Ā· hero-centered Ā· full-window Ā· three-card-gallery Ā· side-by-side-cards Ā· widescreen-showcase
š Config reference
{
"preset": "marketplace-hero-1080p",
"theme": "swiss-dark",
"layout": "hero-centered",
"headline": "Your headline here",
"subtitle": "A short supporting subtitle",
"kicker": "NEW RELEASE",
"badges": [
{ "text": "MCP Native", "bg": "#10b981", "color": "#ffffff" }
],
"callouts": [
{ "icon": "ā”", "title": "Fast", "desc": "Renders in <1s" }
],
"screenshotUrl": "path/to/image.png",
"frameTitle": "product.com ā screenshot window title",
"gridEnabled": true
}
šļø Project structure
studio/
āāā mcp-server.js # MCP server (6 tools for AI agents)
āāā cli.js # CLI wrapper (render / presets / themes)
āāā index.html # Canvas host + Google Fonts loader
āāā vite.config.js # Dev server on :3100
āāā src/
ā āāā canvas.js # Canvas 2D rendering engine (all layouts)
ā āāā presets.js # 35+ presets + 8 color themes
ā āāā renderer.js # window.StoreCraft browser API
āāā templates/ # Example JSON templates
āāā output/ # Rendered PNGs
āāā demo/ # Showcase images for the README
š§ How it works
- You or an agent write a JSON config (preset + theme + layout + text).
- The config is passed to
window.StoreCraftin a headless browser via Playwright. - The Canvas 2D engine draws the design pixel-by-pixel at high DPI.
- The canvas is captured to a high-res PNG ā deterministic, reproducible, no server needed.
š License
MIT Ā© Niloy Pal
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.