Skip to main content
Glama

Quattr

market_share_breakdown

Read-only

Use for market share broken down by intent, language, keyword, page, content category, branded/non-branded demand, rank bucket, or country. Returns one governed row per slice with the QWA-compatible share and, where the surface exposes it, clicks. For languages, countries, queries, or pages within one rank bucket, pass the matching breakdown_by plus rank_bucket:"Ranking 1 to 3" (after resolving the exact value). The language/query/page routes apply the bucket directly to the governed market-share drill. Pass country with breakdown_by:"keyword" for QWA's country-to-Queries drill; pass country or device with breakdown_by:"page"/"keyword" for other filtered rows such as “top pages in Canada”. Pass category with breakdown_by:"page" for “pages within Help”; pass page with breakdown_by:"page" or "keyword" for rows within one URL pattern such as "%/products/%". Page/category filters are rejected on language/intent/brand/category/rank_bucket/country because those sources cannot apply the scope faithfully. Pass comparison_range for per-row deltas. For “largest market-share gains/losses” across pages, queries, or countries, use sort_by:"market_share_change" plus change_direction:"gain"|"loss"; that mode ranks the same broad comparison candidate population as QWA (every country row in both periods) instead of the current-period top rows. This is the ONLY market-share verb that groups by a field and returns multiple ranked rows; prefer it over market_share_query for a single-self top-N page/keyword breakdown. UNIT CONTRACT: market-share values are already percentage units on a 0–100 scale (0.03 means 0.03%, not 3%); share delta is selected-minus-comparison percentage points; leader gap is leader-minus-client percentage points for the same period; only deltaPct is a relative-change ratio.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "date_range": "<date_range>"
    },
    "name": "market_share_breakdown"
  }
}

Input Schema

NameRequiredDescriptionDefault
pageNoRestrict a keyword/page breakdown to one page/URL pattern, e.g. "%/products/%". Uses QWA page_segment semantics and is not a replacement for breakdown_by:"page".
brandNoRestrict to branded ("Yes") or non-branded ("No") demand (ignored at site granularity)
top_nNoHow many top rows to return (max 200)
deviceNoRestrict a keyword/page breakdown to one resolved device value, e.g. "DESKTOP". Uses QWA device_segment semantics. Resolve the exact value with list_filter_values first.
intentNoRestrict to ONE intent as an additional filter — meaningful when breakdown_by is language/keyword/page; ignored when breakdown_by is intent
mediumNocompetitor source medium for the comparison, e.g. "google/organic" (default) or "google/cpc"
countryNoRestrict a keyword/page breakdown to one resolved country code, e.g. "can". Keyword breakdowns mirror QWA's direct country-to-Queries drill; page breakdowns retain QWA country_segment semantics. Resolve the exact value with list_filter_values first.
segmentNoTracked segment ID; omit to use the primary "default" (Overall Market) segment.
sort_byNoRank rows by current clicks (default), current market share, or period-over-period market-share change. market_share_change requires comparison_range and is supported for breakdown_by page, keyword, or country; it ranks across every comparison candidate after computing deltas, not a current-value top-N subset.clicks
categoryNoRestrict a keyword/page breakdown to one resolved content category. Use this for “pages within Help”; resolve the exact category value first.
competitorNoOptional competitor domain or label to include its per-row share, e.g. "competitor-a.example" or "comp3"
date_rangeYesExplicit date range, e.g. "2026-05-01 to 2026-05-31". Both endpoints are INCLUSIVE — the END day is covered (a 7-day range = 7 days). Quattr weeks run Sunday–Saturday; for "last week" use the most recent complete Sun–Sat span.
rank_bucketNoRestrict a language, country, query, or page breakdown to ONE QWA rank bucket, e.g. "Ranking 1 to 3". Resolve the exact value with list_filter_values(rank_bucket) first. This is a filter; use breakdown_by:"rank_bucket" to return all rank buckets.
breakdown_byNoWhat to break the metrics down across. language mirrors QWA’s Language tab; brand returns Branded vs Non-branded; rank_bucket mirrors QWA rank bands; country mirrors the Countries tab.intent
change_directionNoWhen sort_by is market_share_change, return the largest gains (default) or losses. Ignored for current-value sorts.gain
comparison_rangeNoExplicit comparison range for period-over-period, e.g. "2026-04-01 to 2026-04-30". Adds per-row deltas (delta + deltaPct) for clicks and shares — the Quattr app's "% change" columns.

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?

Annotations already declare readOnlyHint=true/destructiveHint=false, so safety is covered, and the description adds substantial behavior beyond them: which filter combinations are rejected, that market_share_change ranks across the full comparison candidate population rather than the current-value top-N subset, and a full unit contract (0–100 share scale, share delta as percentage points, deltaPct as a ratio). This is meaningful operational context an agent cannot get from annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the purpose, but the body is a dense run-on paragraph of long sentences mixing routing rules, rejection logic, sorting behavior, and the unit contract, with some overlap against the already-detailed schema descriptions. Sizeable and hard to scan, though most content is substantive given 16 parameters and complex routing.

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 no-output-schema, 16-parameter read tool, the description covers return shape ('one governed row per slice with the QWA-compatible share and, where the surface exposes it, clicks'), delta semantics, unit conventions, and the ranking-population caveat. Nothing essential for correct invocation appears missing, and annotations carry the safety profile.

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, but the description meaningfully adds cross-parameter semantics the schema cannot express per-property: the breakdown_by × filter compatibility matrix, the 'resolve exact value first' rank_bucket requirement, and the share-unit interpretation. It stops short of explaining every one of the 16 parameters (e.g. top_n, segment, medium are left to 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?

States a specific verb+resource ('market share broken down by…') and enumerates the exact dimensions (intent, language, keyword, page, category, brand, rank bucket, country). It explicitly distinguishes itself from the sibling: 'This is the ONLY market-share verb that groups by a field and returns multiple ranked rows; prefer it over market_share_query for a single-self top-N page/keyword breakdown.' An agent can route between the two without opening either schema.

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?

Gives explicit when-to-use routing (match breakdown_by plus rank_bucket for language/country/query/page; country with breakdown_by:'keyword'), names exclusions ('Page/category filters are rejected on language/intent/brand/category/rank_bucket/country'), and points to the alternative verb for the single-self case. Conditions and alternatives are stated, not inferred.

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.

Resources