For developers and agents

Store assets, from code.

The same pipeline behind the Storeboard app, as a REST API and an MCP server. Analyze an app, generate exact-size screenshots and feature graphics, and write listing copy from CI, scripts, or an AI agent.

Authentication

One header, same credits.

Create a key in your dashboard and send it on every request. Keys act as your account: the same credit balance, plan limits, and free drafts as the app. Keys are shown once at creation and can be revoked anytime.

Authorization: Bearer sb_live_...

Draft renders (quality "low") are free. Full-quality images cost 5 credits each, listing copy costs 10. Out of credits returns 402, over the rate limit returns 429, and a failed generation is refunded automatically.

REST API

Five endpoints, JSON in and out.

Base URL https://storeboard.dev/api/v1. Images travel as base64 strings (PNG, JPG, or WebP in; PNG at the exact store size out). Generation can take up to two minutes per image, so set generous timeouts.

GET/v1/me

Your plan, remaining credits (purchased, monthly, studio pool), and usage limits.

GET/v1/specs

The asset catalog: spec ids like iphone-69 and play-feature, exact pixel sizes, and credit costs.

POST/v1/analyze

Send any of url, description, or a base64 image. Returns a reusable styleBrief plus screenshot concepts (headline and visual) to feed into generation. Free.
curl https://storeboard.dev/api/v1/analyze \
  -H "Authorization: Bearer sb_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://yourapp.com",
    "description": "A sleep tracker for shift workers",
    "conceptCount": 5
  }'

POST/v1/screenshots

Generate one screenshot or feature graphic. Pass appScreen (base64) to composite your real app screen into a device frame instead of letting the AI invent UI. Medium and high quality are QA-verified against the headline and cost 5 credits; low quality is a free draft.
curl https://storeboard.dev/api/v1/screenshots \
  -H "Authorization: Bearer sb_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "specId": "iphone-69",
    "headline": "Sleep through anything",
    "visual": "Calm night sky gradient behind a phone showing the sleep timeline",
    "styleBrief": "<styleBrief from /v1/analyze>",
    "quality": "low"
  }'
# response: { "image": "<base64 PNG at 1290x2796>", "qa": {...}, "creditsCharged": 0 }

POST/v1/listing

Listing copy for both stores, enforced to Apple and Google character limits. 10 credits.
curl https://storeboard.dev/api/v1/listing \
  -H "Authorization: Bearer sb_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://yourapp.com",
    "headlines": ["Sleep through anything", "Wake up on your schedule"],
    "keywordHints": "sleep tracker, shift work"
  }'

MCP server

Let your agent make the screenshots.

Storeboard is also an MCP server at https://storeboard.dev/api/mcp (streamable HTTP). Connected agents get tools to analyze an app, generate screenshots and feature graphics, check credits, and write listing copy. Add it to Claude Code:

claude mcp add --transport http storeboard \
  https://storeboard.dev/api/mcp \
  --header "Authorization: Bearer sb_live_..."

Or in any MCP client that takes JSON config (Claude Desktop, Cursor, and friends):

{
  "mcpServers": {
    "storeboard": {
      "type": "http",
      "url": "https://storeboard.dev/api/mcp",
      "headers": { "Authorization": "Bearer sb_live_..." }
    }
  }
}

Tools: list_specs, get_credits, analyze_app, generate_screenshot, and generate_listing.

Free to try

Draft the whole set from a script before spending a credit.

Low-quality drafts are free on every plan. Create a key, point your agent at the MCP server, and see the direction before rendering finals.

Create an API key