Appstore Connect Mcp

io.github.ryakerPublished by GitHub account ryakerv1.0.0Updated Oct 24, 2026

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

Overview

AI-generated overview

Connects an AI assistant to the Apple App Store Connect API for app metadata, TestFlight builds, reviews, and sales data.

What you can do
This local MCP server exposes the Apple App Store Connect API to an assistant. It covers app management (viewing apps, version statuses, editing localizations and release notes), TestFlight tasks (listing builds, managing beta groups and testers), customer reviews (reading, summarizing, drafting responses), and analytics such as downloads, revenue, and regional performance. It supports either direct API key authentication or remote OAuth 2.0 deployment.
When to use it
Use it when an assistant should work with App Store Connect data inside a coding or release workflow: checking TestFlight build status, triaging and drafting replies to reviews, updating release notes or localizations, or pulling download and revenue summaries.
Requirements
Runs locally over stdio, typically via npx @ryaker/appstore-connect-mcp, so Node.js is needed. It requires an App Store Connect API key: APPLE_KEY_ID, APPLE_ISSUER_ID, and APPLE_PRIVATE_KEY (the .p8 key, raw PEM or base64). Optional APPLE_BUNDLE_ID and APPLE_APP_STORE_ID narrow scope; OAUTH_ENABLED and related OAuth variables are for remote deployment. Network access to Apple's API is required.
Before you install
The server needs an App Store Connect API private key (APPLE_PRIVATE_KEY) plus APPLE_KEY_ID and APPLE_ISSUER_ID, which grant access to your App Store Connect account; store them as secrets and prefer a scoped key role. Tools can change data, for example editing localizations and release notes or adding and removing beta testers, so review write actions before approving them. Review text and sales figures are sent to the assistant and its model provider.

Installation

In SourceWeft

  1. Open Appstore Connect Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

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:

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:

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_BASE64_OR_RAW"      }    }  }}

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

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

bash
# 1. Clone repogit clone [https://github.com/ryaker/appstore-connect-mcp.git](https://github.com/ryaker/appstore-connect-mcp.git)cd appstore-connect-mcp
# 2. Install & buildnpm installnpm run build
# 3. Test locallynpm start

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

License: MIT

Source: README.md at commit 85789fb

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts