| name | app-store-connect |
| description | This skill should be used when the user asks about App Store Connect data โ their apps, builds, TestFlight beta testers, customer reviews, sales reports, or team users. Triggers on phrases like "check App Store Connect", "list my apps", "TestFlight builds", "beta testers", "App Store reviews", "respond to review", "sales report", "invite tester", "App Store Connect users", or any request involving Apple developer / App Store Connect / TestFlight management. |
app-store-connect-mcp
MCP server for App Store Connect โ 21 tools covering apps, TestFlight, customer reviews, sales/finance reports, and team users via the App Store Connect API.
Setup
Set three env vars in your MCP host config:
APP_STORE_CONNECT_KEY_ID โ 10-character Key ID (e.g. ABC1234567)
APP_STORE_CONNECT_ISSUER_ID โ Team Issuer ID (UUID)
APP_STORE_CONNECT_PRIVATE_KEY_PATH โ absolute path to your downloaded .p8 file (or paste PEM into APP_STORE_CONNECT_PRIVATE_KEY)
Generate a key at appstoreconnect.apple.com โ Users and Access โ Integrations โ App Store Connect API. Save the .p8 (only downloadable once).
Tools
Apps
list_apps โ List apps (filter by bundleId/name)
get_app โ App details by ID
list_app_store_versions โ Releases for an app
get_app_infos โ Age rating and store-state info
TestFlight
list_builds โ Recent builds, newest first
get_build โ Single build details
list_beta_groups โ Internal & external beta groups
list_beta_testers โ Testers, filter by app/group/email
invite_beta_tester โ Add a new tester (optionally to groups/builds)
delete_beta_tester โ Remove tester from team
add_testers_to_beta_group โ Bulk add to a group
remove_testers_from_beta_group โ Bulk remove from a group
submit_build_for_beta_review โ Send build for beta review
Customer Reviews
list_customer_reviews โ Reviews for an app, filter by rating/territory
get_customer_review โ Single review with developer response
respond_to_review โ Post or update reply
Sales & Finance
download_sales_report โ Daily/weekly/monthly/yearly units & sales TSV
download_finance_report โ Region-scoped finance/proceeds TSV
Team Users
list_users โ Team users
list_user_invitations โ Pending invitations
invite_user โ Invite new team member with roles
Common workflows
Triage low-rated reviews
list_customer_reviews with rating: 1 (sorted -createdDate by default)
- For each,
get_customer_review to see if there's already a response
respond_to_review to reply
Promote a build to external testers
list_builds with appId to find the build (look for processingState: VALID)
submit_build_for_beta_review with that build's ID
- After Apple approval,
add_testers_to_beta_group for the external group
Onboard a new beta tester
list_beta_groups with appId to find the right group
invite_beta_tester with email, optional name, and betaGroupIds
Daily sales pull
download_sales_report with your vendorNumber (from App Store Connect โ Payments and Financial Reports), reportDate: YYYY-MM-DD, default frequency: DAILY
- Reports are typically available ~24h after the close of the date
Notes
- App Store Connect uses JSON:API: filters are
filter[name]=value, sorts use - prefix for descending.
- All write operations (invites, deletions, review responses, beta review submission) require an API key with sufficient role (App Manager or Admin for most TestFlight/team work).
- Sales reports come back as gzipped TSVs and are auto-parsed into row objects. The tool truncates after
limit rows (default 500) but reports the total row count.
- Expect a real
.p8 file path (or PEM string). The MCP signs short-lived (20-minute) ES256 JWTs locally โ your private key never leaves the machine.