# App Store Connect MCP server

> Lets an AI client manage App Store Connect apps, builds, TestFlight, subscriptions, reviews, and Xcode Cloud through 500+ tools.

- Repository: https://github.com/zelentsov-dev/asc-mcp
- Page: https://hostedmcp.org/servers/zelentsov-dev/asc-mcp
- Transport: —
- Stars: 86
- License: MIT

## Environment variables

| Name | Required | Secret | Description |
|---|---|---|---|
| `ASC_COMPANY_1_ISSUER_ID` | no | no |  |
| `ASC_COMPANY_1_KEY_ID` | no | no |  |
| `ASC_COMPANY_1_KEY_PATH` | no | no |  |
| `ASC_COMPANY_1_NAME` | no | no |  |
| `ASC_COMPANY_2_ISSUER_ID` | no | no |  |
| `ASC_COMPANY_2_KEY_ID` | no | no |  |
| `ASC_COMPANY_2_KEY_PATH` | no | no |  |
| `ASC_COMPANY_2_NAME` | no | no |  |
| `ASC_COMPANY_NAME` | no | no |  |
| `ASC_ISSUER_ID` | no | no |  |
| `ASC_KEY_ID` | no | no |  |
| `ASC_PRIVATE_KEY_PATH` | no | no |  |
| `ASC_VENDOR_NUMBER` | no | no |  |

## Tools (200)

- `company_list`
- `company_switch`
- `company_current`
- `auth_generate_token`
- `auth_validate_token`
- `auth_refresh_token`
- `auth_token_status`
- `apps_list`
- `apps_get_details`
- `apps_search`
- `apps_list_versions`
- `apps_get_metadata`
- `apps_list_search_keywords`
- `apps_update_metadata`
- `apps_list_localizations`
- `apps_create_localization`
- `apps_delete_localization`
- `accessibility_list`
- `accessibility_get`
- `accessibility_create`
- `accessibility_update`
- `accessibility_delete`
- `accessibility_list_relationships`
- `webhooks_list`
- `webhooks_get`
- `webhooks_create`
- `webhooks_update`
- `webhooks_delete`
- `webhooks_list_deliveries`
- `webhooks_redeliver`
- `webhooks_ping`
- `webhooks_verify_signature`
- `webhooks_parse_payload`
- `webhooks_triage_event`
- `xcode_cloud_products_list`
- `xcode_cloud_products_get`
- `xcode_cloud_products_delete`
- `xcode_cloud_app_product_get`
- `xcode_cloud_product_app_get`
- `xcode_cloud_product_primary_repositories_list`
- `xcode_cloud_product_additional_repositories_list`
- `xcode_cloud_product_workflows_list`
- `xcode_cloud_product_build_runs_list`
- `xcode_cloud_workflows_get`
- `xcode_cloud_workflows_create`
- `xcode_cloud_workflows_update`
- `xcode_cloud_workflows_delete`
- `xcode_cloud_workflow_repository_get`
- `xcode_cloud_workflow_build_runs_list`
- `xcode_cloud_build_runs_get`
- `xcode_cloud_build_runs_start`
- `xcode_cloud_build_run_actions_list`
- `xcode_cloud_build_run_builds_list`
- `xcode_cloud_actions_get`
- `xcode_cloud_action_build_run_get`
- `xcode_cloud_action_artifacts_list`
- `xcode_cloud_action_issues_list`
- `xcode_cloud_action_test_results_list`
- `xcode_cloud_artifacts_get`
- `xcode_cloud_issues_get`
- `xcode_cloud_test_results_get`
- `xcode_cloud_xcode_versions_list`
- `xcode_cloud_xcode_versions_get`
- `xcode_cloud_xcode_version_macos_versions_list`
- `xcode_cloud_macos_versions_list`
- `xcode_cloud_macos_versions_get`
- `xcode_cloud_macos_version_xcode_versions_list`
- `xcode_cloud_scm_providers_list`
- `xcode_cloud_scm_providers_get`
- `xcode_cloud_scm_provider_repositories_list`
- `xcode_cloud_scm_repositories_list`
- `xcode_cloud_scm_repositories_get`
- `xcode_cloud_scm_repository_git_references_list`
- `xcode_cloud_scm_repository_pull_requests_list`
- `xcode_cloud_scm_git_references_get`
- `xcode_cloud_scm_pull_requests_get`
- `beta_feedback_list_crashes`
- `beta_feedback_get_crash`
- `beta_feedback_get_crash_log`
- `beta_feedback_get_crash_log_by_id`
- `beta_feedback_delete_crash`
- `beta_feedback_list_screenshots`
- `beta_feedback_get_screenshot`
- `beta_feedback_delete_screenshot`
- `builds_list`
- `builds_get`
- `builds_find_by_number`
- `builds_list_for_version`
- `build_uploads_list`
- `build_uploads_get`
- `build_uploads_create`
- `build_uploads_delete`
- `build_uploads_list_files`
- `build_uploads_get_file`
- `build_uploads_reserve_file`
- `build_uploads_commit_file`
- `build_uploads_upload_file`
- `build_uploads_upload`
- `builds_get_processing_state`
- `builds_update_encryption`
- `builds_get_processing_status`
- `builds_check_readiness`
- `export_compliance_list_declarations`
- `export_compliance_get_declaration`
- `export_compliance_create_declaration`
- `export_compliance_create_document`
- `export_compliance_get_document`
- `export_compliance_update_document`
- `export_compliance_upload_document`
- `export_compliance_inspect_document`
- `export_compliance_get_build_declaration`
- `export_compliance_attach_build_declaration`
- `export_compliance_check_release_readiness`
- `builds_get_beta_detail`
- `builds_update_beta_detail`
- `builds_set_beta_localization`
- `builds_list_beta_localizations`
- `builds_get_beta_groups`
- `builds_get_beta_testers`
- `builds_send_beta_notification`
- `builds_add_to_beta_groups`
- `builds_add_individual_testers`
- `builds_remove_individual_testers`
- `builds_list_individual_testers`
- `beta_groups_list`
- `beta_groups_create`
- `beta_groups_update`
- `beta_groups_delete`
- `beta_groups_add_testers`
- `beta_groups_remove_testers`
- `beta_groups_list_testers`
- `beta_groups_add_builds`
- `beta_groups_remove_builds`
- `beta_groups_get_recruitment_criteria`
- `beta_groups_create_recruitment_criteria`
- `beta_groups_update_recruitment_criteria`
- `beta_groups_delete_recruitment_criteria`
- `beta_groups_list_recruitment_options`
- `beta_groups_check_recruitment_compatibility`
- `app_versions_create`
- `app_versions_list`
- `app_versions_get`
- `app_versions_get_age_rating_declaration`
- `app_versions_list_territory_age_ratings`
- `app_versions_update`
- `app_versions_attach_build`
- `app_versions_submit_for_review`
- `app_versions_cancel_review`
- `app_versions_release`
- `app_versions_create_phased_release`
- `app_versions_get_phased_release`
- `app_versions_update_phased_release`
- `app_versions_delete_phased_release`
- `app_versions_set_review_details`
- `app_versions_update_age_rating`
- `app_versions_delete`
- `reviews_list`
- `reviews_get`
- `reviews_list_for_version`
- `reviews_stats`
- `reviews_create_response`
- `reviews_delete_response`
- `reviews_get_response`
- `reviews_summarizations`
- `iap_list`
- `iap_get`
- `iap_create`
- `iap_update`
- `iap_delete`
- `iap_list_localizations`
- `iap_create_localization`
- `iap_update_localization`
- `iap_delete_localization`
- `iap_submit_for_review`
- `iap_list_subscriptions`
- `iap_get_subscription_group`
- `iap_inventory`
- `iap_list_price_points`
- `iap_list_price_point_equalizations`
- `iap_get_price_schedule`
- `iap_set_price_schedule`
- `iap_pricing_summary`
- `iap_prepare_offer_prices`
- `iap_set_availability`
- `iap_get_availability`
- `iap_list_available_territories`
- `iap_get_promoted_purchase`
- `iap_list_offer_codes`
- `iap_get_offer_code`
- `iap_create_offer_code`
- `iap_update_offer_code`
- `iap_deactivate_offer_code`
- `iap_list_offer_code_prices`
- `iap_generate_one_time_codes`
- `iap_list_one_time_codes`
- `iap_get_one_time_code`
- `iap_update_one_time_code`
- `iap_deactivate_one_time_code`
- `iap_get_one_time_code_values`
- `iap_create_custom_code`

## FAQ

### What can the App Store Connect MCP server do?

It exposes tools across App Store Connect domains, covering release and metadata, TestFlight, monetization, marketing assets, provisioning, reviews, and Xcode Cloud.

### How does the App Store Connect MCP server authenticate?

It uses an App Store Connect API key (.p8 file with Key ID and Issuer ID), stored either in a local companies.json file or in environment variables.

### Does asc-mcp run on Linux or Windows?

No. It is a local stdio server built with Swift that is only supported on macOS; Linux and Windows are not supported.

### Which MCP clients can use asc-mcp?

Configuration examples are included for Codex, Claude Code, Claude Desktop, Gemini CLI, VS Code with GitHub Copilot, Continue, Cursor, and Devin Desktop.

### How do I install asc-mcp?

On macOS, install Mint with Homebrew and then run mint install for the pinned release; you can also build it from source with Swift 6.2 or later.
