Skip to main content
Glama
YNAB MCP Server

YNAB MCP Server

by oliverames

List Money Movements

list_money_movements
Read-onlyIdempotent

Retrieve category budget reallocation history showing who moved funds, the amount, source, destination, and timestamp; these are not transactions.

Instructions

List category budget reallocation history: who, amount, source, destination and time. These are not transactions. For less output use get_money_movements_by_month.

Input Schema

NameRequiredDescriptionDefault
budgetIdNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv6.1.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / properties / budgetId / description
      Removed value: -"Budget ID (uses default if not provided)"
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Changed1 schema field changedv5.4.0
    • removedOutput schema / properties / result / description
      Removed value: -"Structured result returned by List Money Movements."
  3. Addedv5.2.0
  4. Removedv5.1.1
  5. First observedv2.0.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds genuinely useful context beyond them: the records are reallocations rather than spending transactions, and this variant returns a larger payload than the by-month sibling. It does not mention pagination or volume limits, which keeps it from a 5.

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 short sentences, each with a distinct job: define the resource, disambiguate it from transactions, route to the lighter sibling. Nothing redundant and the definition leads.

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?

An output schema exists, so the field list need not be explained in prose, and the annotations carry the safety story. The one remaining gap is the undocumented optional budgetId, which the agent must infer from the schema alone.

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

Parameters2/5

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

The single parameter budgetId has 0% schema description coverage, and the description supplies no information about it at all — not its meaning, not that it is optional (required count is 0), not what happens when omitted. With coverage below 50%, the description is expected to compensate and does not.

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?

Names a specific verb (List) and a precise resource (category budget reallocation history), then enumerates the returned fields: who, amount, source, destination, time. The sentence 'These are not transactions' preempts the most likely confusion with the large family of transaction tools in the sibling list.

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?

Gives an explicit routing rule: for less output, use get_money_movements_by_month. That is a real alternative-selection criterion, though it only covers the output-size dimension and says nothing about when this tool should not be used.

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