Google Play Store MCP
Google Play 스토어 MCP
사람, CI, MCP 에이전트를 위한 안전한 드라이런(dry-run) 우선 Google Play 스토어 등록정보 자동화 도구입니다.
이 프로젝트는 공식 Android Publisher API를 통해 Google Play 스토어 등록정보 텍스트를 관리합니다. 의도적으로 브라우저 자동화 도구가 아니며, 런타임에 fastlane에 의존하지 않습니다.
이 프로젝트의 존재 이유
Google Play 등록정보 작업에는 두 가지 매우 다른 운영 방식이 있습니다:
사람과 CI는 등록정보 메타데이터를 내보내고, 비교(diff)하고, 검증하고, 적용할 수 있는 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.jsonGoogle 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