Skip to main content
Glama

Save leave movement

save_leave_movement

Create or edit a leave opening balance or adjustment. To create, send employee, leavetype, kind ("opening" or "adjustment") and days (positive grants leave, negative uses it). Pass an id to edit that movement's kind, date, days or notes; its employee and leave type are fixed. Leave movements change leave balances only and post nothing to the ledger.

Input Schema

NameRequiredDescriptionDefault
idNo
dateNo
daysNoSigned: a positive number grants leave and a negative number uses it.
kindNoopening sets an opening balance. adjustment changes the balance.
notesNo
employeeNo
leavetypeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / days / description
      Added value: +"Signed: a positive number grants leave and a negative number uses it."
    • addedInput schema / properties / kind / description
      Added value: +"opening sets an opening balance. adjustment changes the balance."
    • addedInput schema / properties / kind / enum
      Added value: +[
      +  "adjustment",
      +  "opening"
      +]
  2. Added

TDQS

A3.9/5.0
Behavior4/5

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

Beyond the annotations, it discloses two genuinely non-obvious traits: employee and leave type are immutable once an id is supplied, and the tool 'post[s] nothing to the ledger' — a scope-limiting side effect an agent would otherwise have to guess. It omits permissions, failure modes, and what is returned, which keeps it below 5.

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?

Three tight sentences, front-loaded with purpose then the two operating modes. The days sign convention is restated from the schema and the parentheticals are dense, but no sentence is filler.

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 7-parameter mutation tool with no output schema and thin schema documentation, the description covers the essentials: mode selection, conditional required fields, edit-time immutability, and ledger scope. It leaves open what the response contains and how invalid combinations (e.g. id plus employee) are handled.

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 coverage is only 29% (only days and kind are documented), so the description must compensate. It partly does — it explains the sign convention of days, the meaning of employee/leavetype on create, the role of id as a mode switch, and which fields are editable (kind, date, days, notes). However, id, date, notes and employee/leavetype still get no format or constraint detail (id format, date format, uniqueness), so the gap is narrowed rather than closed.

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 opens with a specific verb and resource ('Create or edit a leave opening balance or adjustment') and immediately separates the create path from the edit path. It is clearly distinct from save_leave_request and save_leave_type, though it never names a sibling 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?

It states the exact field set for creation ('send employee, leavetype, kind ... and days') and the exact trigger for edit mode ('Pass an id'). That is concrete when-to-do-what guidance. It stops short of exclusions, e.g. that viewing movements belongs to list_leave_movements or that formal leave requests belong to save_leave_request.

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