Skip to main content
Glama

Competitor Keywords

sonar_competitor_keywords
Read-onlyIdempotent

Keywords a tracked competitor currently ranks for (last 7 days of SERP data), with difficulty and popularity per keyword. Pass own_app_id for gap analysis: keywords where the competitor ranks but your app doesn't are marked gap=missing. Cursor-paginated (default 50 per page). Requires an Indie plan (trial counts). popularity (5-100) is the value Sonar's dashboard shows: Apple's Search Popularity when Apple has a real reading; when Apple reports a keyword below its threshold (popularity_apple 5, about 20) it is Sonar's estimate (at most 18). popularity_source says which (apple | proxy), popularity_apple is Apple's own reading (null on Android), popularity_proxy is Sonar's estimate beside a floored reading.

Input Schema

NameRequiredDescriptionDefault
limitNoPage size (1-200). Server default applies when omitted.
cursorNoPagination cursor from a previous call's `next_cursor`. Omit for the first page.
own_app_idNoSonar app UUID of your own app. When set, each keyword includes your current rank and a gap marker for keywords you don't rank for.
competitor_app_idYesSonar app UUID of the competitor — the `competitor.id` from sonar_track_competitor, or an `id` from sonar_list_apps where is_own is false. NOT a store id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, it discloses plan requirements, data freshness (last 7 days), pagination defaults, gap-marking behavior, and detailed popularity-source semantics including Apple vs proxy readings. This is rich behavioral context that helps an agent interpret results correctly.

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?

The description is front-loaded with purpose and scoping, then moves logically through gap analysis, pagination, plan requirements, and popularity interpretation. The popularity section is lengthy but justified by the nuance it explains; only minor tightening would improve it.

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?

For a read-only tool with no output schema, the description covers the essential context: what is returned, freshness window, pagination, plan gating, gap analysis, and the tricky popularity fields. An agent has enough information to invoke and interpret the tool correctly.

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 100%, so the input schema already documents every parameter thoroughly. The description adds some useful meaning, notably the default page size and the gap=missing marker for own_app_id, but most parameter semantics are still carried by the 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 first sentence states a specific verb and resource: keywords a tracked competitor currently ranks for, with difficulty and popularity. It also gives scope (last 7 days of SERP data) and distinguishes this from own-app keyword tools by centering on a competitor.

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?

It clearly explains the main usage context: pass own_app_id to get gap analysis, and the tool requires a tracked competitor plus an Indie plan. It does not explicitly name sibling alternatives such as sonar_app_keywords or sonar_keyword_rankings, nor does it state when not to use this tool.

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.