{
  "markdown": "# 🍎 App Store Connect MCP Server\n\n[![npm version](https://img.shields.io/npm/v/@ryaker/appstore-connect-mcp.svg)](https://www.npmjs.com/package/@ryaker/appstore-connect-mcp)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Node.js Version](https://img.shields.io/badge/node-%3E%3D18-brightgreen.svg)](https://nodejs.org/)\n\nA Model Context Protocol (MCP) server that connects AI assistants like **Claude Desktop**, **Cursor**, **Windsurf**, and **VS Code** to the **Apple App Store Connect API**. \n\nAutomate TestFlight builds, customer review analysis, app metadata updates, and sales reports directly inside your AI coding workflow.\n\n---\n\n## 💡 Quickstart (npx)\n\nNo need to clone or build manually! You can run this MCP server directly using `npx`.\n\n### 1. Generate App Store Connect API Key\n1. Log into [App Store Connect](https://appstoreconnect.apple.com/).\n2. Navigate to **Users and Access** ➔ **Integrations** ➔ **App Store Connect API**.\n3. Click **Generate API Key** (Admin or App Manager role recommended).\n4. Download the `.p8` key file and note your **Key ID** and **Issuer ID**.\n\n---\n\n### 2. Add to Your MCP Client\n\n#### 🟢 Claude Desktop\nAdd this to `~/Library/Application Support/Claude/claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"appstore-connect\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ryaker/appstore-connect-mcp\"],\n      \"env\": {\n        \"APPLE_KEY_ID\": \"YOUR_KEY_ID\",\n        \"APPLE_ISSUER_ID\": \"YOUR_ISSUER_ID\",\n        \"APPLE_PRIVATE_KEY\": \"-----BEGIN PRIVATE KEY-----\\n...\\n-----END PRIVATE KEY-----\"\n      }\n    }\n  }\n}\n```\n⚡ Cursor\nAdd this to ~/.cursor/mcp.json or under Cursor Settings ➔ Features ➔ MCP:\n```json\n{\n  \"mcpServers\": {\n    \"appstore-connect\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ryaker/appstore-connect-mcp\"],\n      \"env\": {\n        \"APPLE_KEY_ID\": \"YOUR_KEY_ID\",\n        \"APPLE_ISSUER_ID\": \"YOUR_ISSUER_ID\",\n        \"APPLE_PRIVATE_KEY\": \"YOUR_PRIVATE_KEY_BASE64_OR_RAW\"\n      }\n    }\n  }\n}\n```\n🏄 Windsurf\nAdd this to ~/.codeium/windsurf/mcp_config.json:\n```json\nJSON\n{\n  \"mcpServers\": {\n    \"appstore-connect\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ryaker/appstore-connect-mcp\"],\n      \"env\": {\n        \"APPLE_KEY_ID\": \"YOUR_KEY_ID\",\n        \"APPLE_ISSUER_ID\": \"YOUR_ISSUER_ID\",\n        \"APPLE_PRIVATE_KEY\": \"YOUR_PRIVATE_KEY\"\n      }\n    }\n  }\n}\n```\n🛠️ Features\n📱 App Management: View apps, query version statuses, edit localizations & release notes.\n\n✈️ TestFlight Integration: List builds, manage beta testing groups, and add/remove beta testers.\n\n💬 Customer Reviews: Read, summarize, and draft responses to user reviews.\n\n📊 Analytics & Sales: Retrieve unit downloads, revenue metrics, and regional performance.\n\n🔐 Dual Auth Support: Supports direct local API Key authentication or remote OAuth 2.0 (via Auth0).\n\n💬 Example Prompts\nOnce configured, try asking your AI assistant:\n\n\"Show me the latest TestFlight builds for my app and their processing status.\"\n\n\"What are the most recent 1-star reviews on the App Store and summarize user complaints?\"\n\n\"Update the release notes for version 1.2.0 in English (US).\"\n\n\"Give me a summary of app downloads for the past 14 days.\"\n\n🔑 Environment Variables\n| Variable | Required | Description |\n| :--- | :--- | :--- |\n| `APPLE_KEY_ID` | **Yes** | Your App Store Connect API Key ID |\n| `APPLE_ISSUER_ID` | **Yes** | Your App Store Connect Issuer ID |\n| `APPLE_PRIVATE_KEY` | **Yes** | Raw PEM content or Base64-encoded string of your `.p8` key |\n| `APPLE_BUNDLE_ID` | Optional | Restrict tool scope to a specific app bundle ID |\n| `APPLE_APP_STORE_ID` | Optional | Restrict tool scope to a specific App Store ID |\n| `OAUTH_ENABLED` | Optional | Set `true` if deploying as a remote server via OAuth 2.0 |\n\n💻 Local Development\nIf you want to contribute or modify the source code locally:\n\nBash\n```bash\n# 1. Clone repo\ngit clone [https://github.com/ryaker/appstore-connect-mcp.git](https://github.com/ryaker/appstore-connect-mcp.git)\ncd appstore-connect-mcp\n\n# 2. Install & build\nnpm install\nnpm run build\n\n# 3. Test locally\nnpm start\n```\n🤝 Contributing & Support\nFeel free to open an Issue for bug reports, missing App Store Connect endpoints, or feature requests!\n\nLicense: MIT\n",
  "bytes": 4286,
  "sha": "6555486c79bc26dd11ccf57bba5f9afb093cb4a138e113d9ea240428309c56de",
  "repo_slug": "ryaker/appstore-connect-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_ryaker_appstore_connect_mcp_b8412ab7/readme"
}