Skip to main content
Glama

App Rank History

sonar_app_rankings
Read-onlyIdempotent

Rank history for an app's tracked keywords — daily ranks over the requested window, one history array per keyword. Prefer observations for daily status: ranked has a numeric rank; not_found means a completed search did not return the app (results_count is the returned search size); not_observed means no confirmed check, including legacy gaps. Never interpret an absent rank as a collection failure or assign a numeric rank to it. The legacy history array contains positive ranks only. Use this to check how rankings moved after a metadata change or to find keywords trending up or down. Cursor-paginated over keywords (default 50 per page). Requires an Indie plan (trial counts).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNoHistory window in days (1-365). Default 30.
limitNoPage size (1-200). Server default applies when omitted.
app_idYesSonar app UUID — the `id` returned by sonar_list_apps or sonar_create_product. NOT a store id.
cursorNoPagination cursor from a previous call's `next_cursor`. Omit for the first page.
keyword_idNoRestrict to one keyword — a keyword_id from sonar_app_keywords. Omit for all tracked keywords.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnlyHint/idempotentHint annotations, the description explains rank status semantics (ranked, not_found, not_observed), warns against interpreting missing ranks as collection failures, describes cursor pagination over keywords, and notes the Indie plan requirement. This is substantial behavioral context that directly prevents misuse.

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 dense but well organized: result shape first, then status semantics, then use cases, pagination, and plan requirement. Every sentence adds value, and the most critical caveats are front-loaded.

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?

Given there is no output schema, the description compensates by explaining the history-array shape, all observable rank statuses, legacy gaps, pagination behavior, and plan requirements. An agent has enough context to invoke the tool correctly and interpret its responses without additional guessing.

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 the baseline is 3. The description adds useful extra meaning by specifying statuses tied to results_count, the legacy positive-ranks-only array, and the default page size of 50, which enriches the semantics of limit and cursor beyond the raw schema.

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 identifies the resource (rank history for an app's tracked keywords) and the exact return shape (daily ranks over a window, one history array per keyword). It is specific and distinct from sibling tools like sonar_keyword_rankings or sonar_app_keywords.

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?

The description gives concrete use cases: checking ranking movement after a metadata change or finding trending keywords. It does not explicitly name alternative tools or when-not-to-use conditions, but the context is clear enough for an agent to decide when this tool fits.

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.