Skip to main content
Glama

Update a schedule

schedule_update

Modify a recurring schedule’s client, items, currency, cadence, dates, due days, notes, or auto-generate flag. Changes affect future invoices only; past invoiced periods remain untouched.

Instructions

Change a schedule's client, items, currency, cadence, dates, due days, notes or auto_generate flag. Periods already invoiced are never re-issued, so changing the amount affects future invoices only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
everyNoHow often to bill: "weekly", "monthly", "quarterly", "yearly", or {days: 10}. Month steps keep the start date's day of month and clamp it to shorter months, so a schedule starting on the 31st bills on the 28th/29th in February and back on the 31st in March
itemsNo
notesNo
clientNo
currencyNo
due_daysNo
end_dateNonull clears the end date
tax_noteNoReplace the tax reason carried onto every future generated invoice. Pass an empty string to clear it
anchor_dayNoPro
start_dateNo
end_of_monthNoPro
auto_generateNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.20.0

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the behavioral burden. It usefully discloses that invoiced periods are never re-issued and that amount changes affect future invoices only. However, it does not mention partial-update semantics, whether this is destructive in any way, or what happens to existing future invoices when interval/date fields change.

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?

Two sentences with no filler. The action and key field list are front-loaded, and the important future-invoice caveat is clearly stated immediately after. Every sentence earns its place.

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

Completeness2/5

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

Given 13 parameters, a partial-update semantic (required id only), and no output schema, the description is under-specified. It does not state whether this is a patch (only provided fields change) or a replace operation, what the response contains, whether omitted fields are preserved, or whether certain changes are invalid when invoices exist. The one behavioral caveat is helpful but insufficient for this complexity.

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?

Schema description coverage is only 38%, so the description should compensate by explaining parameter meaning or update behavior. It merely lists field groups already visible in the schema and omits tax_note, anchor_day, end_of_month. It adds no guidance on formats, relationships between fields, or which combinations are valid.

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 clearly identifies a specific action ('Change a schedule's client, items, currency, cadence, dates, due days, notes or auto_generate flag') and names the resource. It does not explicitly differentiate from schedule_create or schedule_pause/resume, but the 'change' framing makes the update purpose evident.

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: this tool modifies an existing schedule, as opposed to creating, pausing, or deleting one. However, there is no explicit guidance about when to prefer this over schedule_create or when a schedule should not be updated, nor mention that only changing fields need to be passed.

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