Skip to main content
Glama

Get Period Summary

get_period_summary
Read-onlyIdempotent

Get one frozen calendar month or quarter: the whole client report in one call.

This is THE tool for any calendar-month or quarter figure and for a monthly or quarterly client report. A closed month is read from an archive frozen when the month closed, so it answers identically however much later it is asked. The open month is computed month to date and period.status says open. A quarter is derived from its three months. Never approximate a month with days=30 or days=31; the window slides and the figure drifts.

Every delta and direction in metrics is already computed with the sign right: value, prior, delta, delta_pct, direction (up, down, held, higher, lower) and, for ranks, positions_gained. Quote them as given and never re-derive them from a daily series or a days window. period.fields_missing lists what cannot be reported for that period; say those are not reported rather than substituting a rolling read. breakdowns carries visibility by model and by tag, top competitors, top prompts, top cited pages, gap domains, perception categories and competitors, and the closing descriptors. headline_metric_ids names the figures a report leads with and metric_meta gives each one's unit and direction of improvement.

Views:

  • 'summary' (default): the period, the prior period, metrics, breakdowns, headline_metric_ids, groups, and metric_meta.

  • 'list': the index of archived months and quarters plus the open month, so you can see what is frozen before asking for it.

Examples:

  • "How did August compare with July?": period="2026-08". July is the prior period and is already alongside every figure.

  • "Give me Q3": period="2026-Q3".

Args: brand_id: The brand to report on (required). period: A month as YYYY-MM (2026-08) or a quarter as YYYY-Qn (2026-Q3). Omit for the most recently closed month. view: 'summary' (default) or 'list'. compare: Include the prior period and the computed deltas. Default true. include_definitions: Add each metric's one-line definition, aggregation note, quarter rule, and learn link, ready for a client glossary. Default false. months: view='list' only: how many closed months to index, 1-36. Default 12. response_format: 'concise' (default) caps long breakdown lists to protect context; 'detailed' returns every row (still held under the response ceiling).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
viewNosummary
monthsNo
periodNo
compareNo
brand_idYes
user_intentNoAnalytics hint: the user's latest request in one short sentence. Omit secrets and prior chat.
response_formatNoconcise
include_definitionsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive), and the description goes well beyond them: closed months are served from a frozen archive and answer identically later, the open month is MTD with status='open', quarters are derived from three months, and fields_missing tells the agent what to say is 'not reported'. It also discloses that response_format='concise' caps long lists and that deltas are precomputed with correct sign.

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?

Well front-loaded and organized with Views, Examples, and Args sections, and the anti-drift warnings genuinely earn their place. It is on the long side and the Args block partially restates schema-adjacent content, but the length is defensible for an 8-parameter tool with no output schema.

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?

With no output schema, the description still enumerates the return shape (period, prior period, metrics, breakdowns, headline_metric_ids, groups, metric_meta, period.status, period.fields_missing) and explains how deltas, directions, and ranks are already computed. Nothing an agent needs to call it or interpret the result is missing.

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 only 13%, so the description must carry the semantics, and it does: period format (YYYY-MM / YYYY-Qn, omit for most recent closed month), view contents for each enum value, compare default, include_definitions content, months (list-only, 1-36, default 12), and response_format behavior. Seven of eight parameters are richly documented, far exceeding what the schema provides.

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 and resource ('Get one frozen calendar month or quarter: the whole client report in one call') and explicitly distinguishes itself from rolling/days-window reads. An agent immediately knows this is the canonical calendar-period report tool, not a daily-series tool.

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 ('THE tool for any calendar-month or quarter figure and for a monthly or quarterly client report') plus a clear when-not ('Never approximate a month with days=30 or days=31; the window slides and the figure drifts'). It also tells the agent to use view='list' first to see what is frozen before requesting it, which is real routing guidance.

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