Skip to main content
Glama
pfaeffli
by pfaeffli

edit_my_vacation

DestructiveIdempotent

Change the dates or half-day status of an existing absence by ID. Update only specified fields; use absence IDs from get_my_absences.

Instructions

Change the dates or half-day flag of one of your absences.

Only the fields you pass are changed. Get absence ids from get_my_absences. A half-day absence must cover a single day, so to book e.g. 3.5 days, shorten the absence to the full days and add the half day separately with add_my_vacation(..., half_day=True).

Args: absence_id: ID of the absence to change date_since: New start date (YYYY-MM-DD) date_until: New end date (YYYY-MM-DD) half_day: True for a half day, False for a full day

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
half_dayNo
absence_idYes
date_sinceNo
date_untilNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.8.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already flag destructive, idempotent, open-world mutation, so the bar is lower. The description adds genuinely useful behavior beyond them: partial-update semantics ('Only the fields you pass are changed') and the domain constraint that a half-day absence must cover a single day. It doesn't mention permission requirements or failure 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?

Front-loaded with the core action, then the id source, then the edge-case workflow. The half-day paragraph is longer than the rest but earns its place by preventing an invalid booking; the Args block is a slight duplication of what could be inline.

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?

For a destructive, open-world mutation with no output schema, the description covers partial-update behavior, id provenance, and the key validation rule. Missing only secondary details such as overlap/conflict handling and what the tool returns or how it reports failure.

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 0%, so the description must carry the load, and it does: all four params are documented with meaning and format (YYYY-MM-DD dates, boolean half-day, id provenance from get_my_absences). The 'only fields you pass are changed' line implicitly explains the nullable defaults, though it never states defaults explicitly.

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?

States a specific verb and resource ('Change the dates or half-day flag of one of your absences') and scopes it to the caller's own records. An agent can immediately distinguish it from add_my_vacation, delete_my_vacation, and edit_my_time_entry.

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?

Points to get_my_absences as the source of absence ids and explains the alternative route for mixed full/half-day bookings (shorten here, then add_my_vacation(..., half_day=True)). It stops short of stating when to prefer edit over delete/re-create, so it is clear context rather than full when/when-not guidance.

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