Skip to main content
Glama

Android Developer MCP by Nova (CIVAI)

update_store_listing

Update an app's main store listing (title, short/full description) for one language using Play Console's own web session. Does NOT need create_edit/commit_edit — it patches the listing directly. On an app whose language has no listing entry yet this CREATES the entry (verified live), so it is the first call before attaching any graphic. Note the PATCH replaces the whole entry for that language, so title, short_description and full_description must all be supplied together.

Input Schema

NameRequiredDescriptionDefault
titleYesApp title for this language.
languageYesBCP-47 language code for the listing, e.g. en-US.
save_modeNo"save" COMMITS the listing (what Play Console's own Save button does); "draft" (the DEFAULT) writes only the draft copy. **Pass "save" for any listing that has to count toward release.** With the default, the app dashboard's `store_listings` task never completes no matter how complete the content is, and send_app_for_review stays blocked - measured live, and no amount of content or validation_mode=full fixes it. "draft" is for staging text you are not ready to commit.
play_app_idYesNumeric Play app id from the Play Console URL (.../app/<this>/...). NOT the package name.
developer_idYesNumeric Play Console developer id (from the Play Console URL).
validation_modeNo"draft" (default) or "full". Only applies when save_mode is "draft" - the committed endpoint rejects the validationMode query param outright ("Cannot bind query parameter"). Does NOT make the dashboard task complete; only save_mode="save" does that.
full_descriptionYesFull description for this language.
store_listing_idNoAlways "0" — the main store listing. (It is NOT the long number in the Play Console store-listing URL; that is the app id. "0" is what Play Console's own PATCH sends and it is what creates the listing on an app that has none.) Defaults to 0.
short_descriptionYesShort description for this language.
google_account_emailYesThe signed-in Google account email that owns this Play Console developer account. Call list_accounts first and confirm with the user — do not guess.
notification_messageNoShort user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: it discloses that the call bypasses the edit/commit transaction, that the PATCH replaces the entire entry for the language (so all three text fields must be sent together), and that it silently CREATES a missing entry. Those are exactly the destructive/side-effect traits an agent needs before invoking.

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

Conciseness4/5

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

Front-loaded with the action and scope, then the behavioral caveats in descending order of importance. Four dense sentences, all earning their place; slightly over-packed but no filler.

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 an 11-parameter mutation tool with no annotations and no output schema, the description covers the risky behaviors (creation side effect, whole-entry replace, edit-transaction bypass). What it omits is what the call returns and whether a failed write leaves a partial entry — minor since the schema already documents the save/validation interplay.

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?

Schema coverage is 100%, so baseline is 3, but the description adds real meaning beyond the schema: it explains that title, short_description, and full_description are a coupled set due to whole-entry replacement, which the schema lists only as three independent required strings. The save_mode/validation_mode traps are documented in the schema rather than repeated here.

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?

States a specific verb (update), resource (app's main store listing), and the exact fields it governs (title, short/full description) for one language. That scoping clearly separates it from the sibling tools that touch adjacent resources: update_store_listing_screenshots, upload_store_listing_graphic, and update_store_settings.

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?

Gives a clear prerequisite/ordering rule — it is the first call before attaching any graphic — and states that create_edit/commit_edit are not needed. It also flags the no-existing-entry case that creates one. It stops short of naming which sibling to use for graphics or settings, but the sequencing guidance is explicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources