Skip to main content
Glama

Keyword SERP History

sonar_keyword_rankings
Read-onlyIdempotent

SERP history for one tracked keyword — which apps ranked in the top results on each measured day, newest first (compact by default: no icon URLs; fields: "full" adds them). Use this to see who competes on a keyword and how the top spots shifted over time. The keyword must be tracked in the caller's Sonar workspace. Requires an Indie plan (trial counts).

Input Schema

NameRequiredDescriptionDefault
daysNoHistory window in days (1-365). Default 30.
fieldsNo"compact" (default): each entry is rank, store_id, app_name, measured_at, outlier — about half the size. "full": adds app_icon_url to every entry (one icon URL per app per day).compact
keyword_idYesSonar keyword UUID — a `keyword_id` from sonar_app_keywords or sonar_competitor_keywords. NOT the keyword text.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / fields
      Added value: +{
      +  "default": "compact",
      +  "description": "\"compact\" (default): each entry is rank, store_id, app_name, measured_at, outlier — about half the size. \"full\": adds app_icon_url to every entry (one icon URL per app per day).",
      +  "enum": [
      +    "compact",
      +    "full"
      +  ],
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already establish read-only, idempotent, non-destructive behavior, and the description adds real operational context on top: results are ordered newest first, the default response omits icon URLs to roughly halve payload size, the keyword must be tracked, and Indie plan/trial limits apply. These are the details an agent needs before deciding whether to call it or to set fields=full.

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?

Four short sentences, front-loaded with the what and how, followed by use case and prerequisites. The nested parenthetical about compact fields is slightly dense but carries genuine information; nothing is padding.

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 no output schema, the description does well by naming the per-entry fields (rank, store_id, app_name, measured_at, outlier) and the ordering. The `days` window default is left entirely to the schema and the return container shape (a list of per-day entries) is only implied, so a small gap remains for a data-retrieval tool.

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 description coverage is 100%, so both `days` and `fields` are fully documented structurally. The description only restates the compact-vs-full distinction already present in the `fields` schema description and never mentions the `days` history window, so it adds little beyond the schema. Baseline 3 applies.

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?

States a specific verb and resource: "SERP history for one tracked keyword — which apps ranked in the top results on each measured day, newest first." This clearly scopes it to keyword-level competitor SERP data, implicitly separating it from app-level tools like sonar_app_rankings. It stops short of naming a sibling tool explicitly, so it lands just below the top band.

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 an explicit use case — "see who competes on a keyword and how the top spots shifted over time" — plus two hard preconditions: the keyword must be tracked in the caller's workspace, and it requires an Indie plan. What's missing is a named alternative for related questions (e.g. keyword metrics or app rankings), so there is no when-not-to-use guidance.

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.