Skip to main content
Glama

promote_release

Promote an app release from one track to another (e.g., beta to production) preserving version codes, with optional staged rollout and validation dry-run.

Instructions

Promote the active release of one track to another (e.g. beta -> production), keeping its version codes. Omit user_fraction for a full rollout (status 'completed'); pass user_fraction for a staged rollout (status 'inProgress'). This replaces the destination track's release list, matching how promoting works in the Play Console. Use validate_only first to check the change without committing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
to_trackYesDestination track to promote to, e.g. 'production'
from_trackYesSource track to promote from, e.g. 'beta'
package_nameNoApp package name, e.g. 'com.acme.app' (defaults to GOOGLE_PLAY_PACKAGE_NAME)
release_nameNoRelease name shown in the Play Console (defaults to the source release's name)
release_notesNoRelease notes per locale, e.g. [{language:'en-US',text:'Bug fixes'}]. Defaults to the source release's notes.
user_fractionNoStaged rollout fraction between 0 and 1 exclusive, e.g. 0.1 for 10%. Omit to release to all users.
validate_onlyNoDry run: validate the change and discard the edit instead of committing it
country_targetingNoRestrict the release to specific countries. Omit to keep the source targeting.
in_app_update_priorityNoIn-app update priority from 0 (default) to 5 (most urgent), read by the Play In-App Updates API. Omit to keep the source value.
changes_not_sent_for_reviewNoCommit without sending the changes for review (only for apps where changes are reviewed separately)
Install Server

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key side effects: 'This replaces the destination track's release list' and explains rollout statuses ('completed'/'inProgress'). It also clarifies the effect of validate_only, ensuring the agent understands the operation is destructive and verifiable. Since no annotations are present, this additional detail is valuable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loads the primary action, and contains no fluff. Every clause adds information: version codes, user_fraction semantics, the replacement behavior, and the validation tip are all high-value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 10 parameters and nested objects, the description covers the crucial decisions (full vs staged rollout, validate_only) and the core destructive nature. It doesn't enumerate every parameter (schema does that), but it creates a coherent mental model. Missing details like error handling or rate limits are minor given the schema's completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although the schema already covers 100% of parameters with descriptions, the tool description adds meaningful inter-parameter logic, such as the relationship between user_fraction and rollout status, and the default behavior for release_name and release_notes. This goes beyond a simple restatement of schema fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what the tool does: 'Promote the active release of one track to another' with a concrete example 'beta -> production' and notes it keeps version codes. This is a specific verb-resource pair with scope, effectively distinguishing it from siblings like update_rollout or halt_rollout.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explains when to use full rollout (omit user_fraction) vs staged rollout (pass user_fraction) and advises using validate_only first. While it doesn't explicitly contrast with alternative tools like update_rollout, the context of 'matching how promoting works in the Play Console' gives practical guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/OrellBuehler/play-console-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server