Google Play Console MCP Server — manage production releases from your AI assistant.
Project description
Google Play Console MCP
A Python Model Context Protocol server that lets AI assistants (Claude, etc.) manage your Google Play Store production releases directly.
Quick start
stdio — one command, no install:
claude mcp add google-play-mcp \
-e GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json \
-- uvx google-play-mcp
HTTP — run as a local server:
# Terminal 1 — start the server
GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json \
uvx google-play-mcp --transport http --port 8080
# Terminal 2 — register with Claude
claude mcp add --transport http google-play-mcp http://localhost:8080
Requires
uv— install withbrew install uvorcurl -Lsf https://astral.sh/uv/install.sh | sh
Features
| Tool | Description |
|---|---|
promote_to_production |
Promote a build from internal track to production with a custom rollout % |
check_review_status |
Check production release status (draft / inProgress / halted / completed) |
update_rollout_percentage |
Increase or complete an existing staged rollout |
get_production_release_info |
Fetch current rollout %, version codes, and release notes |
get_crash_rate |
Fetch user-perceived crash rate via the Play Developer Reporting API |
Prerequisites
uv— install guide- A Google Cloud service account with the JSON key downloaded.
- The service account added to Google Play Console with the correct permissions (see below).
- These APIs enabled in your Google Cloud project:
Required Play Console permissions
| Tool | Minimum permission required |
|---|---|
promote_to_production |
Release to production, exclude devices, and use app signing by Google Play |
update_rollout_percentage |
Release to production, exclude devices, and use app signing by Google Play |
check_review_status |
View app information and download bulk reports (read-only) |
get_production_release_info |
View app information and download bulk reports (read-only) |
get_crash_rate |
View app information and download bulk reports (read-only) |
Important: Release Manager does not grant Reporting API access. You must also enable View app information and download bulk reports (read-only) — both at account level and per-app level — for
get_crash_rateto work.
Claude Desktop integration
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"google-play": {
"command": "uvx",
"args": ["google-play-mcp"],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/absolute/path/to/service-account.json"
}
}
}
}
Restart Claude Desktop after saving.
Service account setup
- Go to IAM & Admin → Service Accounts in your GCP project.
- Create a service account (or use an existing one) and download a JSON key.
- In Google Play Console → Setup → API access:
- Link your Google Cloud project.
- Find the service account → Manage Play Console permissions.
- Under Account permissions, enable View app information and download bulk reports (read-only).
- Under App permissions for each app, enable:
- View app information and download bulk reports (read-only)
- Release to production… (if you need write access)
- Click Apply → Invite user.
Permissions must be granted at both account level and per-app level. Account-level alone is not sufficient for the Reporting API.
Tool reference
promote_to_production
package_name : str — e.g. "com.example.myapp"
version_codes : list[int] — e.g. [1042]
rollout_percentage : float — 1–100 (use 100 for immediate full release)
release_name : str — optional, e.g. "2.4.1"
release_notes_en : str — optional English release notes
check_review_status
package_name : str
Returns each production release with its status and rollout percentage.
update_rollout_percentage
package_name : str
rollout_percentage : float — new %, 0 < value <= 100
version_codes : list[int] — optional; targets the first inProgress release if omitted
get_production_release_info
package_name : str
Returns the active release's rollout percentage, version codes, and release notes.
Note: Raw install/update event counts are not available via the public API. Use Play Console → Statistics, BigQuery exports, or Firebase Analytics.
get_crash_rate
package_name : str
days : int — look-back window, 1–30 (default 7)
version_code : str — optional single version code to filter
Returns daily crashRate, userPerceivedCrashRate, and distinctUsers per version code.
Troubleshooting
403 Forbidden on get_crash_rate
403 Client Error: Forbidden for url: https://playdeveloperreporting.googleapis.com/...
This error has two common causes — check both:
1. Google Play Developer Reporting API not enabled
Enable it in your Google Cloud project: console.cloud.google.com/apis/library/playdeveloperreporting.googleapis.com
2. Service account lacks per-app Reporting API access
- Play Console → Setup → API access → find the service account → Manage Play Console permissions.
- Under App permissions, select the app and enable View app information and download bulk reports (read-only).
- Save and wait a few minutes for the change to propagate.
Marketplaces
| Registry | Link |
|---|---|
| PyPI | pip install google-play-mcp |
| Smithery | search google-play-mcp |
| Official MCP Registry | io.github.AgiMaulana/google-play-mcp |
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file google_play_mcp-0.2.1.tar.gz.
File metadata
- Download URL: google_play_mcp-0.2.1.tar.gz
- Upload date:
- Size: 9.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
282061b607ec6a79e32ac8668967e731829ead1b2bdc365afd1ba69959ffd8d2
|
|
| MD5 |
edd8ecc142a9a3b2fa2d6dcce2e214d8
|
|
| BLAKE2b-256 |
aa9e6723f03fbc44189c061d1940048c9d6c87bc6aa0f7ceb921e8ad71bfa9d2
|
File details
Details for the file google_play_mcp-0.2.1-py3-none-any.whl.
File metadata
- Download URL: google_play_mcp-0.2.1-py3-none-any.whl
- Upload date:
- Size: 9.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2f1a17bdad483ee39c1548040ead78230d6a227cfa6bb71ed1dd9f108eb4b06
|
|
| MD5 |
31880c031864176bdfd64b7c6a10a56b
|
|
| BLAKE2b-256 |
13ac4a0e1f46f6ff7950d53e014543e72c1df3e3ee3991c39af16b133b6e1e8a
|