PluginBench
MCP Server
Stale
MIT

io.github.ryaker/appstore-connect-mcp MCP Server

io.github.ryaker/appstore-connect-mcp

Automate TestFlight builds, reviews, and sales analytics for Apple apps directly in Claude, Cursor, or VS Code.

What is the io.github.ryaker/appstore-connect-mcp MCP server?

The App Store Connect MCP server connects AI assistants to the Apple App Store Connect API, enabling automation of TestFlight builds, customer review analysis, app metadata updates, and sales reporting. It supports both direct API key authentication and remote OAuth 2.0 deployment.

This MCP server bridges your AI coding workflow with Apple's App Store Connect platform. You can manage TestFlight beta testing, analyze customer reviews, update app metadata and release notes, retrieve sales and download analytics, and automate routine app management tasks—all through natural language prompts in Claude, Cursor, Windsurf, or VS Code.

How to install io.github.ryaker/appstore-connect-mcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • APPLE_KEY_ID
    required
    secret

    Apple App Store Connect API Key ID

  • APPLE_ISSUER_ID
    required
    secret

    Apple App Store Connect Issuer ID

  • APPLE_PRIVATE_KEY
    required
    secret

    Apple App Store Connect Private Key (base64 encoded or raw)

  • APPLE_BUNDLE_ID

    Optional: Specific Bundle ID to filter apps

  • APPLE_APP_STORE_ID

    Optional: Specific App Store ID

  • OAUTH_ENABLED

    Enable OAuth authentication (true/false)

  • OAUTH_ISSUER

    OAuth issuer URL (e.g., https://your-tenant.auth0.com)

  • OAUTH_AUDIENCE

    OAuth audience URL

  • OAUTH_JWKS_URI

    OAuth JWKS URI for token validation

  • SERVER_URL

    Server URL for OAuth deployment

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "appstore-connect-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@ryaker/appstore-connect-mcp"
      ],
      "env": {
        "APPLE_KEY_ID": "<YOUR_APPLE_KEY_ID>",
        "APPLE_ISSUER_ID": "<YOUR_APPLE_ISSUER_ID>",
        "APPLE_PRIVATE_KEY": "<YOUR_APPLE_PRIVATE_KEY>",
        "APPLE_BUNDLE_ID": "<YOUR_APPLE_BUNDLE_ID>",
        "APPLE_APP_STORE_ID": "<YOUR_APPLE_APP_STORE_ID>",
        "OAUTH_ENABLED": "<YOUR_OAUTH_ENABLED>",
        "OAUTH_ISSUER": "<YOUR_OAUTH_ISSUER>",
        "OAUTH_AUDIENCE": "<YOUR_OAUTH_AUDIENCE>",
        "OAUTH_JWKS_URI": "<YOUR_OAUTH_JWKS_URI>",
        "SERVER_URL": "<YOUR_SERVER_URL>"
      }
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • App Management — View apps, query version statuses, edit localizations, and update release notes.
  • TestFlight Integration — List builds, manage beta testing groups, and add or remove beta testers.
  • Customer Reviews — Read, summarize, and draft responses to user reviews.
  • Analytics & Sales — Retrieve unit downloads, revenue metrics, and regional performance data.

Use cases

  • Monitor and manage TestFlight beta builds and their processing status
  • Analyze recent App Store reviews and summarize user complaints or feedback
  • Update app release notes and localized metadata for new versions
  • Retrieve sales, download, and revenue metrics for performance tracking
  • Automate beta tester management and group assignments

io.github.ryaker/appstore-connect-mcp MCP server FAQ

What is the App Store Connect MCP server?

It's an MCP server that gives AI assistants like Claude and Cursor direct access to Apple's App Store Connect API, allowing you to automate TestFlight builds, reviews, analytics, and app metadata management.

Is this free to use?

Yes, the MCP server itself is free (MIT licensed). You need a valid Apple App Store Connect account and API credentials, which are free to generate if you have an Apple Developer account.

How do I install it in Claude Desktop or Cursor?

Add the server to your MCP configuration file (claude_desktop_config.json for Claude, mcp.json for Cursor) with your App Store Connect API credentials (Key ID, Issuer ID, and private key), then restart your client.

What authentication does it support?

It supports direct local API key authentication using your App Store Connect API credentials, and optional remote OAuth 2.0 deployment via Auth0.

Do I need to provide my Apple credentials?

Yes, you must generate an API key from App Store Connect (Users and Access > Integrations > App Store Connect API) and provide the Key ID, Issuer ID, and private key as environment variables.

Can I restrict access to specific apps?

Yes, you can optionally set APPLE_BUNDLE_ID or APPLE_APP_STORE_ID environment variables to limit the server's scope to a specific app.

README (reference)

Source of truth, from the repository.

🍎 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

Related MCP servers

Google Maps Platform documentation and code samples grounded in official resources for AI-assisted development.

105
TypeScript
Apache-2.0
View repository →

Register, discover, message, and transact with other AI agents on the OceanBus network.

0
TypeScript
MIT
View repository →

Reviews, 10 bounded tax and super worksheets, cited retrieval from your local Markdown. Not advice.

1
Python
MIT
View repository →

LogicMonitor API integration with 167 tools for alerts, devices, dashboards, and more.

0
Python
MIT
View repository →

Extract structured insights from videos, podcasts, articles, and PDFs with multi-model AI

Options analytics for AI assistants: chains, IV rank, VRP, Greeks, GEX, expected moves, screeners.

0
Python
MIT
View repository →