# asc-mcp [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/pofky/asc-mcp  
**GitHub Stars:** 1  
**npm Downloads (last month):** 1246  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/asc-mcp-2

## Description
Drive App Store Connect end to end: metadata, screenshots, builds, TestFlight, submit, release.

## Tools
Capabilities this server exposes over MCP:

- **asc_guide** — START HERE. Returns the exact end-to-end playbook for an App Store task, with every manual ASC-website/Xcode step that no API can do flagged inline. Call with topic to orient before any multi-step flow. Free.
- **asc_setup_check** — Diagnose your setup: checks the .p8 key, Key ID, Issuer ID, a LIVE authenticated connection to App Store Connect, and your license tier. For anything wrong, returns the exact fix. Run this first if something isn't working. Free.
- **asc_start_trial** — Start a free 7-day Pro trial, no credit card, unlocking all 41 tools including the full write/control plane. Call this when a Pro tool is refused and the user wants to proceed, and also when they ask for something only a Pro tool can do (editing metadata, screenshots, builds, TestFlight, IAP, submitting, releasing, preflight, briefings, keyword or review intelligence) before you hit the refusal. Either way, ask for their email address first and never invent one. The trial activates in THIS session immediately, so you can retry the tool that was blocked without any restart. Free.
- **list_apps** — List all apps in your App Store Connect account with name, bundle ID, SKU and App ID.
- **app_details** — Get detailed info about an app including versions, build status, and release state.
- **review_status** — Check the current App Store review status - in review, waiting, approved, or rejected.
- **list_reviews** — List customer reviews for an app. Filter by rating. Pro feature.
- **sales_report** — Download sales/downloads summary. Shows units, proceeds, territory. Pro feature.
- **release_preflight** — Pre-submission audit: checks metadata, character limits, screenshots, build status. Catches rejection causes before you submit. Pro feature.
- **daily_briefing** — Morning briefing across all apps: version status, recent reviews, rejections, action items. One call for full situational awareness. Pro feature.
- **release_notes** — Extract git commits since last tag and return structured data for writing App Store 'What's New' text. Categorizes changes and provides writing guidelines. Pro feature.
- **keyword_insights** — Analyze your app's keywords against search competition. Shows difficulty, competing apps, and budget usage. Uses iTunes Search API. Pro feature.
- **competitor_snapshot** — Look up any app on the App Store: ratings, reviews, version, price, category, release notes. Search by name or App Store ID. Pro feature.
- **metadata_diff** — Compare metadata between your live and pending app versions. Shows what changed in descriptions, keywords, and release notes across locales. Pro feature.
- **triage_reviews** — Pull recent App Store reviews and use MCP Sampling to cluster them into 3 to 5 themes with counts, representative quotes, and action buckets (bug, missing_feature, pricing, ux, content). Sampling uses your own MCP client's model, so there is no extra cost from this server. Pro feature.
- **draft_review_response** — Draft a public reply to a single App Store review via MCP Sampling, in the review's locale. Uses Elicitation (if your client supports it) to ask for tone. NEVER auto-posts. Always returns a draft that you must post via App Store Connect yourself. Pro feature.
- **update_version_metadata** — Edit App Store metadata on the editable version: description, keywords, what's-new, promotional text, marketing/support/privacy-policy URLs, plus app name and subtitle. Validates Apple character limits before writing. Pro feature.
- **create_version** — Create a new editable App Store version to prepare your next release. Needs confirm:true, because Apple only allows deleting an app's very first version, so this cannot be undone. Pro feature.
- **submit_for_review** — Submit the editable version to Apple App Review. First submits any READY_TO_SUBMIT in-app purchases/subscriptions, then the version. If the app's FIRST in-app purchase is detected (which Apple requires be bundled with the version in the website), it ABORTS without submitting and returns the manual steps, so nothing is orphaned. Outward-facing action: requires confirm:true. Pro feature.
- **list_builds** — List recent builds for an app with processing state (VALID = ready to use). Pro feature.
- **wait_for_build** — Poll until the newest uploaded build finishes processing (VALID), so the ship flow is one call. Blocks for up to 30 minutes by default; if you should not hold the session that long, call list_builds yourself instead. Pro feature.
- **attach_build** — Attach a build to the editable version (defaults to the newest processed build). Pro feature.
- **upload_screenshots** — Upload screenshots to a version localization for a device display type (e.g. APP_IPHONE_67). Handles Apple's reserve/upload/commit flow. Pro feature.
- **release_version** — Release an approved version (state PENDING_DEVELOPER_RELEASE) to the public App Store. Outward-facing: requires confirm:true. Pro feature.
- **manage_phased_release** — Control the 7-day phased rollout: start, pause, resume, or complete (release to 100%). Pro feature.
- **list_beta_groups** — List TestFlight beta groups for an app. Pro feature.
- **assign_build_to_group** — Assign a build to a TestFlight beta group so testers can install it (defaults to newest processed build). Needs confirm:true: Apple notifies every tester immediately and the notification cannot be recalled. Pro feature.
- **invite_beta_tester** — Invite an external tester by email and add them to a beta group. Needs confirm:true: Apple emails a real person from your account and it cannot be recalled. Pro feature.
- **build_and_archive** — Build, archive, and export a signed .ipa via xcodebuild (requires Xcode on this Mac). Needs a scheme and an ExportOptions.plist. Pro feature.
- **upload_binary** — Upload a signed .ipa to App Store Connect via altool, using your API key. Outward-facing: requires confirm:true. Pro feature.
- **set_age_rating** — Set the app's age-rating content declarations (Apple computes 4+/9+/12+/17+). Pass a declarations map, e.g. { medicalOrTreatmentInformation: "INFREQUENT_OR_MILD" }. Pro feature.
- **set_privacy_nutrition** — Configure the App Privacy nutrition label. Apple does not expose this via API; returns the exact steps + deep link. Pass data_not_collected:true for the 'Data Not Collected' path. Pro feature.
- **set_eu_trader_status** — Declare EU Digital Services Act trader status. Not API-addressable; returns the exact steps + deep link. Pro feature.
- **create_subscription** — Create (idempotently) an auto-renewable subscription inside a group, with USA price and an optional free trial. Sets territory availability automatically. Pro feature.
- **create_iap** — Create (idempotently) a one-time in-app purchase (non-consumable or consumable) with USA price. Pro feature.
- **set_iap_review_screenshot** — Upload the App Review screenshot a subscription or in-app purchase needs to leave MISSING_METADATA. Resolves the product by product_id automatically. Pro feature.
- **set_app_metadata** — Set submission-required app basics: primary/secondary category (appCategory ids like HEALTH_AND_FITNESS), copyright, content-rights declaration, and export compliance (encryption). Each applied only if provided. Pro feature.
- **set_app_price** — Set the app's base price by creating its price schedule (USA base, auto-equalized). price_usd: 0 for free. Required before submission. Pro feature.
- **set_review_contact** — Set the App Review contact and optional demo account on the editable version. Required before submission. Pro feature.
- **set_app_availability** — Set the app's country/region availability. Requires an explicit choice: a territories list, or all_territories:true, or [] to take the app off sale worldwide. Pro feature.
- **setup_app_store_signing** — Prepare App Store binary signing without the cloud-signing permission many API keys lack: downloads the app's IOS_APP_STORE provisioning profiles (app + extensions), installs them, and writes a manual-signing ExportOptions.plist for build_and_archive. Needs an Apple Distribution certificate already in the keychain. Pro feature.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "asc-mcp": {
    "command": "npx",
    "args": ["-y","@pofky/asc-mcp"],
    "env": {
      "ASC_ISSUER_ID": "",
      "ASC_KEY_ID": "",
      "ASC_PRIVATE_KEY_PATH": "",
      "ASC_LICENSE_KEY": ""
    }
  }
}
```

**Requires environment variables:** `ASC_ISSUER_ID`, `ASC_KEY_ID`, `ASC_PRIVATE_KEY_PATH`, `ASC_LICENSE_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What asc-mcp MCP server does

