Skip to main content
Glama

finance

Analytics: Get period summary

get_period_summary
Read-onlyIdempotent
    Compare income, expenses, net, and savings rate across periods.

    Covers month-over-month, quarter-over-quarter, and year-over-year
    comparisons. Each period includes change_from_previous_pct.

    Phase 114 — periods that end before the user's first transaction
    are dropped, so a brand-new user asking for ``num_periods=6`` may
    see fewer rows. Without this filter the leading zero-padding
    rows produced misleading change-from-previous percentages (e.g.
    -29.7% comparing the user's first real month to a prior $0
    month). Response carries ``clamped_to_first_activity`` (bool)
    and ``requested_periods``. When clamped, the returned rows are the
    full extent of the user's history (e.g. 2 months of data); no
    rows exist for the dropped periods.

    Args:
        period_type: 'month', 'quarter', or 'year'
        num_periods: How many periods to include (default 6)
        compare_prior_year: Include same period from prior year

    Returns:
        List of periods with income, expenses, net, savings_rate_pct,
        and change percentages, plus the two clamping metadata fields.
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
num_periodsNo
period_typeNomonth
compare_prior_yearNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already cover the read-only/idempotent safety profile, but the description goes well beyond them by disclosing the clamping behavior: periods ending before first activity are dropped, returned rows may be fewer than num_periods, and two metadata fields (clamped_to_first_activity, requested_periods) signal this. That edge-case disclosure is exactly the extra value an agent needs to interpret results correctly.

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 the core purpose, then structured Args/Returns sections that are useful given there is no output schema. The 'Phase 114' changelog framing is internal jargon, but the underlying clamping explanation earns its space because it prevents misinterpretation of change percentages.

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 compensates by describing the returned fields (income, expenses, net, savings_rate_pct, change_from_previous_pct) and the two clamping metadata fields. Combined with the annotations, an agent has everything needed to call and interpret this tool.

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 description coverage is 0%, so the description must carry parameter meaning, and it does: it enumerates the allowed period_type values ('month', 'quarter', 'year') that the schema omits, plus the num_periods default and the compare_prior_year flag. Only minor detail (e.g., valid range for num_periods) is missing.

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?

States a specific verb and resource — compares income, expenses, net, and savings rate across month/quarter/year periods — so the agent knows exactly what it does. It does not, however, explicitly distinguish itself from the many adjacent analytics tools (get_savings_rate_trend, get_spending_summary, get_income_statement).

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?

The mention of month-over-month, quarter-over-quarter, and year-over-year comparisons implies the use case (trend/period comparison), giving clear implied usage. There is no explicit when-to-use guidance, no named alternatives, and no stated exclusions versus the sibling trend/summary tools.

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