@gnegro/dev-publish-mcp
v0.1.2
Published
MCP para publicar e manter apps na Google Play com permissões por scope.
Readme
dev-publish-mcp
MCP para a IA publicar (internal) e manter apps já na Google Play, com permissões por scope. A IA não se dá permissões a si própria.
O que a IA pode fazer (se o dono conceder)
| Scope | Tools |
|---|---|
| read | play_status, maintenance_digest |
| listing.write | play_update_listing, play_upload_images |
| reviews.read | play_list_reviews |
| reviews.reply | play_reply_review |
| testers.write | play_invite_testers |
| releases.internal | play_publish (só internal) |
| releases.promote | play_promote — produção ainda precisa de allowProduction + frase PROMOTE_TO_PRODUCTION |
Pedidos da IA vão para config/permission-requests.json. Só tu activas com npm run grant.
Setup
cd dev-publish-mcp
cp config/permissions.example.json config/permissions.json
# edita package name + scopes
node src/selftest.jsService account da Play (não dry-run):
export GOOGLE_PLAY_SERVICE_ACCOUNT_JSON=/abs/path/play-sa.json
export PLAY_PACKAGE_NAME=com.tua.appSem estas variáveis o servidor corre em dry-run (não fala com a Google).
Conceder manutenção à IA:
node src/grant.js com.tua.app read listing.write reviews.read reviews.reply testers.write releases.internalProdução (opcional, à parte):
# em config/permissions.json
# "allowProduction": true
node src/grant.js com.tua.app releases.promoteCursor / Claude Desktop
Podes usar o pacote diretamente do NPM via npx (recomendado):
{
"mcpServers": {
"dev-publish": {
"command": "npx",
"args": ["-y", "@gnegro/dev-publish-mcp"],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT_JSON": "/caminho/absoluto/play-sa.json",
"PLAY_PACKAGE_NAME": "com.tua.app",
"DEV_PUBLISH_PERMISSIONS": "/caminho/absoluto/permissions.json"
}
}
}
}Prompt do agente
Usa o MCP dev-publish.
Primeiro permissions_whoami e maintenance_digest.
Trabalha só com os scopes que tens.
Se faltar scope, permissions_request — não inventes acesso.
Publicação nova: play_publish track=internal.
Produção: só play_promote se eu escrever PROMOTE_TO_PRODUCTION.
Responde em português com o que mudou (reviewId, versionCode, track).Manutenção típica
- “Que reviews más temos?” → digest + list_reviews
- “Responde a esta a pedir desculpa e apontar o fix 1.0.4” → reply
- “Actualiza a short description em pt-PT” → update_listing
- “Sobe este AAB para testers internos” → play_publish
- “Põe 10% em produção” → o dono escreve a frase; a IA chama promote
