Skip to main content
Glama

Add time off

add_time_off

Block a staff member's calendar for full days off or specific hours so no one can book them; existing appointments are rejected, and the block can be removed later.

Instructions

Block a staff member's calendar so no one can book it: whole days off or a few hours.

Two dates (YYYY-MM-DD) add whole days of time off, like Staff > Shifts. Two date-times on the same day block those hours in the calendar, like a time reservation. Booksy refuses a block over existing appointments. It reaches no client; remove_time_off takes it back.

Input Schema

NameRequiredDescriptionDefault
endYesLast day off, inclusive (YYYY-MM-DD), or the end of the blocked hours on the same day.
startYesA day (YYYY-MM-DD) for whole days off, or an ISO 8601 date-time to block hours.
reasonNoWhole days: vacation, sick_day, personal_day, training or other (other text is kept as a note). Hours: any label, e.g. Lunch.
staff_idYesStaff ID from list_staff.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Beyond annotations, the description discloses that the operation reaches no client, that Booksy rejects blocks over existing appointments, and that remove_time_off reverses it. It does not describe permission requirements or the response shape, but it adds meaningful behavioral context consistent with non-read-only, non-idempotent annotations.

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 four tight sentences, front-loads the core action, and each sentence contributes distinct information about modes, errors, and reversal.

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?

It covers the mutation's purpose, dual modes, error condition, and inverse operation, which is sufficient for correct invocation. With no output schema, it could say more about the return value, but the essential behavioral context is present.

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 100%, so the baseline is 3, but the description adds interpretive value by mapping the start/end formats to whole-day versus partial-hour blocking semantics. That clarification complements rather than repeats the schema's per-field descriptions.

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 opens with a specific verb and resource: blocking a staff member's calendar for whole days or hours. It distinguishes the two operating modes and names the inverse sibling, remove_time_off, so the agent can tell it apart from appointment creation and time-off listing.

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?

It clearly explains the two usage modes based on parameter formatting (two dates vs. two date-times on the same day) and notes that Booksy refuses blocks over existing appointments. It also points to remove_time_off for reversal, but does not explicitly exclude using create_appointment for bookable slots.

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