Skip to main content
Glama
georgebashi

lunchmoney-mcp

by georgebashi

get_balance_history

Read-only

Get monthly account balance history for all accounts to track net worth trends. Optionally specify a month range; returns all available data if omitted.

Instructions

Get monthly account balance history across all accounts — the data behind the Net Worth views in the LunchMoney app. History is monthly. With no month range, returns all available history plus an ephemeral current entry for the current month, which is calculated on demand and may change between requests. Only months with data are included.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
end_monthNoOptional last month of the range, inclusive, as YYYY-MM (e.g. 2026-03). Must not be earlier than start_month and must not be in the future. For a single month, use the same value as start_month.
start_monthNoOptional first month of the range, inclusive, as YYYY-MM (e.g. 2026-01). Must not be in the future. If set, end_month is also required. A full date such as 2026-01-01 is invalid.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.0

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses monthly granularity, the ephemeral calculated `current` entry, that the value may change between requests, and that only months with data are returned. This meaningfully affects how an agent should treat results, especially regarding caching.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences with the main purpose front-loaded. Every sentence adds either scoping, behavioral, or default-value information, with no filler or redundancy.

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?

For a read-only tool with zero required parameters and rich schema coverage, the description covers default behavior, granularity, and volatility. It does not detail the shape of each history entry, but the lack of an output schema makes that a minor gap rather than a critical omission.

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?

The schema already documents both optional parameters with formats and constraints. The description adds the valuable default behavior when no month range is provided, which the schema does not state, so it goes beyond the baseline.

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?

The description states a specific verb and resource: 'Get monthly account balance history across all accounts'. The 'across all accounts' scope and 'data behind the Net Worth views' context clearly distinguish it from single-account tools like get_account_balance_history.

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

Usage Guidelines4/5

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

The 'across all accounts' and Net Worth view context provide a clear use case, and the default no-range behavior is explicitly stated. However, it does not name alternative tools or say when not to use it, so it falls just short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.