app-publish-mcp
This MCP server provides unified access to manage iOS and Android app publishing, including App Store Connect and Google Play Console operations.
App Store Connect (iOS/macOS):
Manage apps, bundle IDs (including capabilities), provisioning profiles, and certificates.
Create and manage versions, localizations (descriptions, keywords), and screenshots.
Assign builds, update age ratings, submit for review, and manage pricing/availability.
List and respond to customer reviews.
Administer TestFlight: beta groups/testers, devices, and invite management.
Handle in-app purchases, subscription groups, and offer codes.
Google Play Console (Android):
Manage edit sessions (create, commit, validate, delete).
Update app details, store listings (localized), and images (screenshots, icons, feature graphics).
Work with tracks and releases: create, promote, halt staged rollouts, manage country availability and testers.
Upload APKs/AABs.
List and reply to reviews.
Create and manage in-app products, subscriptions, and one-time products.
Prompts & Resources:
Guided release checklist and ASO audit prompts.
Configuration and supported platforms resources.
Provides tools for managing the lifecycle of Android applications, including uploading bundles/APKs, managing release tracks, and handling store listings.
Manages Apple developer resources such as certificates, provisioning profiles, and devices, alongside comprehensive App Store Connect app management.
Enables management of App Store Connect tasks including version submission, screenshot uploads, metadata localization, and TestFlight beta tester coordination.
Interacts with Google developer APIs to manage app details, releases, in-app products, and customer reviews on the Play Store.
Provides comprehensive tools for Google Play Console operations, including edit lifecycle management, track releases, and responding to user reviews.
Facilitates the submission and management of iOS applications, covering build assignment, review info updates, and store localization.
app-publish-mcp
A unified MCP (Model Context Protocol) server for App Store Connect and Google Play Console. Manage app listings, screenshots, releases, reviews and submissions — all from your AI assistant.
When to Use
Use this MCP when you need to:
"Update my app's App Store description and keywords" — modify version localizations, app info localizations
"Upload new screenshots for iPhone 16 Pro" — create screenshot sets and upload images
"Submit a new version for review" — create version, assign build, set review info, submit
"Check the status of my app review" — list versions and check review state
"Respond to a user review on Google Play" — list reviews and reply
"Create a phased release on Google Play" — create edit, create release on a track, commit
"Manage TestFlight beta testers" — create groups, invite testers, manage access
"Set up in-app purchases" — create and manage IAPs and subscription groups on both platforms
"Register a new device for development" — manage devices, certificates, and provisioning profiles
Related MCP server: ShipKit
Features
Apple App Store Connect (70 tools)
Category | Tools |
App Management |
|
Bundle IDs |
|
Bundle ID Capabilities |
|
Versions |
|
Version Localizations |
|
App Info Localizations |
|
Screenshots |
|
Builds |
|
Age Rating |
|
Review Info |
|
Submission |
|
Pricing |
|
Customer Reviews |
|
Certificates |
|
Provisioning Profiles |
|
Devices |
|
TestFlight Beta Groups |
|
TestFlight Beta Testers |
|
In-App Purchases |
|
Subscription Groups |
|
Accessibility Declarations |
|
Price Points |
|
Offer Codes |
|
Win-Back Offers |
|
Google Play Console (45 tools)
Category | Tools |
Edit Lifecycle |
|
App Details |
|
Store Listing |
|
Country Availability |
|
Testers |
|
Images |
|
Tracks & Releases |
|
Bundle / APK |
|
Reviews¹ |
|
In-App Products |
|
Subscriptions |
|
One-time Products² |
|
¹ If google_list_reviews returns an empty array for an app that has visible reviews in Play Console, first check that the linked service account has the "Reply to reviews" account permission (Play Console → Users and permissions) — the API does not raise a distinct error for a missing permission, it just returns no results. Also note the endpoint only surfaces recent reviews; use pageToken to page through more.
² One-time Products (monetization.onetimeproducts) is Google Play's newer purchase model for buy/rent items, distinct from the older inappproducts API. Purchase options are created active by default; use google_deactivate_purchase_option to pull one down without deleting the product.
Prompts (2)
Prompt | Description |
| Guided checklist for releasing an app update — walks through version creation, metadata, build assignment and submission for iOS and/or Android |
| ASO audit that reviews current listing metadata (title, description, keywords, screenshots, localization) and provides actionable improvement recommendations |
Resources (2)
URI | Description |
| Current server configuration — connected accounts, auth methods, tool counts |
| All supported tools grouped by platform with descriptions |
Setup
1. Install
npm install
npm run build2. Apple Credentials
Go to App Store Connect > Keys
Create an API Key with App Manager role
Download the
.p8fileNote the Key ID and Issuer ID
3. Google Credentials
Go to Google Cloud Console
Enable Google Play Android Developer API
Create a Service Account and download the JSON key
In Google Play Console, grant the service account access under Settings > API access
4. Configure Environment
cp .env.example .envEdit .env:
APPLE_KEY_ID=YOUR_KEY_ID
APPLE_ISSUER_ID=YOUR_ISSUER_ID
APPLE_P8_PATH=/path/to/AuthKey.p8
GOOGLE_SERVICE_ACCOUNT_PATH=/path/to/service-account.json5. Add to Claude Code
Add to ~/.claude/settings.local.json:
{
"mcpServers": {
"app-publish-mcp": {
"command": "node",
"args": ["/path/to/app-publish-mcp/dist/index.js"],
"env": {
"APPLE_KEY_ID": "YOUR_KEY_ID",
"APPLE_ISSUER_ID": "YOUR_ISSUER_ID",
"APPLE_P8_PATH": "/path/to/AuthKey.p8",
"GOOGLE_SERVICE_ACCOUNT_PATH": "/path/to/service-account.json"
}
}
}
}Usage Examples
Submit an iOS app update
1. apple_list_apps → get app ID
2. apple_create_version → create version 1.1.0
3. apple_list_version_localizations → get localization IDs
4. apple_update_version_localization → set whatsNew, description
5. apple_list_builds → find the uploaded build
6. apple_assign_build → attach build to version
7. apple_update_review_detail → set reviewer contact info
8. apple_submit_for_review → submit!Release an Android app
1. google_create_edit → start edit session
2. google_update_details → update contact info
3. google_update_listing → update store listing
4. google_upload_bundle → upload .aab file
5. google_create_release → create release on production track
6. google_validate_edit → check for errors
7. google_commit_edit → publish changesManage Google Play in-app products
1. google_list_iap → list all products
2. google_create_iap → create a new managed product
3. google_update_iap → update price or description
4. google_delete_iap → remove a productCreate a Google Play subscription
1. google_create_subscription → create the subscription with listings and a
base plan (billing period, grace period, regional pricing in micros).
The base plan is created in DRAFT state.
2. google_activate_subscription_base_plan → flip the base plan to ACTIVE so
it becomes purchasable in the Play Store.
3. google_deactivate_subscription_base_plan → pause sales without deleting
the plan.
4. google_archive_subscription → archive the subscription when retired.Example arguments for google_create_subscription:
{
"packageName": "com.example.app",
"productId": "com.example.app.pro_monthly",
"listings": [
{
"languageCode": "en-US",
"title": "Pro Monthly",
"description": "Unlock all premium features.",
"benefits": ["Ad-free", "Cloud sync", "Priority support"]
}
],
"basePlans": [
{
"basePlanId": "pro-monthly",
"autoRenewing": {
"billingPeriodDuration": "P1M",
"gracePeriodDuration": "P3D",
"accountHoldDuration": "P30D"
},
"regionalConfigs": [
{ "regionCode": "US", "priceMicros": "3990000", "currency": "USD" },
{ "regionCode": "TR", "priceMicros": "99000000", "currency": "TRY" }
]
}
]
}Prices are given in micros (1 USD = 1,000,000 micros) and converted to
the Play API's Money shape (units + nanos) internally. regionsVersion
defaults to 2022/02, which the Play API currently requires when regional
pricing is supplied.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityFmaintenanceAn MCP server to communicate with the App Store Connect API for iOS Developers2582330MIT
- Alicense-qualityDmaintenanceMCP server for shipping iOS apps, enabling screenshots of simulators, managing App Store Connect metadata, and submitting apps for review.16MIT
- AlicenseAqualityBmaintenanceAn MCP server that drives the full App Store release cycle for iOS and macOS apps: version bump, archive + TestFlight upload, metadata, review submission, and status.832MIT
- Alicense-qualityAmaintenanceApp Store Connect MCP Server (Swift) that manages apps, builds, TestFlight, metadata, reviews natively on macOSMIT
Related MCP Connectors
Create App Store screenshots, icons, ASO copy, localization, and revisions via hosted MCP.
MCP server for Appcircle mobile CI/CD platform.
MCP server for interacting with the Supabase platform
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mikusnuz/app-publish-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server