Skip to main content
Glama
duganth

py-ynab-mcp

by duganth

list_transactions

List YNAB transactions since a given date, with optional filters by account, category, payee, or type.

Instructions

List transactions from YNAB with optional filters.

Returns transactions since the given date. Optionally filter by one of: account, category, or payee (mutually exclusive).

Args: since_date: Start date (YYYY-MM-DD). Required. account_id: Filter by account UUID. category_id: Filter by category UUID. payee_id: Filter by payee UUID. type: Filter by "uncategorized" or "unapproved". budget_id: Budget ID. Defaults to last-used budget.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeNo
payee_idNo
budget_idNo
account_idNo
since_dateYes
category_idNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior3/5

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

No annotations exist, so description must cover behavioral traits. It states the tool returns transactions but does not explicitly declare read-only nature, rate limits, or auth needs. Adequate but not comprehensive.

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?

Description is concise (8 lines), well-structured with a brief intro followed by parameter list. Every sentence adds value; no waste.

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 output schema present, return value details are not needed. Description covers key logic (date range, mutually exclusive filters) for a list tool. Slight gap: no mention of pagination or result limits.

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 0%, so description adds significant meaning: explains mutual exclusivity of filters, date format, and type values. Adds value beyond bare schema.

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 clearly states 'List transactions from YNAB with optional filters,' using a specific verb and resource. It distinguishes from siblings like get_transaction (single) and list_scheduled_transactions (different type).

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?

Description provides clear usage context: returns transactions since a given date, with optional mutually exclusive filters. It implies when to use (list filtering) vs alternatives, though explicit when-not is absent.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/duganth/py-ynab-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server