Skip to main content
Glama

fivebar

Explain a change

explain_change
Read-onlyIdempotent

Why a site's visits, pageviews or visitors changed between a range and the period before, the one get_site_summary compares with, in one call. The answer's caveats are the rules that apply to its figures, such as drivers never adding up across dimensions: read them before reporting any figure, and pass on those that change what it means. For each dimension, channel, source, path, country, device, utm_campaign, asn unless dimensions names others, the values that moved most, each with its count in both periods, delta, change and beyond_site: how far it moved beyond keeping its share of the site, which sums to nought across a dimension. drivers are the values across every dimension that moved beyond the site past the noise rule, most first; within, the first driver's own drivers, under its filter. Dimensions are cuts of the same visits, so drivers overlap: never add them across dimensions. noise marks a change too small to read into, and broad a change spread across the site. without_value and rest make each dimension add up to totals' delta. metric is visits unless asked; under a goal filter every count is conversions and metric is refused. Name the site, range and filters as for get_site_summary, but for entry and exit and all time; skipped says which dimensions were not read, and why. The periods are compared in whole days. With a period before starting before the first counted day, no_change says why nothing is explained.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoWith from: the last day, as YYYY-MM-DD, not after today.
daysNoThe last this many days, ending today unless ending says yesterday.
fromNoWith to: the first day, as YYYY-MM-DD.
limitNoHow many values of each dimension, 5 by default.
rangeNoA preset, as get_site_summary's range says what each covers.
domainYesA domain from list_sites, or any public site's.
endingNoWith days: the last day, today by default.
metricNoThe count explained, visits by default, as traffic is measured.
filtersNoEach narrows every figure to what has exactly that value, case and all, so google is not Google; all must hold.
dimensionsNoThe dimensions to look across, each once, at most 8.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, closed-world, non-destructive), yet the description adds substantial operational context beyond them: dimensions are overlapping cuts that must never be summed, drivers are ranked by movement beyond the site's share, noise/broad flags, without_value and rest reconciliation, and skipped/no_change diagnostics. This is exactly the interpretive context an agent needs to report the figures correctly.

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?

The purpose is front-loaded, and most sentences carry unique information, but the phrasing is compressed into long run-on clauses that are hard to parse on first read. It is appropriately sized for a 10-parameter analytical tool yet structurally awkward.

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?

There is no output schema, so the description must carry the return-shape burden, and it does: it names drivers, within, beyond_site, noise, broad, without_value, rest, skipped and no_change and explains each. For a tool this complex, nothing essential to interpreting the response is missing.

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 adds real meaning on top of the schema: metric defaults to visits and is refused under a goal filter, and dimensions defaults to a specific list unless overridden. That clarifies behavior the enum alone does not convey.

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?

The opening states a specific verb and resource: it explains *why* visits/pageviews/visitors changed between a range and the preceding period. It also distinguishes itself by pointing at the sibling it builds on ('the one get_site_summary compares with'). The dense prose delays the point, but the purpose is unambiguous and differentiated.

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

Usage Guidelines3/5

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

It tells the agent to reuse get_site_summary's naming conventions for site, range and filters, and notes metric defaults and the goal-filter refusal. However, it never states when to reach for this tool versus get_site_breakdown or get_site_summary, so the choice is left 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.

Resources