Skip to main content
Glama
georgebashi

lunchmoney-mcp

by georgebashi

get_budget_summary

Read-only

Summarize budget performance for a specified date range, returning per-category totals and optional per-period breakdowns to track spending vs budget.

Instructions

Get a summary of the user's budget for a specified date range. Returns per-category totals (other_activity, recurring_activity, budgeted, available, recurring_remaining, recurring_expected). Set include_occurrences=true for a per-period breakdown matching the account's budget periodicity. (Backed by the v2 GET /summary endpoint.)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
end_dateYesEnd date in YYYY-MM-DD format. For aligned results use a valid budget period end (e.g. last day of month).
start_dateYesStart date in YYYY-MM-DD format. For aligned results use a valid budget period start (e.g. first day of month).
include_totalsNoInclude a top-level `totals` section summarizing inflow and outflow across all transactions in the range.
include_occurrencesNoInclude an `occurrences` array on each category, with one entry per budget period in the range.
include_rollover_poolNoInclude a `rollover_pool` section summarizing the current rollover pool balance and previous adjustments.
include_past_budget_datesNoInclude the three budget occurrences prior to start_date in `occurrences`. Ignored unless include_occurrences is also true.
include_exclude_from_budgetsNoInclude categories that have the 'Exclude from Budgets' flag set in the returned categories array.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.0

TDQS

A4/5.0
Behavior4/5

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

With readOnlyHint=true already present, the description adds useful behavioral detail: the returned per-category totals, the per-period breakdown behavior tied to include_occurrences, and the backing v2 GET /summary endpoint. It does not disclose pagination, errors, or rate limits, but the read-only safety profile is covered by annotations.

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?

Three sentences with no filler: the first states the core action and scope, the second lists return fields and key option behavior, and the third notes the backing endpoint. Information is front-loaded and every sentence earns its place.

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?

Although there is no output schema, the description names the main returned fields and explains the key optional breakdown. All parameters are fully described in the input schema, and the read-only annotation covers safety. Minor gaps like top-level response shape for all optional flags are inferable from the schema descriptions, so the definition is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all seven parameters. The description adds a small amount of extra meaning by explaining include_occurrences as a per-period breakdown matching budget periodicity, but it does not need to repeat parameter details and does not materially enhance the schema beyond that.

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 starts with a specific verb and resource ('Get a summary of the user's budget for a specified date range') and lists the exact returned per-category fields. This clearly distinguishes it from budget mutation and settings tools like upsert_budget, remove_budget, and get_budget_settings.

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 read-only budget summary usage and explains when to set include_occurrences=true, but it does not explicitly state when to prefer this tool over alternatives or when not to use it. Usage context is clear but left mostly to inference.

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