App Store Connect runs on your own machine — the client starts it, so there is no endpoint to ping. 98 installs a week from npm. Last commit 27 Apr 2026.
App Store Connect API as MCP: apps, TestFlight, subscriptions, localizations, reports. JWT auth.
We read the source, 6 d ago · rules 995398eba69f
Things with no honest explanation: a promise that contradicts the code, code that runs at install time while hiding what it does, data leaving the machine.
mcp-asc похож на mcp-gsc
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
Code changes quietly between releases, and nobody reads the diff of a dependency. We do, on every release — watch App Store Connect and you get told the day something new turns up.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add app-store-connect -e 'APP_STORE_CONNECT_KEY_ID=<APP_STORE_CONNECT_KEY_ID>' -e 'APP_STORE_CONNECT_ISSUER_ID=<APP_STORE_CONNECT_ISSUER_ID>' -e 'APP_STORE_CONNECT_P8_PATH=<APP_STORE_CONNECT_P8_PATH>' -- npx -y mcp-asc
{
"mcpServers": {
"app-store-connect": {
"command": "npx",
"args": [
"-y",
"mcp-asc"
],
"env": {
"APP_STORE_CONNECT_ISSUER_ID": "<APP_STORE_CONNECT_ISSUER_ID>",
"APP_STORE_CONNECT_KEY_ID": "<APP_STORE_CONNECT_KEY_ID>",
"APP_STORE_CONNECT_P8_PATH": "<APP_STORE_CONNECT_P8_PATH>"
}
}
}
}
[mcp_servers.app-store-connect]
command = "npx"
args = ["-y", "mcp-asc"]
env = { APP_STORE_CONNECT_KEY_ID = "<APP_STORE_CONNECT_KEY_ID>", APP_STORE_CONNECT_ISSUER_ID = "<APP_STORE_CONNECT_ISSUER_ID>", APP_STORE_CONNECT_P8_PATH = "<APP_STORE_CONNECT_P8_PATH>" }
{
"mcpServers": {
"app-store-connect": {
"command": "npx",
"args": [
"-y",
"mcp-asc"
],
"env": {
"APP_STORE_CONNECT_ISSUER_ID": "<APP_STORE_CONNECT_ISSUER_ID>",
"APP_STORE_CONNECT_KEY_ID": "<APP_STORE_CONNECT_KEY_ID>",
"APP_STORE_CONNECT_P8_PATH": "<APP_STORE_CONNECT_P8_PATH>"
}
}
}
}
{
"servers": {
"app-store-connect": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-asc"
],
"env": {
"APP_STORE_CONNECT_ISSUER_ID": "<APP_STORE_CONNECT_ISSUER_ID>",
"APP_STORE_CONNECT_KEY_ID": "<APP_STORE_CONNECT_KEY_ID>",
"APP_STORE_CONNECT_P8_PATH": "<APP_STORE_CONNECT_P8_PATH>"
}
}
}
}
Put your own values in place of
<APP_STORE_CONNECT_KEY_ID> (API Key ID from App Store Connect (Users and Access → Integrations → App Store Connect API)), <APP_STORE_CONNECT_ISSUER_ID> (Issuer ID from App Store Connect), <APP_STORE_CONNECT_P8_PATH> (Path to your .p8 private key file (downloaded from App Store Connect)).
The author’s registry entry marks them as required.
Optional settings from the registry entry, left out of the block above:
APP_STORE_CONNECT_VENDOR_NUMBER (Vendor number; required for sales and finance reports only).
App Store Connect for MCP clients: PPP pricing, subscriptions, TestFlight, reviews, reports & more
App Store Connect MCP: apps, TestFlight, reviews, sales reports, and team users.
MCP server for App Store Connect: releases, TestFlight, reviews, reports. Read-only by default.
MCP server for App Store Connect: releases, TestFlight, reviews, reports. Read-only by default.
Review connected software projects, submit local findings and read reports with explicit approval.
Read ChargeOver customers, invoices, transactions, subscriptions, reports; create customers, quotes.
Every NinjaOne report, plus a local store that answers fleet-wide questions no single API call can
MCP server for LingoHub — localization projects, resources, exports and repository pushes.
Answers built from our own checks of this server.