Appstoreconnect MCP logo

Appstoreconnect MCP

Unclaimed

by akoskomuves

MCP server for App Store Connect — rebalance subscription prices across ~175 countries via Purchasing Power Parity, schedule per-territory price changes, manage subscriptions from a chat.

Set up this server

01 / Choose your client

02 / Before you connect

Authentication is not specified. Check the project instructions before connecting.

Install the runtime required by the project and make it available to your client.

Project instructions

Use names from the project instructions, separated by commas. Enter names only, never secret values.

03 / Add the configuration

Source: generated from public install instructions

claude mcp add --transport stdio 'appstoreconnect-mcp' -- 'npx' '-y' '@akoskomuves/appstoreconnect-mcp'

Run in your terminal after replacing any placeholders.

04 / Check it in your client

Open your client’s MCP settings and confirm the server connects and lists its tools. A copied configuration does not confirm a working connection.

anthropicapp-store-connectappstore-connectclaudeclaude-codeiosmcpmodel-context-protocolppppurchasing-power-parity

More in Communication

Browse the full directory

Unclaimed listing

Is this your MCP server?

This listing was auto-indexed from the public record. Claim it to edit the page, set compatibility and unlock growth tools. Takes under two minutes.

Claim this server

Security profile

Claimed and verified servers get a weekly static scan that shows what the code can reach: external services, environment variables, shell commands, agent configuration folders, plus any dependencies with known advisories. Claim this listing to get one. How the security profile works

40 of 40 tools

Documented tools (40)

From project documentation. A server handshake does not verify each tool’s description or behavior.

asc_delete_subscription_introductory_offer

delete a pending or active offer. Apple refuses to delete one that is currently redeemable; PATCH endDate to today to stop it instead.

asc_delete_subscription_price

cancel a pending scheduled change

asc_delete_subscription_promotional_offer

DELETE → 204.

asc_delete_subscription_win_back_offer

DELETE → 204.

asc_get_app

fetch one app by ID

asc_get_app_store_review_detail

/ ascpost… / ascpatch… — the What-to-tell-App-Review card of a version: contact person, demo account (name/password/required), notes. To-one per version; Apple merges on PATCH.

asc_get_iap

fetch a single IAP by ID.

asc_get_subscription_grace_period

/ ascpatch… — billing grace period per app: optIn / sandboxOptIn, duration (3 / 16 / 28 days), renewalType (all renewals vs paid-to-paid only). Keeps lapsed subscribers entitled while Apple retries payment.

asc_get_subscription_introductory_offer

fetch one offer by ID.

asc_get_subscription_promotional_offer

fetch a single offer, including its per-territory prices.

asc_get_subscription_win_back_offer

fetch a single offer, including its subscription and per-territory prices.

asc_list_app_price_points

valid Apple price tiers for an app in a given territory (~600+ tiers per territory). Pass nearAmount (target price) and optional nearCount (default 10) to narrow the response to the nearest tiers — Apple does not support a near-amount filter server-side, so the full list is still paginated but only

asc_list_app_prices

current price schedule for an app, splitting manual overrides from auto-derived prices and surfacing the base territory

asc_list_apps

list apps (filter by bundleId)

asc_list_iap_price_points

valid Apple price tiers for an IAP in a given territory. Same nearAmount / nearCount narrowing as the app and subscription price-point tools.

asc_list_iap_prices

current price schedule for an IAP (same shape as app prices: manual overrides + auto-derived + base territory).

asc_list_iaps

list IAPs for an app (v2 surface only — auto-renewable subscriptions are covered by the Subscriptions tools above). Filterable by inAppPurchaseType and state. If this returns zero rows for an app you know has IAPs, the IAPs may be legacy-only and need to be migrated in the App Store Connect web UI b

asc_list_subscription_groups

groups for an app

asc_list_subscription_introductory_offers

list intro offers (free trial / pay-as-you-go / pay-up-front) configured for a subscription, across territories. Apple's "all territories" wildcard (a single offer with no territory) surfaces as TERR=(all) in the table.

asc_list_subscription_price_points

valid price points for a subscription in a territory. Pass nearAmount to narrow the response to the nearest tiers around a target price.

asc_list_subscription_prices

current price schedule per subscription

asc_list_subscription_promotional_offer_prices

list per-territory price rows attached to an offer (territory + currency + amount + price-point ID).

asc_list_subscription_promotional_offers

list promo offers configured for a subscription.

asc_list_subscription_win_back_offer_prices

list per-territory price rows attached to an offer (territory + currency + amount + price-point ID).

asc_list_subscription_win_back_offers

list win-back offers configured for a subscription.

