NestDaddy

App Publish

io.github.mikusnuz/app-publish · v0.7.0

MCP server for App Store Connect & Google Play Console — iOS/Android app management

Connect Runs on your machine

Terminal
claude mcp add app-publish -e APPLE_KEY_ID=<APPLE_KEY_ID> -e APPLE_KEY_TYPE=<APPLE_KEY_TYPE> -e APPLE_ISSUER_ID=<APPLE_ISSUER_ID> -e APPLE_P8_PATH=<APPLE_P8_PATH> -e GOOGLE_SERVICE_ACCOUNT_PATH=<GOOGLE_SERVICE_ACCOUNT_PATH> -e GOOGLE_CLIENT_ID=<GOOGLE_CLIENT_ID> -e GOOGLE_CLIENT_SECRET=<GOOGLE_CLIENT_SECRET> -e GOOGLE_REFRESH_TOKEN=<GOOGLE_REFRESH_TOKEN> -e APPLE_VENDOR_NUMBER=<APPLE_VENDOR_NUMBER> -e APP_PUBLISH_READ_ONLY=<APP_PUBLISH_READ_ONLY> -e APPLE_REPORTS_KEY_ID=<APPLE_REPORTS_KEY_ID> -e APPLE_REPORTS_P8_PATH=<APPLE_REPORTS_P8_PATH> -e APPLE_ADMIN_KEY_ID=<APPLE_ADMIN_KEY_ID> -e APPLE_ADMIN_P8_PATH=<APPLE_ADMIN_P8_PATH> -e APPLE_REPORTS_ISSUER_ID=<APPLE_REPORTS_ISSUER_ID> -e APPLE_REPORTS_KEY_TYPE=<APPLE_REPORTS_KEY_TYPE> -e APPLE_ADMIN_ISSUER_ID=<APPLE_ADMIN_ISSUER_ID> -e APPLE_ADMIN_KEY_TYPE=<APPLE_ADMIN_KEY_TYPE> -- npx -y [email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "app-publish": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "APPLE_KEY_ID": "<APPLE_KEY_ID>",
        "APPLE_KEY_TYPE": "<APPLE_KEY_TYPE>",
        "APPLE_ISSUER_ID": "<APPLE_ISSUER_ID>",
        "APPLE_P8_PATH": "<APPLE_P8_PATH>",
        "GOOGLE_SERVICE_ACCOUNT_PATH": "<GOOGLE_SERVICE_ACCOUNT_PATH>",
        "GOOGLE_CLIENT_ID": "<GOOGLE_CLIENT_ID>",
        "GOOGLE_CLIENT_SECRET": "<GOOGLE_CLIENT_SECRET>",
        "GOOGLE_REFRESH_TOKEN": "<GOOGLE_REFRESH_TOKEN>",
        "APPLE_VENDOR_NUMBER": "<APPLE_VENDOR_NUMBER>",
        "APP_PUBLISH_READ_ONLY": "<APP_PUBLISH_READ_ONLY>",
        "APPLE_REPORTS_KEY_ID": "<APPLE_REPORTS_KEY_ID>",
        "APPLE_REPORTS_P8_PATH": "<APPLE_REPORTS_P8_PATH>",
        "APPLE_ADMIN_KEY_ID": "<APPLE_ADMIN_KEY_ID>",
        "APPLE_ADMIN_P8_PATH": "<APPLE_ADMIN_P8_PATH>",
        "APPLE_REPORTS_ISSUER_ID": "<APPLE_REPORTS_ISSUER_ID>",
        "APPLE_REPORTS_KEY_TYPE": "<APPLE_REPORTS_KEY_TYPE>",
        "APPLE_ADMIN_ISSUER_ID": "<APPLE_ADMIN_ISSUER_ID>",
        "APPLE_ADMIN_KEY_TYPE": "<APPLE_ADMIN_KEY_TYPE>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "app-publish": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "APPLE_KEY_ID": "<APPLE_KEY_ID>",
        "APPLE_KEY_TYPE": "<APPLE_KEY_TYPE>",
        "APPLE_ISSUER_ID": "<APPLE_ISSUER_ID>",
        "APPLE_P8_PATH": "<APPLE_P8_PATH>",
        "GOOGLE_SERVICE_ACCOUNT_PATH": "<GOOGLE_SERVICE_ACCOUNT_PATH>",
        "GOOGLE_CLIENT_ID": "<GOOGLE_CLIENT_ID>",
        "GOOGLE_CLIENT_SECRET": "<GOOGLE_CLIENT_SECRET>",
        "GOOGLE_REFRESH_TOKEN": "<GOOGLE_REFRESH_TOKEN>",
        "APPLE_VENDOR_NUMBER": "<APPLE_VENDOR_NUMBER>",
        "APP_PUBLISH_READ_ONLY": "<APP_PUBLISH_READ_ONLY>",
        "APPLE_REPORTS_KEY_ID": "<APPLE_REPORTS_KEY_ID>",
        "APPLE_REPORTS_P8_PATH": "<APPLE_REPORTS_P8_PATH>",
        "APPLE_ADMIN_KEY_ID": "<APPLE_ADMIN_KEY_ID>",
        "APPLE_ADMIN_P8_PATH": "<APPLE_ADMIN_P8_PATH>",
        "APPLE_REPORTS_ISSUER_ID": "<APPLE_REPORTS_ISSUER_ID>",
        "APPLE_REPORTS_KEY_TYPE": "<APPLE_REPORTS_KEY_TYPE>",
        "APPLE_ADMIN_ISSUER_ID": "<APPLE_ADMIN_ISSUER_ID>",
        "APPLE_ADMIN_KEY_TYPE": "<APPLE_ADMIN_KEY_TYPE>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "app-publish": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "APPLE_KEY_ID": "<APPLE_KEY_ID>",
        "APPLE_KEY_TYPE": "<APPLE_KEY_TYPE>",
        "APPLE_ISSUER_ID": "<APPLE_ISSUER_ID>",
        "APPLE_P8_PATH": "<APPLE_P8_PATH>",
        "GOOGLE_SERVICE_ACCOUNT_PATH": "<GOOGLE_SERVICE_ACCOUNT_PATH>",
        "GOOGLE_CLIENT_ID": "<GOOGLE_CLIENT_ID>",
        "GOOGLE_CLIENT_SECRET": "<GOOGLE_CLIENT_SECRET>",
        "GOOGLE_REFRESH_TOKEN": "<GOOGLE_REFRESH_TOKEN>",
        "APPLE_VENDOR_NUMBER": "<APPLE_VENDOR_NUMBER>",
        "APP_PUBLISH_READ_ONLY": "<APP_PUBLISH_READ_ONLY>",
        "APPLE_REPORTS_KEY_ID": "<APPLE_REPORTS_KEY_ID>",
        "APPLE_REPORTS_P8_PATH": "<APPLE_REPORTS_P8_PATH>",
        "APPLE_ADMIN_KEY_ID": "<APPLE_ADMIN_KEY_ID>",
        "APPLE_ADMIN_P8_PATH": "<APPLE_ADMIN_P8_PATH>",
        "APPLE_REPORTS_ISSUER_ID": "<APPLE_REPORTS_ISSUER_ID>",
        "APPLE_REPORTS_KEY_TYPE": "<APPLE_REPORTS_KEY_TYPE>",
        "APPLE_ADMIN_ISSUER_ID": "<APPLE_ADMIN_ISSUER_ID>",
        "APPLE_ADMIN_KEY_TYPE": "<APPLE_ADMIN_KEY_TYPE>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
APPLE_KEY_ID
Optional, secret
Apple App Store Connect API Key ID
APPLE_KEY_TYPE
Optional
Apple API key type: TEAM (default) or INDIVIDUAL
APPLE_ISSUER_ID
Optional, secret
Apple App Store Connect Issuer ID for TEAM keys
APPLE_P8_PATH
Optional
Path to Apple AuthKey .p8 file
GOOGLE_SERVICE_ACCOUNT_PATH
Optional
Path to Google Play service account JSON key file
GOOGLE_CLIENT_ID
Optional
Google Desktop OAuth client ID
GOOGLE_CLIENT_SECRET
Optional, secret
Google Desktop OAuth client secret
GOOGLE_REFRESH_TOKEN
Optional, secret
Google OAuth refresh token
APPLE_VENDOR_NUMBER
Optional
Apple vendor number for sales and finance reports
APP_PUBLISH_READ_ONLY
Optional
Set to true to register only read tools (list/get/search/query/download, no Google edit creation or deletion)
APPLE_REPORTS_KEY_ID
Optional
Extra Apple key ID for Sales/Finance/Analytics reports
APPLE_REPORTS_P8_PATH
Optional
Path to the reports key .p8 file
APPLE_ADMIN_KEY_ID
Optional
Admin key ID for analytics requests and finance/reporting fallback
APPLE_ADMIN_P8_PATH
Optional
Path to the Admin key .p8 file
APPLE_REPORTS_ISSUER_ID
Optional
Reports key issuer; defaults to APPLE_ISSUER_ID
APPLE_REPORTS_KEY_TYPE
Optional
Reports key type: TEAM or INDIVIDUAL; defaults to APPLE_KEY_TYPE
APPLE_ADMIN_ISSUER_ID
Optional
Admin key issuer; defaults to APPLE_ISSUER_ID
APPLE_ADMIN_KEY_TYPE
Optional
Admin key type: TEAM or INDIVIDUAL; defaults to APPLE_KEY_TYPE

Details

Package[email protected] (NPM, stdio)
First published19 Oct 2026
Last updated19 Oct 2026
Registry nameio.github.mikusnuz/app-publish

More search and web servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.