Skip to main content
Glama

RevenueScope: revenue-first analytics for your EC site

Competitor keywords (external SEO snapshot)

get_competitor_keywords
Read-only

Return the latest competitor SEO snapshot for the site (FD-041): which keywords each tracked competitor DOMAIN ranks for on Google (Japan/ja), at what position, with monthly search_volume, cpc and etv (estimated monthly traffic — a visit estimate, not a monetary value), plus how each rank moved vs the previous snapshot. READ-ONLY — this tool never runs a research (that costs money and is triggered separately from the dashboard, the competitor-research Edge Function); it only reads what was already fetched. The response is summary-first (token-aware): each domain carries a constant-size summary (total_keywords, total_etv, volume_bands and rank_bands histograms, and vs_previous new/lost/improved/declined/same counts) that always reflects the FULL keyword set, while keywords returns only the top rows ranked by sort (etv default | volume | rank; default limit 10 per domain, max 100) with a truncated block (shown/matching_total/lost_total). rank is a POSITION: smaller is better, so a NEGATIVE rank_delta means the competitor's ranking IMPROVED (change ∈ new/improved/declined/same/unknown). Keywords the competitor ranked for before but lost are disclosed in lost_keywords (top 10 by previous etv), never dropped silently. Pass domain to focus one competitor, min_volume to drop low-volume keywords. When the site has NO completed research yet the response is { researched:false } with a guidance string explaining a research must be triggered from the dashboard first — this tool cannot start one. site_id is OPTIONAL when OAuth-authenticated. This is the external competitor lens (third-party SERP data); for YOUR OWN search performance use get_keyword_performance, and for your content playbook use get_content_actions.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNo
limitNo
domainNo
site_idNo
min_volumeNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNo
basisYes
limitNo
domainsNo
guidanceNo
fetched_atNo
min_volumeNo
researchedYes
assumptionsYes
limitationsYes
research_idNo
keyword_countNo
language_codeNo
location_codeNo
available_domainsNo

TDQS

A4.9/5.0
Behavior5/5

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

Even though readOnlyHint annotation already indicates safety, the description adds substantial context: the tool never costs money, is summary-first and token-aware, explains that rank is a position where negative delta means improvement, and discloses that lost keywords are never dropped silently. This goes well beyond the annotation and clarifies behavior in edge cases like no completed research.

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 long but each sentence adds value: purpose, read-only guarantee, response format, rank semantics, lost keywords, edge case, parameter guidance, and sibling differentiation. It is information-dense with no fluff, though the single block of text could benefit from slight restructuring for scanability.

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 the tool's complexity (5 parameters, response variations, edge cases), the description covers all necessary context: full response behavior, optional parameters, authentication nuance, and the no-research case. It even explains the `researched:false` response with guidance. The presence of an output schema doesn't reduce the need for this interpretive context, which is thoroughly provided.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description explains every parameter in context: `sort` with default 'etv' and options, `limit` default 10 max 100, `domain`, `min_volume`, and `site_id` optional when OAuth-authenticated. It also explains the `truncated` block and `lost_keywords`, giving semantic meaning beyond raw schema definitions.

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 opens with a specific action and resource: 'Return the latest competitor SEO snapshot for the site (FD-041)' and details exactly what data is included (keywords, positions, search_volume, cpc, etv, rank changes). It explicitly distinguishes itself from sibling tools by saying 'This is the external competitor lens... for YOUR OWN search performance use get_keyword_performance, and for your content playbook use get_content_actions.'

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?

The description gives clear usage direction: use it to see competitor rankings, pass `domain` to focus on one competitor, `min_volume` to filter. It explicitly warns that the tool cannot trigger research ('this tool never runs a research... it only reads what was already fetched') and provides an alternative ('must be triggered from the dashboard first'). It also names sibling tools as alternatives for different use cases.

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.

TDQS

A4.6/5.0
Disambiguation5/5

Each tool has a distinct purpose: AI traffic analysis, multi-dimensional breakdown, competitor SEO snapshot, content playbook, keyword performance, page trend, priority insights, summary, site listing, and budget allocation. Overlapping domains like search performance are clearly separated by focus (query-level vs page-level vs competitor).

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (e.g., get_ai_traffic, get_breakdown, list_sites). The verbs are uniformly descriptive ('get', 'list', 'suggest'), and the naming style is predictable and clean.

Tool Count5/5

With 10 tools, the server is well-scoped for a comprehensive analytics platform. Each tool covers a critical area (summary, traffic sources, breakdowns, search performance, competitor analysis, content actions, budget allocation) without unnecessary bloat.

Completeness5/5

The tool surface covers all major aspects of revenue-first e-commerce analytics: overall KPIs, AI traffic, channel/page/session breakdowns, search keyword and content performance, competitor insights, trend analysis, priority diagnoses, and budget recommendations. No obvious gaps for the stated purpose.

Resources