Skip to main content
Glama

Generate Store Listing Text

generate_store_listing
Destructive

Generates store-listing text in a new ASO-copy variant using project context and requested options. Optional replaceVariantId retires a prior variant after successful replacement. Does not publish text to Apple or Google.

Input Schema

NameRequiredDescriptionDefault
projectIdYes
competitorAppIdsNoCompetitor store app ids to analyze (Apple numeric ids or Play package names).
replaceVariantIdNoRetire this existing listing variant after the new one saves. Only with explicit user approval.
competitorStoreProviderNoStore of competitorAppIds. Defaults to app_store.

Output Schema

NameRequiredDescriptionDefault
dataNo
errorNo
messageNo
successYes
widgetDataJsonNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations flag destructiveHint=true, and the description earns that flag: it explains that replaceVariantId retires a prior variant only after the new one successfully saves, which is exactly the destructive surface. It also discloses the non-publishing boundary. It does not state that each call produces a new variant (relevant given idempotentHint=false), which is the remaining gap.

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?

Three short sentences, front-loaded with the core action, followed by the destructive-parameter caveat and the scope boundary. Nothing is redundant and nothing needed is buried.

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?

With an output schema present and rich annotations, the description covers purpose, destruction semantics, and the publish boundary. What's missing is small but real: whether the generated variant becomes active, and what project context is drawn from. Not disqualifying, but not fully complete.

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

Parameters3/5

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

Schema coverage is 75% and three of four parameters carry descriptions, so the schema does the heavy lifting. The description adds one meaningful nuance — the replacement's ordering/success semantics — but says nothing about projectId (undocumented) or how competitorAppIds/provider shape the output. Baseline 3 is right.

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

Purpose4/5

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

The description names a specific verb and resource — generating store-listing (ASO) copy as a new variant — and clarifies it does not publish anywhere. That separates it from update_store_listing and translate_store_listing, though it never explicitly contrasts with create_variant, which also creates variants.

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

Usage Guidelines3/5

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

The line 'Does not publish text to Apple or Google' is a useful negative boundary, and replaceVariantId is scoped to post-success replacement. But there is no explicit routing guidance (e.g., use update_store_listing to edit an existing variant, or create_variant for non-copy variants), so the agent must infer when this is the right call.

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.