asc_list_subscriptions

auto-renewable subscriptions in a group

asc_patch_subscription_introductory_offer

narrow update path: only startDate, endDate, and pricePointId can change after creation. To change mode / duration / periods, delete and re-create.

asc_patch_subscription_promotional_offer_prices

update the offer's per-territory prices. Apple's wire semantic is replace (the new prices array becomes the post-state, dropping any territory not listed); the tool's mode: 'replace' 'add' 'remove' parameter hides the footgun — 'add' reads current prices and merges, 'remove' reads and filters.

asc_patch_subscription_win_back_offer

update the mutable attributes only: eligibility, startDate/endDate, priority, and promotionIntent. To change identity, mode, duration, periods, or prices, delete and re-create.

asc_post_app_price_schedule

replace the entire price schedule (whole-schedule replace, NOT a merge — matches Apple's API). Pre-flight refuses unless at least one entry targets the base territory with no startDate, and requires explicit acknowledgeReplacesAll: true. A separate acknowledgeDeletesScheduledIfBaseChanges ack is req

asc_post_app_store_version_release_request

⚠️ release an approved (PENDINGDEVELOPERRELEASE) version to the public App Store now — the "Release this version" click, automated. Only for manually-released versions; no undo.

asc_post_iap_price_schedule

replace the entire IAP price schedule (same whole-schedule replace semantics as ascpostapppriceschedule: acknowledgeReplacesAll: true, base-territory entry with no startDate, base-change ack required). No grandfather mechanism — same as apps.

asc_post_iap_submission

/ ascpostsubscriptionsubmission / ascpostsubscriptiongroupsubmission — submit an IAP / subscription / subscription group's pending metadata changes for review standalone, without a version release. Wire gotcha handled: the IAP one relates via inAppPurchaseV2.

asc_post_subscription_introductory_offer

create an offer. Three offerModes: FREETRIAL (no price; omit pricePointId), PAYASYOUGO (charge the offer price each period for numberOfPeriods periods), PAYUPFRONT (single charge for the whole duration; Apple still requires numberOfPeriods — defaults to 1 when omitted). Pass territoryId to target on

asc_post_subscription_price

schedule a price change for one territory

asc_post_subscription_promotional_offer

create an offer (name + offerCode + mode + duration + all per-territory prices) in one atomic POST. Pre-flights Apple's 10-offer cap and offerCode collisions, refusing with a clear remedy message instead of letting Apple 409.

asc_post_subscription_win_back_offer

create an offer (identity + eligibility rules + schedule + priority + all per-territory prices) in one atomic POST. Eligibility is expressed as customerEligibilityPaidSubscriptionDurationInMonths, customerEligibilityTimeSinceLastSubscribedInMonths (an { minimum, maximum? } range), and an optional cu

asc_sign_promotional_offer

JWS v2 format introduced at WWDC 2025 (back-deployed to iOS 15). Use with StoreKit 2's newer promotional-offer purchase options. Returns the JWS compact serialization directly. transactionId (the customer's appTransactionId) is optional but strongly recommended.

asc_sign_promotional_offer_legacy

legacy ECDSA-concatenated signature used by StoreKit 1's SKPaymentDiscount and the original StoreKit 2 Product.PurchaseOption.promotionalOffer(offerID:keyID:nonce:signature:timestamp:) API. Returns the base64 signature plus the nonce, timestamp, and keyId for the caller to pass to StoreKit. Auto-gen

IAPs

ascgetiapavailability (reads through the v2 parent path) · asclistiapavailableterritories · ascpostiapavailability (same replace semantics).

Tool change history

Compared across complete checks of the same configuration. Tools were listed, not invoked. Input-schema changes are not measured here.

No complete tool checks yet.

FAQ

Questions about Appstoreconnect MCP Server

How do I connect Appstoreconnect MCP Server to Claude?
Run `claude mcp add appstoreconnect-mcp -- npx -y @akoskomuves/appstoreconnect-mcp` in Claude Code, or add the same command and arguments under mcpServers in Cursor's mcp.json or Claude Desktop's claude_desktop_config.json, then restart the client. The blocks above are ready to paste.
Is Appstoreconnect MCP Server free?
The listed licence is MIT. Check the upstream terms for permitted use and commercial requirements; a public repository does not by itself mean the software is free or open source. Connected APIs and hosted services may have separate charges.
What can Appstoreconnect MCP Server do?
Appstoreconnect MCP Server documents 40 tools to the agent, including asc_delete_subscription_introductory_offer, asc_delete_subscription_price, asc_delete_subscription_promotional_offer. The descriptions above come from project documentation. A live handshake does not test individual tool behavior.