Skip to main content
Glama
cubicecho

MCP Actual

by cubicecho

Set a category’s carryover

set_budget_carryover
DestructiveIdempotent

Toggle rollover for a budget category: enable to roll unspent balances into next month or overspend as negative; applies from the specified month forward, overwriting later months.

Instructions

Turn rollover on or off for a category. With carryover on, an unspent balance rolls into the next month instead of returning to "to budget"; an overspend carries forward as a negative. IMPORTANT: this is not scoped to the one month. Actual applies the flag from the given month FORWARD to the end of the budget range, overwriting it on every later month — including ones set deliberately. The result reports only the month you named, so say what you changed rather than implying it was one month.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
monthYesMonth to change, as YYYY-MM.
carryoverYesTrue to roll the balance forward, false to stop rolling it forward.
categoryIdYesCategory id, from list_categories.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.1

TDQS

A4.2/5.0
Behavior5/5

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

With annotations already declaring destructiveHint=true and idempotentHint=true, the description adds high-value behavioral context beyond them: the flag applies from the given month FORWARD to the end of the budget range, overwriting later months including deliberate ones, and the result reports only the named month. This is exactly the sort of scope/overwrite disclosure that prevents misuse.

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?

The description is front-loaded with the core action, then adds the critical scoping caveat in a clearly marked IMPORTANT section. Every sentence earns its place, and there is no redundancy.

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

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, forward-applying tool with no output schema, the description covers the action, the multi-month consequence, overwrite behavior, and what the result reports. An agent has enough to call it correctly and to communicate the change accurately.

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 description coverage is 100%, so baseline is 3. The description goes beyond the schema by explaining the meaning of the carryover boolean (unspent rolls forward vs. overspend carries negatively) and by clarifying that the month parameter is not a one-month scope but a starting point. It adds real semantic value beyond the field descriptions.

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?

The description states a specific verb and resource: toggling rollover/carryover for a category, with a clear explanation of what carryover means ('unspent balance rolls into the next month'). It distinguishes the effect from 'returning to to budget,' but does not explicitly contrast with siblings like hold_for_next_month or set_budget_amount.

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?

Usage is implied by the effect described (unspent balance rolls forward, overspend carries as negative), and the IMPORTANT note gives a critical when-to-be-careful context about applying forward. However, it does not name alternatives or state explicit when-not-to-use conditions relative to sibling tools.

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