Skip to main content
Glama

finance

Analytics: Get net worth history

get_net_worth_history
Read-onlyIdempotent
    Get net worth at the end of each month over time.

    Reconstructs historical net worth by reversing transactions
    from current balances. Shows assets, liabilities, net worth,
    and month-over-month change for each period.

    Args:
        months: Number of months of history (default 12). Values <= 0 and
            values > 1200 return a validation error; values > 24 (but <= 1200)
            are capped to 24 but ``requested_months`` echoes the original
            request, which makes the clamp detectable.

    Returns:
        Monthly net worth snapshots with change amounts and percentages,
        plus ``requested_months`` and ``clamped_to_first_activity``. The
        current (in-progress) month row is dated today with is_partial=true.
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
monthsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already cover readOnly, idempotent, non-destructive, and closed-world behavior. The description adds substantial context beyond that: it discloses the reconstruction method (reversing transactions from current balances), the validation and clamping behavior for months (including the detectable requested_months echo), and the partial-month row semantics.

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 front-loaded and well-structured with explicit Args and Returns sections. It repeats the schema's default of 12 and could be slightly tighter, but nearly every sentence adds useful information.

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 explains the return shape (assets, liabilities, net worth, change amounts and percentages, requested_months, clamped_to_first_activity, is_partial) and the derivation caveat, giving an agent enough to call and interpret the tool correctly.

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%, so the description must carry the full burden, and it does: default value, lower-bound and upper-bound validation errors, the 24-month cap, and the requested_months echo that makes clamping detectable. This is comprehensive parameter semantics.

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 description states a specific verb and resource ('Get net worth at the end of each month over time') and scopes it to historical monthly snapshots by explaining reconstruction from transactions. It does not explicitly name or contrast with the sibling get_net_worth, so it misses full sibling differentiation, but the temporal scope makes the distinction clear enough.

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 description implies the tool's use for historical monthly net worth, but it never states when to choose it over get_net_worth or other analytics tools, and provides no when-not guidance. Usage is inferable from the purpose, which fits the 'implied usage' level.

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