Skip to main content
Glama

Decide leave request

decide_leave_request

Approve, decline or cancel a leave request by id. Approving records the leave taken against the employee's balance; declining or cancelling an approved request returns those days. The answer lists the employee's finalised payslips whose period the leave overlaps. Approving over such a payslip is refused unless force is true. This changes leave balances only and posts nothing to the ledger.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
forceNo
decisionYes
approveddateNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / force
      Added value: +{
      +  "type": "boolean"
      +}
  2. Added

TDQS

A4.3/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false and destructiveHint=false; the description goes well beyond that. It discloses the balance side effects of each decision (recording vs returning days), the payslip-overlap refusal with the force override, and explicitly scopes the mutation to leave balances with no ledger posting.

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 and reasonably tight; each sentence conveys a distinct behavioral fact. Slightly dense at five clauses, but nothing 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?

With no output schema, the description usefully describes the return (finalised payslips overlapping the period) and the mutation's scope. The only real gap is the undocumented approveddate parameter, so the agent has enough to call it correctly.

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 0%, so the description must carry parameter meaning. It explains id, the three decision values, and the role of force, but approveddate is never mentioned, leaving one of four parameters undocumented in both schema and description.

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 set (approve, decline, cancel) and resource (a leave request) keyed by id, and clearly distinguishes this decision tool from the creation/list siblings like save_leave_request and list_leave_requests.

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?

Explains the operational conditions well – approving over a finalised payslip is refused unless force is true – which tells the agent when force is needed. It does not, however, explicitly route against a sibling tool or state when NOT to use this versus save_leave_request, so it stops short of full alternative guidance.

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