mcpField
A
appstore-connect-mcp

appstore-connect-mcp

Local
github.com/ryakerDeveloper Tools55Updated 9w ago

About appstore-connect-mcp

App Store Connect MCP server connects AI assistants such as Claude Desktop, Cursor, Windsurf and VS Code to the Apple App Store Connect API. It is aimed at app developers who manage TestFlight, reviews and sales data from within their AI workflow.

Key features

  1. 01View apps and version statuses
  2. 02Manage TestFlight builds and beta testing groups
  3. 03Read, summarize and draft replies to reviews
  4. 04Retrieve downloads, revenue and regional metrics
  5. 05Support local API key and OAuth 2.0 authentication

Use cases

  1. 01Checking TestFlight build processing status
  2. 02Summarizing recent low-rated App Store reviews
  3. 03Updating release notes for a given version

MCP support

This project is an MCP server that exposes App Store Connect functions to MCP clients and can be launched with npx.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"ryaker-appstore-connect": {
"command": "npx",
"args": [
"-y",
"@ryaker/appstore-connect-mcp"
],
"env": {
"APPLE_KEY_ID": "<APPLE_KEY_ID>",
"APPLE_ISSUER_ID": "<APPLE_ISSUER_ID>",
"APPLE_PRIVATE_KEY": "<APPLE_PRIVATE_KEY>",
"APPLE_BUNDLE_ID": "<APPLE_BUNDLE_ID>",
"APPLE_APP_STORE_ID": "<APPLE_APP_STORE_ID>",
"OAUTH_ENABLED": "<OAUTH_ENABLED>",
"OAUTH_ISSUER": "<OAUTH_ISSUER>",
"OAUTH_AUDIENCE": "<OAUTH_AUDIENCE>",
"OAUTH_JWKS_URI": "<OAUTH_JWKS_URI>",
"SERVER_URL": "<SERVER_URL>"
}
}
}
}
Run commandnpx -y @ryaker/appstore-connect-mcp
Environment variables to set
APPLE_KEY_IDSecretApple App Store Connect API Key ID
APPLE_ISSUER_IDSecretApple App Store Connect Issuer ID
APPLE_PRIVATE_KEYSecretApple App Store Connect Private Key (base64 encoded or raw)
APPLE_BUNDLE_IDOptional: Specific Bundle ID to filter apps
APPLE_APP_STORE_IDOptional: Specific App Store ID
OAUTH_ENABLEDSecretEnable OAuth authentication (true/false)
OAUTH_ISSUERSecretOAuth issuer URL (e.g., https://your-tenant.auth0.com)
OAUTH_AUDIENCESecretOAuth audience URL
OAUTH_JWKS_URISecretOAuth JWKS URI for token validation
SERVER_URLServer URL for OAuth deployment

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@ryaker/appstore-connect-mcp1.0.0

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

🍎 App Store Connect MCP Server

npm version License: MIT Node.js Version

A Model Context Protocol (MCP) server that connects AI assistants like Claude Desktop, Cursor, Windsurf, and VS Code to the Apple App Store Connect API.

Automate TestFlight builds, customer review analysis, app metadata updates, and sales reports directly inside your AI coding workflow.


💡 Quickstart (npx)

No need to clone or build manually! You can run this MCP server directly using npx.

1. Generate App Store Connect API Key
  1. Log into App Store Connect.
  2. Navigate to Users and Access ➔ Integrations ➔ App Store Connect API.
  3. Click Generate API Key (Admin or App Manager role recommended).
  4. Download the .p8 key file and note your Key ID and Issuer ID.

2. Add to Your MCP Client
🟢 Claude Desktop

Add this to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "appstore-connect": {
      "command": "npx",
      "args": ["-y", "@ryaker/appstore-connect-mcp"],
      "env": {
        "APPLE_KEY_ID": "YOUR_KEY_ID",
        "APPLE_ISSUER_ID": "YOUR_ISSUER_ID",
        "APPLE_PRIVATE_KEY": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----"
      }
    }
  }
}

⚡ Cursor Add this to ~/.cursor/mcp.json or under Cursor Settings ➔ Features ➔ MCP:

{
  "mcpServers": {
    "appstore-connect": {
      "command": "npx",
      "args": ["-y", "@ryaker/appstore-connect-mcp"],
      "env": {
        "APPLE_KEY_ID": "YOUR_KEY_ID",
        "APPLE_ISSUER_ID": "YOUR_ISSUER_ID",
        "APPLE_PRIVATE_KEY": "YOUR_PRIVATE_KEY_BASE64_OR_RAW"
      }
    }
  }
}

🏄 Windsurf Add this to ~/.codeium/windsurf/mcp_config.json:

JSON
{
  "mcpServers": {
    "appstore-connect": {
      "command": "npx",
      "args": ["-y", "@ryaker/appstore-connect-mcp"],
      "env": {
        "APPLE_KEY_ID": "YOUR_KEY_ID",
        "APPLE_ISSUER_ID": "YOUR_ISSUER_ID",
        "APPLE_PRIVATE_KEY": "YOUR_PRIVATE_KEY"
      }
    }
  }
}

🛠️ Features 📱 App Management: View apps, query version statuses, edit localizations & release notes.

✈️ TestFlight Integration: List builds, manage beta testing groups, and add/remove beta testers.

💬 Customer Reviews: Read, summarize, and draft responses to user reviews.

📊 Analytics & Sales: Retrieve unit downloads, revenue metrics, and regional performance.

🔐 Dual Auth Support: Supports direct local API Key authentication or remote OAuth 2.0 (via Auth0).

💬 Example Prompts Once configured, try asking your AI assistant:

"Show me the latest TestFlight builds for my app and their processing status."

"What are the most recent 1-star reviews on the App Store and summarize user complaints?"

"Update the release notes for version 1.2.0 in English (US)."

"Give me a summary of app downloads for the past 14 days."

🔑 Environment Variables

VariableRequiredDescription
APPLE_KEY_IDYesYour App Store Connect API Key ID
APPLE_ISSUER_IDYesYour App Store Connect Issuer ID
APPLE_PRIVATE_KEYYesRaw PEM content or Base64-encoded string of your .p8 key
APPLE_BUNDLE_IDOptionalRestrict tool scope to a specific app bundle ID
APPLE_APP_STORE_IDOptionalRestrict tool scope to a specific App Store ID
OAUTH_ENABLEDOptionalSet true if deploying as a remote server via OAuth 2.0

💻 Local Development If you want to contribute or modify the source code locally:

Bash

# 1. Clone repo
git clone [https://github.com/ryaker/appstore-connect-mcp.git](https://github.com/ryaker/appstore-connect-mcp.git)
cd appstore-connect-mcp

# 2. Install & build
npm install
npm run build

# 3. Test locally
npm start

🤝 Contributing & Support Feel free to open an Issue for bug reports, missing App Store Connect endpoints, or feature requests!

License: MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.