Skip to main content
Glama

Plan a leave year

plan_leave_year
Read-onlyIdempotent

Plan a whole leave year: the set of breaks that turns the person's annual leave allowance into the most days off, using every bank holiday, with the dates to book for each break and the totals. Handles any leave year start date, part-time working days, three plan styles and school holidays (parents: breaks only in school holidays; school staff: the holidays themselves). Use for "Plan my 28 days of leave for 2027, I have kids at school".

Input Schema

NameRequiredDescriptionDefault
yearNoWhich leave year: current or next. Defaults to current, or next when under 90 days are left.
styleNomix: two proper holidays of 9+ days, the rest long weekends (default). longWeekends: as many 3–5 day weekends as possible. bigTrips: fewer trips of 9+ days.mix
regionNoWhere the person works: england-and-wales, scotland or northern-ireland for UK bank holidays (from gov.uk), or a two-letter ISO 3166-1 country code such as IE, US, DE for other countries' public holidays (from Nager.Date). Defaults to england-and-wales.england-and-wales
schoolNonone (default); parent: children at school, so breaks only in typical school holidays; staff: works in a school, so the school holidays are the breaks. UK only.none
workdaysNoDays the person works, e.g. ["mon","tue","wed","thu"] for a four-day week. Defaults to Monday to Friday.
allowanceNoDays of annual leave a year, not counting public holidays. Default 25.
days_usedNoDays of this leave year's allowance already taken or booked. Default 0.
leave_year_startingNoInstead of year: the calendar year the leave year starts in, e.g. 2027 for January–December 2027 or April 2027–March 2028.
leave_year_start_dayNoDay of the month the leave year starts. Default 1.
leave_year_start_monthNoMonth the leave year starts, 1–12 (1 = January, 4 = April). Default 1.

Output Schema

NameRequiredDescriptionDefault
notesYes
styleYes
breaksYes
budgetYes
regionYes
schoolYes
sourceYes
totalsYes
licenceYes
daysUsedYes
workdaysYes
allowanceYes
leaveYearYes
sourceUrlYes
regionNameYes
assumptionsYes
attributionYesCredit to show with the dates
plannedFromYes
bankHolidaysYes
schoolHolidaysYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare this is a safe, idempotent, non-destructive read, so the description doesn't need to argue safety. It adds genuinely useful behavior context: bank holidays sourced from gov.uk for UK regions and Nager.Date for other ISO codes, arbitrary leave-year start dates, part-time workday patterns, and a UK-only restriction on school modes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core verb and resource, followed by a tight enumeration of capabilities and a quoted example. Dense but not padded; every clause carries information, though the parenthetical school-mode gloss partially duplicates schema text.

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?

Ten optional parameters and a present output schema mean the return shape needn't be re-explained, and the description correctly avoids that. It covers the behavioral surface an agent needs (region sources, school constraints, part-time days, styles), with the only real gap being the year-vs-leave_year_starting precedence.

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 every parameter is already documented at the source, which sets the baseline at 3. The description references the capability areas (plan styles, school modes, leave year start) but adds no syntax, interaction rules, or precedence guidance beyond the schema—notably it doesn't clarify how `year` and `leave_year_starting` interact when both are supplied.

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?

States a specific verb and resource ('Plan a whole leave year') and defines the output scope: the set of breaks optimizing days off, booking dates, and totals. It implicitly separates itself from narrower siblings like best_days_to_book and find_trips by scoping to a full-year plan, but never names an alternative explicitly.

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?

Provides a concrete triggering utterance ("Plan my 28 days of leave for 2027, I have kids at school") that makes the intended invocation context unmistakable. It does not state when NOT to use it or route the agent to best_days_to_book for single-day questions, so the exclusion side is missing.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources