Skip to main content
Glama

Scan Competitor Keywords

sonar_scan_competitor

WRITE tool — runs an AI keyword discovery scan on a tracked competitor: generates the search terms the competitor's listing is optimized for (brand terms included), queues them for SERP verification, and verifies the first batch inline (~30s), recording both apps' ranks. Returns generated/queued/verified_now counts; the rest verify in the background over the following hours — read results with sonar_competitor_keywords. Requires an Indie plan (trial counts) and an authorized Sonar account or an API key with the write scope.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
own_app_idYesSonar app UUID of your own app the scan compares against. The competitor must be linked to this app.
competitor_app_idYesSonar app UUID of the competitor to scan — 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.6/5.0
Behavior5/5

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

Goes well beyond annotations: discloses that it's a write/mutation that generates and queues keywords, verifies only the first batch inline (~30s), leaves the rest to background verification over hours, and records both apps' ranks. It also states plan and auth requirements, which annotations do not cover and which materially affect whether the call will succeed. Consistent with readOnlyHint=false.

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?

Front-loaded with 'WRITE tool' and then sequenced through generate/queue/verify plus the read pointer. It is dense—several clauses packed into one long sentence—but essentially every clause carries decision-relevant information, so little is wasted.

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?

Despite no output schema, the description explains the return payload (generated/queued/verified_now counts), the asynchronous completion window, and where to read the finished results. For a 2-param async write tool this covers everything an agent needs to invoke and follow up 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 description coverage is 100%, so both UUID params are already documented with meaning (own app vs competitor, with the note that competitor_app_id is a Sonar UUID, not a store id). The description adds only indirect hints ('competitor's listing', 'both apps' ranks') and no syntax beyond the schema, so baseline 3 applies.

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?

Specific verb+resource: 'runs an AI keyword discovery scan on a tracked competitor' with the concrete sub-effects spelled out (generates terms, queues for SERP verification, verifies first batch inline). It also names the read sibling sonar_competitor_keywords so the agent can distinguish this write from the read path immediately.

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

Usage Guidelines5/5

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

States precondition (competitor must be tracked; own and competitor apps required), the alternative for reading results ('read results with sonar_competitor_keywords'), and access prerequisites (Indie plan, authorized Sonar account or write-scoped API key). Explicit routing and prerequisites leave little to inference.

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.