# app-store-connect

Сервер подключает ИИ-агента к официальному App Store Connect API. Он позволяет управлять версиями приложений, бета-тестами в TestFlight и подписками через диалог в терминале.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 14
- Автор: beautyfree
- Лицензия: не указана · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/beautyfree/appstore-connect-mcp
- Обновлён: 2026-04-27
- HTML: https://affpapa.org/nevibecode/mcp/app-store-connect

## Что делает

Сервер запускает пакет `mcp-asc` через `npx` и транслирует вызовы инструментов в официальный REST API Apple. Для связи с клиентом доступен стандартный ввод-вывод или локальный HTTP-сервер на порту 3001. Агент получает доступ к данным каталога: спискам сборок, локализациям описаний, сертификатам и профилям подготовки.

С его помощью можно обновлять текст «Что нового», добавлять тестировщиков в группы TestFlight или проверять отзывы пользователей. Дополнительно поддерживаются настройка групп подписок, создание цен и запуск поэтапного релиза. Работа требует среды Node 20+.

Для авторизации сервер генерирует JWT на основе приватного ключа. Без пути к файлу `.p8`, идентификатора ключа и Issuer ID подключение завершится с ошибкой. Отчёты о продажах и финансах требуют ещё одну переменную — `APP_STORE_CONNECT_VENDOR_NUMBER`. Если номер вендора не передан, выгрузка финансовых таблиц не сработает.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `APP_STORE_CONNECT_KEY_ID`, `APP_STORE_CONNECT_ISSUER_ID`, `APP_STORE_CONNECT_P8_PATH`, `APP_STORE_CONNECT_VENDOR_NUMBER` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env APP_STORE_CONNECT_KEY_ID=<APP_STORE_CONNECT_KEY_ID> --env APP_STORE_CONNECT_ISSUER_ID=<APP_STORE_CONNECT_ISSUER_ID> --env APP_STORE_CONNECT_P8_PATH=<APP_STORE_CONNECT_P8_PATH> --env APP_STORE_CONNECT_VENDOR_NUMBER=<APP_STORE_CONNECT_VENDOR_NUMBER> --transport stdio app-store-connect -- npx -y mcp-asc
```
Вместо <…> подставьте свои значения

### Codex

**Командой платформы**
```bash
codex mcp add app-store-connect --env APP_STORE_CONNECT_KEY_ID=<APP_STORE_CONNECT_KEY_ID> --env APP_STORE_CONNECT_ISSUER_ID=<APP_STORE_CONNECT_ISSUER_ID> --env APP_STORE_CONNECT_P8_PATH=<APP_STORE_CONNECT_P8_PATH> --env APP_STORE_CONNECT_VENDOR_NUMBER=<APP_STORE_CONNECT_VENDOR_NUMBER> -- npx -y mcp-asc
```
Вместо <…> подставьте свои значения

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "app-store-connect": {
            "command": "npx",
            "args": [
                "-y",
                "mcp-asc"
            ],
            "env": {
                "APP_STORE_CONNECT_KEY_ID": "<APP_STORE_CONNECT_KEY_ID>",
                "APP_STORE_CONNECT_ISSUER_ID": "<APP_STORE_CONNECT_ISSUER_ID>",
                "APP_STORE_CONNECT_P8_PATH": "<APP_STORE_CONNECT_P8_PATH>",
                "APP_STORE_CONNECT_VENDOR_NUMBER": "<APP_STORE_CONNECT_VENDOR_NUMBER>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "app-store-connect": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "mcp-asc"
            ],
            "env": {
                "APP_STORE_CONNECT_KEY_ID": "<APP_STORE_CONNECT_KEY_ID>",
                "APP_STORE_CONNECT_ISSUER_ID": "<APP_STORE_CONNECT_ISSUER_ID>",
                "APP_STORE_CONNECT_P8_PATH": "<APP_STORE_CONNECT_P8_PATH>",
                "APP_STORE_CONNECT_VENDOR_NUMBER": "<APP_STORE_CONNECT_VENDOR_NUMBER>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e APP_STORE_CONNECT_KEY_ID=<APP_STORE_CONNECT_KEY_ID> -e APP_STORE_CONNECT_ISSUER_ID=<APP_STORE_CONNECT_ISSUER_ID> -e APP_STORE_CONNECT_P8_PATH=<APP_STORE_CONNECT_P8_PATH> -e APP_STORE_CONNECT_VENDOR_NUMBER=<APP_STORE_CONNECT_VENDOR_NUMBER> app-store-connect npx -y mcp-asc
```
Вместо <…> подставьте свои значения

## Когда брать
- добавить тестировщиков в группу TestFlight
- обновить локализованный текст «Что нового» для версии
- просмотреть отзывы покупателей и отправить официальный ответ
- выгрузить отчёты о продажах и доходах через API
- создать группу подписок и настроить уровни цен

## Примеры запросов агенту
- Покажи список последних сборок в TestFlight для нашего приложения.
- Добавь тестировщика dev@example.com в бета-группу QA Team.
- Проверь свежие отзывы пользователей в App Store и покажи оценки.

## Похожие
- [appstore-connect-mcp](https://affpapa.org/nevibecode/mcp/appstore-connect-mcp.md) — MCP-сервер · ★ 52
- [appstore-connect](https://affpapa.org/nevibecode/mcp/appstore-connect.md) — MCP-сервер · ★ 22
- [app-store-featured](https://affpapa.org/nevibecode/skills/app-store-featured.md) — скилл · 3300 установок
- [asc-id-resolver](https://affpapa.org/nevibecode/skills/asc-id-resolver.md) — скилл · 7600 установок
- [asc-xcode-build](https://affpapa.org/nevibecode/skills/asc-xcode-build.md) — скилл · 7600 установок
- [blitz](https://affpapa.org/nevibecode/mcp/blitz.md) — MCP-сервер · ★ 1761

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
