
Blitz MCP Server for iOS and App Store Connect: Setup for Claude and Cursor
Lets Claude, Cursor and other assistants run the iOS simulator and manage App Store Connect through the Blitz Mac app.
Blitz is a native Mac app for shipping iOS apps. Its MCP server lets your assistant switch projects, boot simulators, fill in your App Store listing, upload screenshots, create purchases and subscriptions, build a signed app and upload it.
It works only on a Mac with Blitz installed and open. Your assistant acts on your real App Store Connect account, so check each change before you save or submit.
Good for
- Indie iOS developers who want an assistant to handle App Store Connect chores
- Teams shipping updates who want builds and uploads scripted by an agent
- Developers who want to read rejection feedback and fix it quickly
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install blitz-mac MCP
Claude Code
- 1
Copy this prompt.
Add the blitz-mac MCP server to Claude Code. Run this command: claude mcp add blitz-mac -- npx -y @blitzdev/blitz-mcp Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires macOS with Blitz.app, Node.js, Node.js.
Read-only mode: There is no read-only mode. Keep per-tool approval on in your app.
Install Blitz from blitz-mac.com into /Applications and open it once, because the npm package is only a bridge to the app and exits if /Applications/Blitz.app or ~/.blitz/blitz-mcp-bridge.sh is missing. The configs below are built from the package name and are generated, not copied from the README.
Built from the package data we hold. Not yet tested by us.
Tools
Shows the current project, tab and status
Reports which project and tab are open in Blitz and whether it is streaming.
Try: “What project is open in Blitz?”
Read ·
app_get_stateSwitches the active tab in Blitz
Moves the Blitz window to another sidebar tab, such as app information or screenshots.
Try: “Go to the screenshots tab.”
Write ·
nav_switch_tabLists Blitz's tabs
Returns all the tabs in the Blitz sidebar and their groups.
Try: “Which tabs does Blitz have?”
Read ·
nav_list_tabsLists your Blitz projects
Returns every project Blitz knows about.
Try: “List my Blitz projects.”
Read ·
project_listShows the open project's details
Returns the details of the project that is active now.
Try: “Show the active project.”
Read ·
project_get_activeOpens a project by ID
Opens one of your projects in Blitz.
Try: “Open the project with ID abc123.”
Write ·
project_openCreates a new Blitz project
Creates a new project in Blitz.
Try: “Create a new project called Notes.”
Write ·
project_createImports an existing project from a path
Brings an existing iOS project from a folder on your Mac into Blitz.
Try: “Import the project in ~/Code/MyApp.”
Write ·
project_importCloses the current project
Closes the project that is open.
Try: “Close the current project.”
Write ·
project_closeLists simulators and connected devices
Returns every iOS simulator and physical device Blitz can see.
Try: “Which simulators are available?”
Read ·
simulator_list_devicesSelects and boots a simulator
Picks a simulator by its UDID and starts it.
Try: “Boot the iPhone 16 simulator.”
Runs code ·
simulator_select_deviceReads Blitz's settings
Returns the app's current settings.
Try: “Show my Blitz settings.”
Read ·
settings_getChanges Blitz's settings
Updates settings in the running app, not yet saved to disk.
Try: “Turn on auto-navigation.”
Write ·
settings_updateSaves settings to disk
Writes the current settings to disk.
Try: “Save the settings.”
Write ·
settings_saveTakes a picture of the Blitz window
Captures the main Blitz window as an image.
Try: “Show me what Blitz looks like right now.”
Read ·
get_blitz_screenshotReads Apple's rejection reasons
Returns cached rejection feedback for an app version, such as guidelines broken and reviewer messages, without an Apple ID sign-in.
Try: “Why was my last version rejected?”
Read ·
get_rejection_feedbackReads the data behind any Blitz tab
Returns structured data such as form values, versions, builds and whether the app is ready to submit, so the assistant does not need screenshots.
Try: “Is my app ready to submit?”
Read ·
get_tab_statePre-fills your App Store Connect API key form
Fills in the issuer ID and key file in Blitz's credential form. You confirm in the app before it is saved.
Try: “Set up my App Store Connect key from this .p8 file.”
Write ·
asc_set_credentialsFills in App Store Connect fields
Fills one or more fields in the app information or other tabs, optionally for one locale, and can switch to that tab for you.
Try: “Set the app subtitle to 'Notes that sync'.”
Write ·
asc_fill_formSwitches app information to another language
Refreshes the app's localizations from App Store Connect and shows the one you pick.
Try: “Switch app info to German.”
Write ·
app_information_switch_localizationOlder name for the localization switch
A deprecated alias for the app information localization tool.
Try: “Switch the store listing to French.”
Write ·
store_listing_switch_localizationSwitches the screenshots tab to another language
Refreshes screenshot data from App Store Connect for a locale and loads its screenshot slots. Call it before changing slots for a specific locale.
Try: “Open the Spanish screenshots.”
Write ·
screenshots_switch_localizationPuts a screenshot into a slot
Imports a screenshot file into slot 1 to 10. If the slot is taken, later screenshots shift right.
Try: “Put this image in slot 1.”
Write ·
screenshots_put_track_slotRemoves the screenshot in a slot
Removes the screenshot staged in one slot, slot 1 to 10. Saving then syncs the change to App Store Connect.
Try: “Remove the screenshot in slot 3.”
Delete ·
screenshots_remove_track_slotReorders the screenshots
Reorders the current screenshot row using a full list of ten positions.
Try: “Swap slots 2 and 3.”
Write ·
screenshots_reorder_trackSaves screenshot changes to App Store Connect
Uploads the staged screenshot changes to App Store Connect for one device family or for all prepared ones in the current locale.
Try: “Save the screenshot changes.”
Write ·
screenshots_saveSelects an App Store version
Selects a version by ID or version string and refreshes the release view.
Try: “Select version 2.1.”
Write ·
asc_select_versionCreates a new App Store version
Creates a new version of the app, optionally copying metadata or review contact details from another version and attaching a build.
Try: “Create version 2.2 and copy from 2.1.”
Write ·
asc_create_versionChecks submission readiness
Checks what is missing for submission and opens the Submit for Review window in Blitz, listing any required fields still empty.
Try: “Is my app ready to submit for review?”
Write ·
asc_open_submit_previewCreates an in-app purchase
Creates the purchase in App Store Connect with an en-US localization, a price and a review screenshot. The description says you must provide a screenshot.
Try: “Create a $4.99 in-app purchase called Pro.”
Write ·
asc_create_iapCreates an auto-renewable subscription
Creates or reuses a subscription group, adds the subscription with an en-US localization and price, and uploads a review screenshot.
Try: “Create a monthly $2.99 subscription.”
Write ·
asc_create_subscriptionOpens the Apple ID sign-in window
Opens a login window in Blitz so you can sign in to App Store Connect. The login cookies are synced to ~/.blitz/asc-agent/web-session.json for later calls.
Try: “My App Store Connect session expired, sign me in again.”
Write ·
asc_web_authConfirms a newly created app record
Polls App Store Connect up to 10 times for the app record created in the bundle ID setup, then runs the same confirmation as the Confirm button.
Try: “Confirm the app I just created.”
Write ·
asc_confirm_created_appSets the app's price
Sets the App Store price, with 0 for free, and can schedule a future price change.
Try: “Make the app free.”
Write ·
asc_set_app_priceSets up code signing
Registers the bundle ID, creates a distribution certificate (and an installer certificate for macOS), installs the provisioning profile and configures the Xcode project.
Try: “Set up code signing for this app.”
Runs code ·
app_store_setup_signingBuilds a signed IPA
Archives the Xcode project and exports a signed IPA for App Store submission.
Try: “Build the app for the App Store.”
Runs code ·
app_store_buildUploads a build to App Store Connect
Uploads an IPA to App Store Connect and TestFlight and can wait for processing to finish.
Try: “Upload the latest build.”
Write ·
app_store_upload
Read from the source code
Permissions
high risk · 7 things to watch
High risk
The assistant can change your App Store listing, pricing and in-app purchases, sign and upload builds, and save sign-in cookies on your Mac. Keep per-tool approval on and review every change in Blitz before it is saved or submitted.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It changes your live App Store Connect account
Tools can create versions, in-app purchases and subscriptions, set the app price, and save screenshots to the store. By default Blitz shows a popup and waits for your approval before each of these calls (ASC form editing, screenshot upload and submit for review are separate toggles in Settings > Permissions). The Approve all switch turns the popups off. github.com
It can sign, build and upload apps from your Mac
app_store_setup_signing creates certificates and provisioning profiles, and app_store_build and app_store_upload build and upload an IPA. These calls are in the Build pipeline approval category, which asks first by default. Use it only on projects you mean to ship. github.com
Apple ID session cookies are saved to disk
asc_web_auth stores a web session in ~/.blitz/asc-agent/web-session.json for later calls. Treat that file like a password. github.com
Removing a screenshot slot can reach the store
screenshots_remove_track_slot removes a staged screenshot, and screenshots_save syncs the change to App Store Connect. github.com
It needs the Blitz app running on your Mac
The npm package is a thin bridge that exits unless /Applications/Blitz.app and its bridge script exist. github.com
Official builds send anonymous usage events to Blitz
The README says GitHub release builds may send anonymous telemetry, including MCP and App Store Connect tool usage events with a device ID, the tool type, success and duration. It says no project names, paths, form values or prompts are recorded. Source builds stay off by default. github.com
The MCP server listens on localhost only
The README says the built-in server binds to 127.0.0.1 and is not exposed to the network. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | No read-only switch is documented. Blitz asks for approval before changing calls by default, per category, but you cannot remove the changing tools. |
|---|---|
| Talks to | App Store Connect and Apple developer services. Blitz analytics endpoint (anonymous usage events, official builds) |
| Sign-in and keys | You enter an App Store Connect API key in the Blitz app. The Apple ID sign-in saves web session cookies to ~/.blitz/asc-agent/web-session.json. |
| Scopes |
|
Questions
Is it official?
It is Blitz's own server, shipped with the Blitz Mac app and published by the same team. It is not made by Apple.
What do I need before installing?
A Mac with the Blitz app installed in the Applications folder and launched at least once. The npm package exits with an error if the app or its bridge script is missing.
Does it work on Windows or Linux?
No. Blitz is a native macOS app, and the README lists macOS 14 or later for building it.
Do I need an Apple Developer account?
Yes for App Store Connect work. Blitz asks for an App Store Connect API key (issuer ID, key ID and a .p8 file), and some actions use an Apple ID web sign-in.
Can it submit my app for review?
It checks readiness and opens the Submit for Review window in Blitz. The README describes triggering App Store review submissions through the app.
Is it free?
The source is Apache-2.0 licensed and the README says you can build it yourself. It does not give a price for the downloadable app.
Which clients does it work in?
The README names Claude Code, Codex, Cursor and any MCP client. It runs locally over a bridge, so it fits apps that start local servers.
Can I run it read-only?
No. No read-only switch is documented. By default Blitz does ask for your approval in a popup before form edits, screenshot changes, version creation, builds, project changes, settings changes and simulator control. Navigation and read tools, and a few sign-in helpers, run without asking. The Approve all setting turns the popups off.
Information
updated Nov 2, 2026
- Publisher
- Official
- Package
@blitzdev/blitz-mcp- Registry
- npm
- Transport
- stdio
- Auth
- None
- Version
- 1.0.26
- License
- Apache-2.0
- Last commit
- Jul 14, 2026
- Open issues
- 6
- Listed in
- Official MCP registry
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 5Hide
- npm bridge script (packages/mcp-npm/bin/cli.js) · github.com
- Blitz README · github.com
- Blitz tool registry (MCPRegistry.swift) · github.com
- npm package @blitzdev/blitz-mcp · registry.npmjs.org
- Blitz ApprovalRequest.swift · github.com