关于 Googleplayconsolemcp
Googleplayconsolemcp 是用于管理 Google Play 发布流程和 Android Vitals 的 Python MCP 服务,面向 Android 应用团队,涵盖构建上传、测试人员管理、分阶段发布和质量指标查询。
主要功能
- 01管理发布轨道和版本
- 02上传 APK 与 AAB 构建
- 03管理测试轨道人员
- 04查看崩溃与 ANR 指标
- 05检查电池相关 Vitals
适用场景
- 01在不同轨道发布或晋级构建
- 02分阶段推进、暂停或完成发布
- 03更新内部或封闭测试人员组
- 04查看崩溃、ANR 和电池指标
MCP 相关
它向 MCP 客户端提供 Google Play Console 发布、构建、测试人员和 Android Vitals 操作工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Google Play Console MCP
一个 Python 模型上下文协议 服务,可让 AI 助手(Claude 等)直接管理 Google Play Store 的完整发布生命周期——从上传构建产物,到管理测试人员、分阶段发布和 Android Vitals。
快速开始
选项 A — uvx(推荐,无需安装)
运行一次即可。Claude 会在每次会话中自动启动和停止服务,你无需再进行任何操作。
claude mcp add google-play-mcp \
-e GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json \
-- uvx google-play-mcp
需要
uv——可使用brew install uv或curl -Lsf https://astral.sh/uv/install.sh | sh安装
选项 B — pip install
如果你更喜欢永久安装:
pip install google-play-mcp
claude mcp add google-play-mcp \
-e GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json \
-- google-play-mcp
选项 C — HTTP(本地服务)
仅当你想通过 HTTP 传输而非 stdio 进行连接时才需要:
# 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
**stdio 的工作方式:**使用选项 A 和 B 时,无需手动启动服务。 Claude 会在会话开启时于后台启动进程,并在会话结束时将其关闭。无需维护。
功能
轨道与发布
| 工具 | 描述 |
|---|---|
list_tracks | 列出所有轨道(内部、alpha、beta、production)、发布版本及国家/地区可用性 |
get_track_info | 获取特定轨道的详细状态、发布比例和发布说明 |
create_release | 在任意轨道创建或替换发布版本,并设置发布比例、发布说明和目标国家/地区 |
update_release | 更新发布比例、暂停、恢复或完成现有发布 |
promote_release | 在轨道之间提升发布版本(例如 internal → alpha → beta → production) |
构建产物管理
| 工具 | 描述 |
|---|---|
list_artifacts | 列出所有 APK 和 AAB,以及对应的版本代码和 SHA 哈希值 |
upload_artifact | 上传 APK 或 AAB,并一步在某个轨道上创建发布版本 |
upload_to_internal_sharing | 将构建上传至 Internal App Sharing,并获取可分享的下载 URL |
测试人员管理
| 工具 | 描述 |
|---|---|
get_testers | 获取内部/封闭测试的测试人员邮箱地址和 Google 群组 |
update_testers | 替换内部或封闭测试轨道的测试人员列表 |
Android Vitals
| 工具 | 描述 |
|---|---|
get_crash_rate | 按版本代码统计每日崩溃率和用户感知崩溃率 |
get_anr_rate | 按版本代码统计每日 ANR 率和用户感知 ANR 率 |
get_vitals_summary | 综合展示崩溃与 ANR 概览,并提供不良行为阈值指标 |
get_wakelock_rate | 按版本代码统计每日后台唤醒锁卡住率(电池健康状况) |
get_wakeup_rate | 按版本代码统计每日过度唤醒率(电池健康状况) |
前置条件
uv— 安装指南- 一个已下载 JSON 密钥的 Google Cloud 服务账号。
- 已将该服务账号添加到 Google Play Console 并授予相应权限(见下文)。
- 已在你的 Google Cloud 项目中启用以下 API:
所需的 Play Console 权限
| 工具 | 所需的最低权限 |
|---|---|
upload_artifact、create_release、update_release、promote_release、update_testers | 发布到生产环境、排除设备并使用 Google Play 应用签名 |
upload_to_internal_sharing | 发布到测试轨道 |
list_tracks、get_track_info、list_artifacts、get_testers | 查看应用信息并下载批量报告(只读) |
get_crash_rate、get_anr_rate、get_vitals_summary、get_wakelock_rate、get_wakeup_rate | 查看应用信息并下载批量报告(只读) + 启用 Reporting API |
重要提示: Release Manager 不会授予 Reporting API 访问权限。你还必须同时在账号级别和 单个应用级别启用 查看应用信息并下载批量报告(只读),Vitals 工具才能正常工作。
Claude Desktop 集成
将以下内容添加到 ~/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"
}
}
}
}
保存后重启 Claude Desktop。
服务账号设置
- 在 GCP 项目中前往 IAM 与管理 → 服务账号。
- 创建一个服务账号(或使用现有账号),并下载 JSON 密钥。
- 在 Google Play Console → 设置 → API 访问权限中:
- 关联 Google Cloud 项目。
- 找到服务账号 → 管理 Play Console 权限。
- 在账号权限下,启用查看应用信息并下载批量报告(只读)。
- 在每个应用的应用权限下,启用:
- 查看应用信息并下载批量报告(只读)
- 发布到生产环境… (如果需要写入权限)
- 点击应用 → 邀请用户。
必须同时在账号级别和单个应用级别授予权限。 仅授予账号级别权限不足以使用 Reporting API。
工具参考
list_tracks
package_name : str — e.g. "com.example.myapp"
返回所有轨道及其发布版本、分阶段发布百分比、状态和国家/地区可用性。
get_track_info
package_name : str
track : str — "internal" | "alpha" | "beta" | "production" (default: "production")
返回易于阅读的摘要,以及包含状态、分阶段发布百分比、版本代码和版本说明的发布信息。
create_release
package_name : str
track : str — "internal" | "alpha" | "beta" | "production"
version_codes : list[int] — e.g. [1042]
rollout_percentage : float — default 10.0 (used when status is "inProgress")
status : str — "draft" (default) | "inProgress" | "halted" | "completed"
release_name : str — optional
release_notes : dict — optional, e.g. {"en-US": "Bug fixes", "fr-FR": "Corrections"}
country_codes : list[str] — optional ISO 3166-1 alpha-2 codes, e.g. ["US", "GB"]
在指定轨道上创建或替换发布版本。分阶段发布生产版本时,使用 status="inProgress" 和
rollout_percentage;如果要立即向所有用户发布,则使用 status="completed"。
update_release
package_name : str
track : str — default "production"
rollout_percentage : float — optional; pass 100 to complete the rollout
status : str — optional; "inProgress" | "halted" | "completed" | "draft"
version_codes : list[int] — optional filter; targets first matching release if omitted
更新现有发布版本。常见用例:
- 提高发布比例:
update_release(pkg, rollout_percentage=50) - 完成分阶段发布:
update_release(pkg, rollout_percentage=100) - 暂停发布:
update_release(pkg, status="halted") - 恢复发布:
update_release(pkg, status="inProgress")
promote_release
package_name : str
from_track : str — "internal" | "alpha" | "beta"
to_track : str — "alpha" | "beta" | "production"
version_codes : list[int]
rollout_percentage : float — default 10.0
release_name : str — optional override
release_notes : dict — optional override; inherits from source if omitted
将发布版本从一个轨道复制到另一个轨道。除非明确覆盖,否则会沿用源发布版本的说明和名称。
list_artifacts
package_name : str
按版本代码排序(最新版本在前)返回所有 APK 和 AAB,并附带 SHA 哈希值。
upload_artifact
package_name : str
file_path : str — absolute local path to .apk or .aab
track : str — default "internal"
status : str — "draft" (default) | "inProgress" | "completed"
rollout_percentage : float — default 10.0 (used when status is "inProgress")
release_name : str — optional
release_notes : dict — optional
上传 APK 或 AAB(根据扩展名自动检测),并通过单个原子操作在指定轨道上创建发布版本。返回分配的版本代码。
upload_to_internal_sharing
package_name : str
file_path : str — absolute local path to .apk or .aab
将构建版本上传到 Internal App Sharing(不分配轨道),并返回可分享的 downloadUrl。测试人员必须在其 Play
Store 设置中启用 Internal App Sharing。适合快速进行一次性测试,且不会影响任何发布轨道。
get_testers
package_name : str
track : str — "internal" (default) | "alpha"
返回该轨道的测试人员电子邮件地址和 Google 群组列表。
update_testers
package_name : str
track : str — "internal" (default) | "alpha"
emails : list[str] — optional; full replacement list of tester emails
google_groups : list[str] — optional; full replacement list of Google Group emails
**警告:**此操作会完整替换列表。不在新列表中的测试人员将失去访问权限。 如果只想添加或移除个别人员,请先调用
get_testers获取当前列表。
get_crash_rate
package_name : str
days : int — look-back window, 1–30 (default 7)
version_code : str — optional single version code to filter
返回按版本代码统计的每日 crashRate、userPerceivedCrashRate 和 distinctUsers。
Google 对用户感知崩溃率的不良表现阈值为 ~1.09%。
get_anr_rate
package_name : str
days : int — look-back window, 1–30 (default 7)
version_code : str — optional single version code to filter
返回按版本代码统计的每日 anrRate、userPerceivedAnrRate 和 distinctUsers。
Google 对用户感知 ANR 率的不良表现阈值为 ~0.47%。
get_vitals_summary
package_name : str
days : int — look-back window, 1–30 (default 7)
返回按版本代码汇总的崩溃和 ANR 综合摘要,包含该时间段内的平均值,以及 exceedsCrashThreshold / exceedsAnrThreshold 标记。最新版本会以 latestVersionSummary 突出显示。
get_wakelock_rate
package_name : str
days : int — look-back window, 1–30 (default 7)
version_code : str — optional single version code to filter
返回按版本代码统计的每日 stuckBackgroundWakelockRate 和 distinctUsers。
这与 Google Play 2026 年的电池健康度监管相关——在后台会话中,有过高比例的会话持有部分唤醒锁超过 1 小时的应用可能会受到处罚。
get_wakeup_rate
package_name : str
days : int — look-back window, 1–30 (default 7)
version_code : str — optional single version code to filter
返回按版本代码统计的每日 excessiveWakeupRate 和 distinctUsers。
这与 Google Play 2026 年的电池健康度监管相关——唤醒 CPU 过于频繁(超过平台阈值)的应用可能会受到处罚。
故障排除
Vitals 工具返回 403 Forbidden
403 Client Error: Forbidden for url: https://playdeveloperreporting.googleapis.com/...
此错误有两个常见原因,请分别检查:
1. 未启用 Google Play Developer Reporting API
在 Google Cloud 项目中启用: console.cloud.google.com/apis/library/playdeveloperreporting.googleapis.com
2. 服务账号缺少针对应用的 Reporting API 访问权限
- Play Console → Setup → API access → 找到服务账号 → Manage Play Console permissions。
- 在 App permissions 下,选择应用并启用 View app information and download bulk reports (read-only)。
- 保存并等待几分钟,让更改生效。
404 Package not found
服务账号必须关联到拥有该应用的同一个 Google Play Console 账号。 前往 Play Console → Setup → API access,确认服务账号已列出且已受邀。
市场平台
| 注册表 | 链接 |
|---|---|
| PyPI | pip install google-play-mcp |
| Smithery | 搜索 google-play-mcp |
| Official MCP Registry | google-play-mcp |
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。