io.github.ryaker/appstore-connect-mcp

Registre officiel Autres

MCP server for Apple Store Connect API integration with OAuth authentication support

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package @ryaker/appstore-connect-mcp
Claude Code
claude mcp add appstore-connect-mcp -e 'APPLE_KEY_ID=<your apple_key_id>' -e 'APPLE_ISSUER_ID=<your apple_issuer_id>' -e 'APPLE_PRIVATE_KEY=<your apple_private_key>' -e 'APPLE_BUNDLE_ID=<APPLE_BUNDLE_ID>' -e 'APPLE_APP_STORE_ID=<APPLE_APP_STORE_ID>' -e 'OAUTH_ENABLED=<OAUTH_ENABLED>' -e 'OAUTH_ISSUER=<OAUTH_ISSUER>' -e 'OAUTH_AUDIENCE=<OAUTH_AUDIENCE>' -e 'OAUTH_JWKS_URI=<OAUTH_JWKS_URI>' -e 'SERVER_URL=<SERVER_URL>' -- npx -y @ryaker/appstore-connect-mcp@1.0.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "appstore-connect-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "@ryaker/appstore-connect-mcp@1.0.0"
            ],
            "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": "<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>"
            }
        }
    }
}

Variables d'environnement

  • APPLE_KEY_ID obligatoire secret Apple App Store Connect API Key ID
  • APPLE_ISSUER_ID obligatoire secret Apple App Store Connect Issuer ID
  • APPLE_PRIVATE_KEY obligatoire 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

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

🍎 App Store Connect MCP Server

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

Questions fréquentes

Qu'est-ce que io.github.ryaker/appstore-connect-mcp ?

MCP server for Apple Store Connect API integration with OAuth authentication support

Comment installer io.github.ryaker/appstore-connect-mcp ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add appstore-connect-mcp -e 'APPLE_KEY_ID=<your apple_key_id>' -e 'APPLE_ISSUER_ID=<your apple_issuer_id>' -e 'APPLE_PRIVATE_KEY=<your apple_private_key>' -e 'APPLE_BUNDLE_ID=<APPLE_BUNDLE_ID>' -e 'APPLE_APP_STORE_ID=<APPLE_APP_STORE_ID>' -e 'OAUTH_ENABLED=<OAUTH_ENABLED>' -e 'OAUTH_ISSUER=<OAUTH_ISSUER>' -e 'OAUTH_AUDIENCE=<OAUTH_AUDIENCE>' -e 'OAUTH_JWKS_URI=<OAUTH_JWKS_URI>' -e 'SERVER_URL=<SERVER_URL>' -- npx -y @ryaker/appstore-connect-mcp@1.0.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.ryaker/appstore-connect-mcp ?

Oui. Il attend APPLE_KEY_ID, APPLE_ISSUER_ID, APPLE_PRIVATE_KEY, à renseigner dans sa configuration.

io.github.ryaker/appstore-connect-mcp est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.ryaker/appstore-connect-mcp ?

Il est publié par ryaker. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.