The asc-mcp MCP server gives an AI agent access to App Store Connect workflows through 41 MCP tools. It can list apps, inspect version and review status, edit store metadata, upload screenshots, manage builds, operate TestFlight groups, set app pricing and metadata, submit versions for review, release approved versions, and manage phased releases.

The server also includes read and analysis features. Agents can retrieve reviews and sales reports, compare live and pending metadata, inspect competitors, analyze keywords, generate release notes from Git commits since the last tag, and produce a daily briefing across apps. A release preflight checks metadata, character limits, screenshots, and build status before submission.

Two review-oriented tools use MCP Sampling: one clusters recent reviews into themes, and another drafts a response in the review’s locale. Drafted responses are not posted automatically.

## How it works

Authentication uses an App Store Connect API key, its Issuer ID, and a downloaded `.p8` private-key file. The server communicates with App Store Connect through the API, so building and signing the binary remains a separate Mac-side task. Once a build is processed, the agent can wait for it, attach it to an editable version, and continue with submission or release.

The asc-mcp MCP server organizes common release operations into higher-level tools. For example, an agent can create an editable version, validate and update metadata, upload screenshots with checksums, attach a valid build, and submit it. Submission and public release require an explicit confirmation value. The `asc_guide` tool provides flow-specific instructions and identifies steps that still require the App Store Connect website.

## Setup and configuration

Create an App Store Connect API key with the Admin or App Manager role, then obtain the Issuer ID, Key ID, and `.p8` file. The recommended setup places the key at `~/.appstoreconnect/private_keys/AuthKey_XXXXXXXXXX.p8`. In that arrangement, the Issuer ID is the only required environment value because the Key ID and key path can be detected.

Install with npm or run it through `npx`:

```bash
npm install -g @pofky/asc-mcp
npx @pofky/asc-mcp init --write
```

The initialization command can find the key, request the Issuer ID, back up and update supported client configuration, and write the MCP server block. For non-interactive use, pass `--issuer`; `--config`, `--key-path`, `--key-id`, and `--license` are also available. The server can be added manually to an MCP configuration using `npx -y @pofky/asc-mcp`.

Run `npx @pofky/asc-mcp doctor` or call `asc_setup_check` to test credentials, the live App Store Connect connection, and license status.

## Tools and capabilities

- Inspect apps, versions, builds, review status, customer reviews, and sales by territory.
- Edit descriptions, keywords, promotional text, URLs, app names, subtitles, and release notes with character-limit validation.
- Upload screenshots, wait for build processing, and attach a processed build.
- Manage TestFlight groups, beta assignments, and external tester invitations.
- Set categories, copyright, content rights, export compliance, and base pricing.
- Submit versions, release approved versions, and control seven-day phased rollouts.
- Audit releases and summarize reviews, keywords, competitors, metadata differences, and Git-based release notes.

## Limitations and notes

The README identifies Claude Desktop, Claude Code, Cursor, Windsurf, and Cline as supported clients. The service has a seven-day trial followed by a stated $9 monthly Pro price; some tools remain free, while certain read-only Pro tools have limited preview usage without a license. The `.p8` key can only be downloaded once from Apple, so it must be stored securely. Building and signing the binary is not performed by the server and still requires a Mac-side process.

_Full upstream README: https://allmcps.com/mcp/asc-mcp-2/readme_

