Skip to main content
Glama

Banking Assistant (Metabind demo)

net_worth_trend

net_worth_trend
Read-onlyIdempotent

Render net_worth_trend: Net worth: current total, change over the period, a trend chart, and the account balances behind it. It loads its own data. To compare periods against each other pass chartStyle:'bar' plus groupBy ('year' for this-year-vs-last-year, 'month' for month-by-month) — each bar is that period's closing balance.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNoUsually omit this. Optional one-line insight rendered inside the card. Only pass it when you ALREADY have the figures in hand from a call you made for another reason — never make an extra tool call just to write a note, because that round trip delays the card itself. When you do add one, say something the card does not already show (what drove a change, what to watch), in one sentence, and never guess a number.
periodNoWindow: 7d, 30d, mtd (this month so far), lastMonth (the whole previous calendar month), 3mo, 6mo, ytd, 1y or all. Ignored when startDate/endDate are given. Defaults to 1y.
endDateNo
groupByNoOne bar/point per period, carrying that period's closing balance. Set it to compare periods: 'year' for "this year vs last year", 'month' for "month by month", 'quarter' for "by quarter". Leave auto for a plain trend.auto
nextStepsNoOne short follow-up the user might ask next, in the form icon|question — 'calendar|Show me last month'. Phrase the question the way the user would say it, and take the icon from the table in the app instructions; any other name renders blank. Always supply 2-3. The card itself ignores them.
startDateNo
chartStyleNo'bar' compares periods against each other as closing balances; 'line' is the continuous history.line

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuinely new behavioral context beyond that: the tool self-loads its data (no prerequisite fetch call needed) and how bar/groupBy interact to change what each datum represents (a period's closing balance). No rate limits, pagination, or auth details, but the added self-loading fact is meaningful.

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?

Two sentences, front-loaded with what the card shows before moving to the comparison configuration. The second sentence is long and dense with parenthetical examples, but every clause carries usable information and nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/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 does the work of describing the return payload (total, period change, chart, underlying balances), which is what an agent needs to know before calling. The gaps — startDate/endDate semantics and any differentiation from get_net_worth — are minor.

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 71%, so the schema carries most param documentation (period, note, groupBy, chartStyle all described inline). The description adds a combination rule the schema cannot express on its own: chartStyle:'bar' must be paired with groupBy, and each bar then represents that period's closing balance. It leaves startDate/endDate entirely unexplained beyond the period note that they override the window.

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 (render) and resource (net worth trend) and enumerates the card contents: current total, change over period, trend chart, account balances. It also notes 'It loads its own data,' which hints at why it exists separately from the raw get_net_worth sibling, but it never names that sibling or trend_card explicitly.

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?

Gives concrete configuration guidance for the comparison use case ('pass chartStyle:bar plus groupBy — year for this-year-vs-last-year, month for month-by-month') and implies the default line/auto case is a plain trend. However, it never says when to choose this tool over the sibling get_net_worth or trace_card, so usage guidance is implied rather than explicit.

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.