Skip to main content
Glama
appstore-mockup-mcp

appstore-mockup-mcp

appstore-mockup-mcp

An MCP server that wraps app screenshots in an iPhone 16 Pro frame with marketing text above, producing App Store-ready preview images (1284×2778, accepted for the 6.5" slot in App Store Connect).

Features

  • Wraps any screenshot in a realistic iPhone 16 Pro frame (dark or silver)

  • Adds bold headline + optional subtitle above the phone

  • Vertical gradient or solid background

  • Batch mode — process all screenshots in one call

  • Theme suggestions derived from the app's own colors, with a custom-color override

  • Warns if a source image is already a mockup (prevents phone-in-phone)

Related MCP server: Shots

Installation

uvx appstore-mockup-mcp

Usage with Claude Code

Add to your .mcp.json:

{
  "mcpServers": {
    "appstore-mockup": {
      "command": "uvx",
      "args": ["appstore-mockup-mcp"]
    }
  }
}

Then in Claude Code, just share your screenshots and ask:

"Create App Store mockups for these screenshots"

Claude will ask you to pick a theme, propose captions, get your approval, then render everything.

Tools

create_iphone_mockup

Single screenshot → mockup.

Param

Default

Description

screenshot

required

Absolute path to source PNG/JPG

title

required

Headline above the phone

out

required

Output path

frame

silver

silver or dark

bg_color

#f5f1ea

Hex or #hex1,#hex2 for gradient

text_color

#111111

Hex

subtitle

""

Smaller line under headline

size

1284x2778

Output dimensions

bleed

false

Phone bleeds off bottom edge

add_frame

true

Set false if source already has a phone frame

create_iphone_mockups_batch

Same params, plus jobs list and output_dir. Each job can override any batch-level default.

suggest_themes

Takes a list of screenshot paths and returns theme suggestions derived from the app's own colors (JSON list of {name, bg_color, text_color, frame, why}).

Dynamic themes

Themes are derived from the app's own colors instead of fixed presets. The suggest_themes tool analyzes the screenshots' dominant background and accent colors and proposes:

Name

Built from

Look

App Match

the app's dominant background, nudged for phone contrast

native, cohesive

Brand Gradient

the app's accent color, light → dark

bold, brand-forward

Soft Tint

the accent color washed toward white

clean, minimal

Text color and frame are picked automatically for contrast. Claude presents the suggestions and always offers a custom option — supply your own bg_color (single hex or #hex1,#hex2 gradient), text_color, and frame if you don't like any of them.

License

MIT

Available Tools

3 tools
create_iphone_mockupA

Wrap an app screenshot in an iPhone 16 Pro frame with marketing text above it, producing an App Store-ready preview image.

If the user did not dictate the title text, draft one (3-7 words, benefit-led) and get the user's approval or edits before calling this.

Args: screenshot: Absolute path to the source screenshot (any size; it is cover-fitted to the phone screen). title: Headline text rendered above the phone. out: Absolute path for the output PNG. frame: iPhone body color, "black" or "silver". bg_color: Background color as hex (e.g. "#f5f1ea"). Pass two hex colors separated by a comma for a vertical gradient. text_color: Title/subtitle color as hex. subtitle: Optional smaller line under the headline. size: Output dimensions as WxH. App Store accepts 1284x2778, 1242x2688 (portrait) or 2778x1284, 2688x1242 (landscape). bleed: If true, the phone bleeds off the bottom edge instead of fitting fully inside the canvas. add_frame: If False, the screenshot is placed directly on the background without adding a phone frame. Use this when the source image already contains a device frame (e.g. a previous mockup output) to avoid phone-inside-phone.

Inputs: out (required), title (required), screenshot (required), size, +6 more. Returns: result

create_iphone_mockups_batchA

Create App Store preview mockups for many screenshots in one call.

If the user did not dictate the titles, draft one per screenshot (3-7 words, benefit-led), show the user the full list, and get approval or edits before calling this.

Each job needs a screenshot path and a title; everything else is optional and falls back to the batch-level defaults. Jobs without an explicit out path are written to output_dir as NN_.png, numbered in job order.

Args: jobs: List of jobs, each {screenshot, title, subtitle?, out?, frame?, bg_color?, text_color?}. output_dir: Directory for outputs when a job has no out (default: alongside each screenshot). frame: Default iPhone body color, "black" or "silver". bg_color: Default background hex ("#hex1,#hex2" for a gradient). text_color: Default text color hex. size: Output dimensions as WxH for all jobs. bleed: If true, phones bleed off the bottom edge.

Inputs: jobs (required), size, bleed, frame, +4 more. Returns: result

suggest_themesA

Derive background theme suggestions from the app's own colors.

Call this FIRST, before rendering any mockups, with all of the user's screenshots. It extracts the app's dominant background and accent colors and returns a JSON list of themes ({name, bg_color, text_color, frame, why}), ordered by recommendation strength, with text color and frame already chosen for contrast. Present the list to the user with the hex values, recommend the first entry, and always offer a final Custom option where the user supplies their own bg_color, text_color, and frame instead.

Args: screenshots: Absolute paths of the app screenshots to analyze.

Inputs: screenshots (required). Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct role: suggest_themes analyzes colors, create_iphone_mockup handles single screenshots, and create_iphone_mockups_batch handles multiple. There is no overlap in purpose.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case. The batch variant appends '_batch', maintaining a clear and predictable naming scheme.

    Tool Count5/5

    Three tools is ideal for this domain: one for color analysis, one for single renders, and one for batch processing. No tool is missing or redundant.

    Completeness5/5

    The tool set covers the full mockup creation workflow: theme suggestion, single image generation, and batch processing. No obvious gaps exist for the intended use case.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers