App Store Connect MCP Server
About
MCP server for App Store Connect API with 208 tools across 25 workers. Manage apps, builds, TestFlight, in-app purchases, subscriptions, reviews, provisioning, screenshots, analytics, and more - directly from Claude, Cursor, VS Code, or any MCP client. Multi-account support, work
Details
- Author
- zelentsov-dev
- Downloads
- 508
- Categories
- Developer Tools
Jump to
- Multi-account support: manage multiple App Store Connect teams from one server
- Full release pipeline: create versions, attach builds, submit for review, phased rollout
- TestFlight automation: beta groups, testers, build distribution, localized What's New
- Customer reviews: list, respond, update, delete responses, aggregate statistics
- In-app purchases and subscriptions: CRUD, localizations, price points, offer codes
- Provisioning and marketing: bundle IDs, certificates, screenshots, A/B testing (PPO)
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
App Store Connect MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install via Mint (mint install zelentsov-dev/asc-mcp@1.4.0) or build from source, then configure with an App Store Connect API key (Key ID, Issuer ID, private key .p8 file). Add the server to your MCP host (e.g., Claude Code, Claude Desktop, VS Code, Cursor, Windsurf) using environment variables or a JSON config file. For clients with tool limits, use the --workers flag to load only the tools you need.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"app store connect mcp server": {
"asc-mcp": {
"command": "/Users/YOU/.mint/bin/asc-mcp",
"env": {
"ASC_KEY_ID": "YOUR_KEY_ID",
"ASC_ISSUER_ID": "YOUR_ISSUER_ID",
"ASC_PRIVATE_KEY_PATH": "/path/to/AuthKey.p8"
}
}
}
}
}
McpServers
{
"asc-mcp": {
"command": "/Users/YOU/.mint/bin/asc-mcp",
"env": {
"ASC_KEY_ID": "YOUR_KEY_ID",
"ASC_ISSUER_ID": "YOUR_ISSUER_ID",
"ASC_PRIVATE_KEY_PATH": "/path/to/AuthKey.p8"
}
}
}
<p align="center">
<h1 align="center">App Store Connect MCP Server</h1>
<p align="center">
A Model Context Protocol server for the App Store Connect API.<br/>
Manage apps, builds, TestFlight, reviews, and more — directly from Claude.
</p>
</p>
<p align="center">
<a href="https://swift.org"></a>
<a href="https://developer.apple.com/macos/"></a>
<a href="https://modelcontextprotocol.io"></a>
<a href="LICENSE"></a>
<a href="https://github.com/zelentsov-dev/asc-mcp/actions"></a>
</p>
<p align="center">
<strong>Works with:</strong><br/>
<a href="https://claude.ai/code"></a>
<a href="https://claude.ai/download"></a>
<a href="https://code.visualstudio.com"></a>
<a href="https://cursor.com"></a>
<a href="https://windsurf.com"></a>
<a href="https://github.com/openai/codex"></a>
<a href="https://ai.google.dev"></a>
</p>
---
Overview
asc-mcp is a Swift-based MCP server that bridges Claude (or any MCP-compatible host) with the App Store Connect API. It exposes 208 tools across 25 workers, enabling you to automate your entire iOS/macOS release workflow through natural language.
Key capabilities
- Multi-account — manage multiple App Store Connect teams from a single server
- Full release pipeline — create versions, attach builds, submit for review, phased rollout
- TestFlight automation — beta groups, testers, build distribution, localized What's New
- Build management — track processing, encryption compliance, readiness checks
- Customer reviews — list, respond, update, delete responses, aggregate statistics
- In-app purchases — CRUD for IAPs, localizations, price points, review screenshots
- Subscriptions — subscription CRUD, groups, localizations, prices, offer codes, win-back offers
- Provisioning — bundle IDs, devices, certificates, profiles, capabilities
- Marketing — screenshots, app previews, custom product pages, A/B testing (PPO), promoted purchases
- Analytics & Metrics — sales/financial reports, analytics reports, performance metrics, diagnostics
- Metadata management — localized descriptions, keywords, What's New across all locales
Quick Start
# 1. Install via Mint
brew install mint
mint install zelentsov-dev/asc-mcp@1.4.0
2. Add to Claude Code with env vars (simplest setup)
claude mcp add asc-mcp \
-e ASC_KEY_ID=XXXXXXXXXX \
-e ASC_ISSUER_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
-e ASC_PRIVATE_KEY_PATH=/path/to/AuthKey.p8 \
-- ~/.mint/bin/asc-mcp
Or use a JSON config file — see Configuration below.
Prerequisites
| Requirement | Version |
|-------------|---------|
| macOS | 14.0+ (Sonoma) |
| Swift | 6.2+ |
| Xcode | 16.0+ (for building) |
| App Store Connect API Key | Create one here |
Installation
Option A: Mint (recommended)
Mint is the simplest way to install — one command, no manual cloning.
# Install Mint (if you don't have it)
brew install mint
Install asc-mcp from GitHub
mint install zelentsov-dev/asc-mcp@1.4.0
Register in Claude Code
claude mcp add asc-mcp -- ~/.mint/bin/asc-mcp
To install a specific branch or tag:
mint install zelentsov-dev/asc-mcp@main # main branch
mint install zelentsov-dev/asc-mcp@develop # develop branch
mint install zelentsov-dev/asc-mcp@1.4.0 # specific tag
To update to the latest version:
mint install zelentsov-dev/asc-mcp@1.4.0 --force
Option B: Build from Source
git clone https://github.com/zelentsov-dev/asc-mcp.git
cd asc-mcp
swift build -c release
Register in Claude Code
claude mcp add asc-mcp -- $(pwd)/.build/release/asc-mcp
> [!TIP]
> For convenience, copy the binary to a location in your PATH:
>
> cp .build/release/asc-mcp /usr/local/bin/asc-mcp
>
Configuration
1. App Store Connect API Key
1. Go to App Store Connect → Users and Access → Integrations → Team Keys
2. Click Generate API Key — select appropriate role (Admin or App Manager recommended)
3. Download the .p8 private key file (you can only download it once!)
4. Note the Key ID and Issuer ID
2. Companies Configuration
asc-mcp supports three configuration methods (checked in this order):
Option A: Environment Variables (recommended for MCP clients)
Single company — simplest setup:
export ASC_KEY_ID=XXXXXXXXXX
export ASC_ISSUER_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
export ASC_PRIVATE_KEY_PATH=/path/to/AuthKey.p8
or pass the key content directly:
export ASC_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\nMIGT..."
optional:
export ASC_COMPANY_NAME="My Company"
export ASC_VENDOR_NUMBER=YOUR_VENDOR_NUMBER # for analytics
Multiple companies — numbered variables:
export ASC_COMPANY_1_NAME="My Company"
export ASC_COMPANY_1_KEY_ID=XXXXXXXXXX
export ASC_COMPANY_1_ISSUER_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
export ASC_COMPANY_1_KEY_PATH=/path/to/AuthKey1.p8
export ASC_COMPANY_1_VENDOR_NUMBER=YOUR_VENDOR_NUMBER # optional, for analytics
export ASC_COMPANY_2_NAME="Client Corp"
export ASC_COMPANY_2_KEY_ID=YYYYYYYYYY
export ASC_COMPANY_2_ISSUER_ID=yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
export ASC_COMPANY_2_KEY_PATH=/path/to/AuthKey2.p8
> Numbering starts at 1. The server scans while ASC_COMPANY_{N}_KEY_ID exists.
Option B: JSON Config File
Create ~/.config/asc-mcp/companies.json:
{
"companies": [
{
"id": "my-company",
"name": "My Company",
"key_id": "XXXXXXXXXX",
"issuer_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"key_path": "/Users/you/.keys/AuthKey_XXXXXXXXXX.p8",
"vendor_number": "YOUR_VENDOR_NUMBER"
},
{
"id": "client-company",
"name": "Client Corp",
"key_id": "YYYYYYYYYY",
"issuer_id": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
"key_path": "/Users/you/.keys/AuthKey_YYYYYYYYYY.p8",
"vendor_number": "YOUR_VENDOR_NUMBER"
}
]
}
> Note: vendor_number is required for analytics tools (analytics_sales_report, analytics_financial_report, analytics_app_summary). Find it in App Store Connect → Sales and Trends → Reports.
Configuration Priority
The server resolves configuration in this order:
…
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





