Google Play Store MCP
Google Play Store MCP
为人类、CI 和 MCP 智能体提供的安全、先试运行(dry-run)的 Google Play Store 商店详情自动化工具。
本项目通过官方 Android Publisher API 管理 Google Play Store 商店详情文本。它特意不作为浏览器自动化工具,且在运行时不依赖 fastlane。
为什么存在这个项目
Google Play 商店详情工作有两种截然不同的操作方式:
人类和 CI 需要一个能够导出、对比、验证和应用商店元数据的 CLI。
智能体需要一个带有安全工具的 MCP 服务器,以便在提交更改前预览更改。
两者共享同一个核心库,因此安全行为、差异对比、验证和应用语义保持一致。
Related MCP server: playstore-release-mcp
仓库布局
packages/core Typed Android Publisher API client, listing manifests, diff, validate, apply
packages/cli gpstore command for humans and CI
packages/mcp MCP stdio server for agent tools
examples Safe example metadata, with no credentials
docs Security and operating notes路线图
阅读 ROADMAP.md 了解当前计划。截图和媒体替换的详细信息请参阅 docs/media-roadmap.md。
当前功能
从 Google Play 导出当前本地化的商店详情文本。
加载 fastlane/supply 风格的元数据目录。
预览精确的本地化文本更改。
在不提交的情况下暂存并验证 Google Play 编辑内容。
仅在明确确认后提交商店详情文本。
仅使用来自本地文件路径的服务账号 JSON。
屏蔽并避免记录敏感信息。
截图和媒体资产替换作为 Android Publisher 图像原语被设计在核心客户端中,但首个公开工作流专注于商店详情文本。截图流水线应作为下一个基于清单的媒体差异/应用流程。
安装
本仓库以 npm 工作区形式构建。克隆后:
npm install
npm run build构建后用于本地 MCP 使用:
{
"mcpServers": {
"google-play-store": {
"command": "node",
"args": ["/absolute/path/to/google-play-store-mcp/packages/mcp/dist/index.js"],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/absolute/path/to/service-account.json"
}
}
}
}CLI 使用
使用 fastlane/supply 风格的元数据目录:
metadata/android/en-US/title.txt
metadata/android/en-US/short_description.txt
metadata/android/en-US/full_description.txt
metadata/android/es-US/title.txt
metadata/android/es-US/short_description.txt
metadata/android/es-US/full_description.txt预览更改:
gpstore diff \
--package-name com.example.app \
--metadata-dir ./metadata/android \
--credentials /absolute/path/to/service-account.json通过 Google Play 验证并丢弃编辑内容:
gpstore validate \
--package-name com.example.app \
--metadata-dir ./metadata/android \
--credentials /absolute/path/to/service-account.json仅在审查后应用:
gpstore apply \
--package-name com.example.app \
--metadata-dir ./metadata/android \
--credentials /absolute/path/to/service-account.json \
--confirm APPLY_GOOGLE_PLAY_LISTING_CHANGES导出当前商店详情元数据:
gpstore export \
--package-name com.example.app \
--out ./metadata/android \
--credentials /absolute/path/to/service-account.jsonMCP 工具
play_listing_diff:试运行商店详情差异对比。play_listing_validate:在 Google Play 编辑中暂存商店详情更改,进行验证,然后删除该编辑。play_listing_apply:仅当confirm参数精确为APPLY_GOOGLE_PLAY_LISTING_CHANGES时才提交商店详情更改。play_listing_export:以结构化 JSON 格式返回当前本地化的商店详情文本。
MCP 客户端在调用 play_listing_apply 之前仍应询问用户,因为它会修改云端管理的公开商店详情。
安全模型
在将此工具用于真实应用之前,请阅读 docs/security.md。
简而言之:
无浏览器抓取。
无凭据上传。
无凭据持久化。
配置文件中无原始服务账号 JSON。
应用前进行试运行和验证。
应用需要明确确认。
使用最小权限的 Play Console 服务账号。
官方 API 参考
Android Publisher API 概览:https://developer.android.com/google/play/developer-api
本地化商店详情更新:https://developers.google.com/android-publisher/api-ref/rest/v3/edits.listings/update
Android Publisher 媒体上传:https://developers.google.com/android-publisher/upload
MCP TypeScript SDK:https://modelcontextprotocol.io/docs/sdk
This server cannot be deployed
Maintenance
Related MCP Connectors
Create App Store screenshots, icons, ASO copy, localization, and revisions via hosted MCP.
Create App Store screenshots, app icons and store copy, then push them to App Store Connect.
- metarunOAuthdev.metarun
Run App Store Connect from your IDE: pricing, listings, screenshots, releases, AI visibility.
42matters MCP — wraps the 42matters App Market Data API (42matters.com)
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA CLI + bundled MCP server for managing Google Play Console metadata, screenshots, one-time products, and subscriptions from YAML files.12 npmMIT
- AlicenseAqualityCmaintenanceAn MCP server that drives Google Play releases: bundle upload, track releases (internal/closed/open/production), listing metadata, store graphics, and review replies.8MIT
- AlicenseBqualityCmaintenanceEnables managing releases, monitoring Android vitals, analyzing earnings and search terms, optimizing ASO, and preflighting store assets through natural language, with a confirmation gate before destructive writes.17065 PyPIApache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables publishing Android apps to the Google Play Console from monorepos by exposing commands as MCP tools that handle AAB uploads, store listings, testers, and setup via the Google Play Developer API, returning structured JSON results.MIT