Skip to main content
Glama
vom-core

storelift-mcp

get_country_prices

Read-onlyIdempotent

Retrieve local App Store and Google Play prices per country, compare them with competitor medians, and see a suggested price to set.

Instructions

Country prices for one of the app's products, read from App Store Connect / Google Play (Pro): per country the local price, its USD value and index (US = 100), whether it is still Apple's (or Google's) automatic price, the median of rivals that localize their prices (multiplier against Apple's automatic price, with how many rivals) and the difference in percent, plus a suggested price rounded to an attractive price point with its reason (rival median or income band). Rivals are the app's manual iOS rivals; a country needs at least 3 of them to be compared. summary counts countries priced above and below rivals and still on the automatic price. state is not_connected, pending (the first read is not done yet), permission (the key's role can't read prices), no_products or ok. products lists the other products; pass product to switch.

Input Schema

NameRequiredDescriptionDefault
appIdYesapp id from list_apps
countryNotwo-letter country code to return one row
productNoproduct id or SKU (defaults to the first product)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.5.0

TDQS

A4/5.0
Behavior5/5

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

Far exceeds what the readOnly/idempotent annotations provide: it documents the state enum (not_connected, pending, permission, no_products, ok), the minimum-rival threshold (3) for comparison, what summary counts, and that products lists other products. This is rich behavioral and edge-case disclosure for a read tool.

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

Conciseness3/5

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

The bulk is a single dense run-on sentence enumerating many per-country fields and indexes, which is information-rich but hard to scan. Front-loaded with purpose, but structure could be broken up for readability.

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

Completeness5/5

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

With no output schema, the description carries the full burden and does so thoroughly, describing the per-country payload, the summary object, the products list, and the state values. An agent knows what to expect on return.

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%, and the description still adds meaning beyond it: 'pass product to switch' clarifies how product interacts with output, and 'country to return one row' clarifies the country filter's effect. It goes modestly past the schema's own parameter docs.

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 opens with a specific verb+resource ('Country prices for one of the app's products') and names the source systems (App Store Connect / Google Play). It is clearly distinguishable from siblings like get_pricing_offers or get_revenue, though it spends most of its words on output detail rather than sibling differentiation.

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?

Usage is implied by the state machine and 'pass product to switch' guidance, but there is no explicit when-to-use vs alternatives comparison against nearby pricing/revenue siblings. The reader must infer context.

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