Apple published an official App Store Connect MCP server on October 2, 2026. It connects Claude, Cursor, or any MCP-compatible client directly to App Store Connect - the backend that powers App Store listings, TestFlight distribution, build management, and App Analytics.
For iOS and macOS developers, this removes the context switch between the AI coding assistant and Apple's web dashboard. Instead of copying bundle IDs, pasting build numbers, or navigating TestFlight groups manually, the agent can query and mutate App Store Connect state through the same terminal where it writes code.
What the MCP server exposes
The server wraps the App Store Connect API as MCP tools. Key capabilities:
- Apps: List, create, update, and delete apps. Manage app information, categories, and pricing.
- Builds: List builds, upload new ones via Xcode or altool, manage processing state, expire builds.
- TestFlight: Manage beta groups, add/remove testers, configure test information, submit for external review.
- App Store: Manage version submissions, app store versions, age ratings, release control (manual/automatic), and phased release.
- Certificates & Profiles: List and manage signing certificates, provisioning profiles, and device registration.
- App Analytics: Query metrics - installs, sessions, retention, crashes, revenue - by app, version, territory, device.
- Users & Access: Manage team members, roles, and app-level permissions.
Authentication
The server uses App Store Connect API keys (issuer ID, key ID, private key .p8 file). Generate a key in App Store Connect → Users and Access → Keys with the required roles (Admin, App Manager, or Developer depending on operations). The MCP server reads these from environment variables or a config file.
# Example env vars for the MCP server
export ASC_ISSUER_ID="your-issuer-id"
export ASC_KEY_ID="your-key-id"
export ASC_PRIVATE_KEY_PATH="/path/to/AuthKey_XXXXXX.p8"
Installation
Add to your MCP client config (Claude Desktop, Claude Code, Cursor, etc.):
{
"mcpServers": {
"app-store-connect": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-app-store-connect"],
"env": {
"ASC_ISSUER_ID": "your-issuer-id",
"ASC_KEY_ID": "your-key-id",
"ASC_PRIVATE_KEY_PATH": "/absolute/path/to/AuthKey_XXXXXX.p8"
}
}
}
}
Or run standalone for testing:
npx -y @modelcontextprotocol/server-app-store-connect
Why this matters for agentic iOS development
Most iOS developers live in Xcode and terminal. The App Store Connect dashboard is a separate context - different auth, different mental model, manual clicks. An MCP server bridges that gap:
- Release automation: "Bump the version, build, upload to TestFlight, add the internal testing group, and submit for review" becomes a single agent instruction.
- Debugging in context: "Why did build 42 fail?" The agent fetches the build log, parses the error, and proposes a fix without leaving the editor.
- Analytics-driven iteration: "Show me retention for v3.2 vs v3.1 by country" - the agent queries App Analytics and summarizes trends.
- Certificate hygiene: "List expiring profiles and regenerate them" - the agent handles the full rotation cycle.
This is the first major platform vendor (Apple) shipping an official MCP server. It signals that MCP is becoming the standard interface for developer-facing APIs - not just a community convention. Microsoft, Cloudflare, and now Apple are treating MCP as a first-class integration surface.
Caveats
- Rate limits: App Store Connect API has strict quotas (1000 req/min for most endpoints). Bulk operations need throttling.
- Permissions: The API key's role gates what the agent can do. An Admin key can delete apps - scope keys narrowly.
- Not all endpoints wrapped: The initial release covers the high-value surfaces. Some niche endpoints (Game Center, App Clip, In-App Purchase details) may need direct API calls.
- No sandbox: Actions are live. "Submit for review" actually submits. Use a test app or separate team for agent experimentation.
What to try this week
- Generate an App Store Connect API key with App Manager role (scoped to one app if possible).
- Add the MCP server to your client config and test
list_apps. - Try a read-only workflow: "Show me the last 5 TestFlight builds for my app and their processing states."
- Then a write workflow: "Create a new TestFlight group called 'AI Testing' and add my email."
The server is open source (apple/app-store-connect-mcp) under Apache-2.0. Issues and PRs welcome.
If this was useful, you can support my open-source work on Ko-fi or check out my services.