Desktop app · CLI · MCP server

Store screenshots for every device, in every locale.

Capture on a simulator, frame a set of up to ten slides per device in every locale, write or translate the listing, answer the compliance forms once, and submit for review. Five stores, one project. Every button is also a CLI command and an MCP tool, so an agent can run the whole thing while you keep the taste decisions.

macOS 12+ on Apple silicon · Windows 10+ · Linux (AppImage, .deb, .rpm) · Captions run on-device on Apple silicon

1

Capture

NitroShot boots the right simulator or emulator per device class and locale, walks your flows (native steps or generated Maestro flows) and saves one PNG per screen. Or drop in captures from mobile-mcp or your own scripts.

2

Frame sets

A set is one device in one locale: a filmstrip of up to ten slides, each with its screenshot, bezel, template and caption, a live preview, and a store-preview row that shows the sequence as shoppers see it. Captions and translations come from a local model if you like; the same slides mirror to every device and locale.

3

Publish to five stores

Approve in the overview grid, then push: screenshots (only the slots that changed), listing text per locale, Play Data safety and Apple accessibility forms from one compliance.yaml, and the review submission itself. App Store, Google Play, AppGallery, Amazon and Microsoft Store. Fastlane export still works if you prefer it.

4

Hand it to an agent

Every step above is an MCP tool and a CLI command. Set the project up once, install nss-mcp or the skill, and an agent runs the loop for every release: preflight, capture, captions, frame, check, export, upload, listing text, compliance, submit. You read what the stores said.

Composes withClaude CodeCursorCodex CLIMaestromobile-mcpFastlaneOllama

One project

Capture, frame, publish, automate. Four steps, one project.

  • ·Five stores
  • ·Listing text & translation
  • ·Compliance forms
  • ·Review submission
  • ·Local AI
  • ·CLI, MCP and CI

Captions without a cloud

Local AI for copy, on your terms.

Pick the model per project. On Apple silicon the default is the system language model from Apple's Foundation Models framework: it runs entirely on the Neural Engine, needs no account, and nothing leaves the Mac. On any platform, point Nitro at a local Ollama server. Claude is there when you want the strongest writer and don't mind the round-trip.

A note on honesty: Apple does not open Private Cloud Compute to third-party apps, so the Apple option is strictly on-device. If a caption needs more than a 3B model can give, use Ollama with a bigger model or Claude.

  • Apple IntelligenceOn-device · macOS 26+ · Foundation Models
  • OllamaLocal · any OS · llama3.2 by default
  • ClaudeCloud · ANTHROPIC_API_KEY · best quality
  • Offline templateDeterministic · never fails · fine for drafts
  • Every backend uses the same prompt and the same store rules: no superlatives, no emoji, no “Best”, “#1”, “Top”, “New”, or “Free” on a feature graphic.

Also in the box

The small jobs you keep opening five websites for.

Each one is a tab in the app and a tool on the MCP server. All of it runs locally.

Icon packs

Apple App Store (16 sizes + the 1024 marketing icon), Next.js favicons (the whole App Router tree with social cards and a web manifest), Android adaptive (six densities). One source image.

Background removal

Apple's Vision framework isolates the subject on the Neural Engine. macOS 14+, no upload, no account.

Crop, rotate, resize

Lossless PNG output, Lanczos resampling, never touches the original.

Preview-video check

Validates an App Store preview against the live spec — 15–30 s, 886×1920 or 1200×1600, ≤30 fps, ≤500 MB — and a Play YouTube link against the 30-second rule.

Device matrix, five stores

App Store, Google Play, Huawei AppGallery, Amazon Appstore and Microsoft Store. iPhone 18 Pro bezels, iPhone Duo outer and inner (required from April 2027), MacBook Pro, Apple TV, iMessage, Pixel 10 Pro and Pro Fold, Huawei Mate, Fire HD, Surface — every bezel a variant you can switch, every spec in a downloadable device pack.

Marketing art with local AI

Apple Creative Assets (product page header 3840×1646, search results 3:2, Universal 5244×2950) with Apple's safe areas, Google feature graphic, Amazon promo, Microsoft hero art. Backgrounds from Draw Things or FLUX on your Mac, or Apple's Image Playground; the words are typeset, not hallucinated.

Locales you can actually ship

Projects start in English. Add any of App Store Connect's 50 localizations or Google Play's 80+ from the real lists; export maps ids per store (zh-Hans → zh-CN).

Agent-native

Every button is a tool call.

Register the local server over stdio for full file access, or point your agent at the hosted endpoint on this domain for zero-install. Same tool names, same schemas. Capture still comes from mobile-mcp or Maestro; Nitro handles framing, copy, icons, validation and export.

Add the MCP server
Claude Code — local (full file access)
cargo install nss-cli nss-mcp
claude mcp add nss -- nss-mcp
Claude Code — hosted, no install
claude mcp add nss-remote --transport http https://nitroshot.gauthamvijay.com/mcp
Cursor / Codex — ~/.cursor/mcp.json
{ "mcpServers": { "nss": { "command": "nss-mcp" } } }

One Pro plan. Weekly to lifetime.

Mac App Store billing through Apple, or a signed license key for direct downloads. Cancel any time.

See pricing