Skip to main content
Glama

leave-pto-requests-approvals

Bulk import requests (Pro)

leave_import

Pro. Bulk-create leave requests from a CSV/TSV. First row is a header: employee,type,start,end,halfDay,status,reason. status may be omitted (defaults to pending) or be approved/rejected. Each request is still checked for overlap conflicts; a conflicting row is reported, not applied. watermark-free, full CRUD.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
csvYesCSV text, newline-separated, first row header: employee,type,start,end,halfDay,status,reason

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

With all annotations reading false/non-informative defaults, the description carries the behavioral burden and mostly meets it: it discloses that status defaults to pending, enumerates accepted status values, and — most valuably — states that conflicting rows are reported but not applied, i.e., partial application rather than all-or-nothing semantics. The 'watermark-free, full CRUD' tail adds ambiguity about whether updates/deletes are involved, slightly undercutting the otherwise strong disclosure.

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 sentences, front-loaded with the core purpose, then header format, then status and conflict behavior — good progressive structure. The final 'watermark-free, full CRUD' clause is the only non-operational content and reads like plan marketing rather than guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The input side is well covered for a one-parameter tool with no output schema: format, header, defaults, and conflict behavior are all present. The gap is the response — conflicting rows are 'reported' but the shape of that report and of a successful import is never described, and an agent cannot predict the return value. The Pro-license requirement is also only hinted at.

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?

The schema already documents the sole csv parameter at 100% coverage, but the description adds meaning the schema lacks: allowed status values (approved/rejected), the omission default (pending), and per-row conflict checking. It does not specify date or halfDay column formats, which remain undocumented in both places.

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?

Leads with a specific verb and resource — 'Bulk-create leave requests from a CSV/TSV' — which immediately distinguishes it from single-record siblings like leave_request, leave_approve, and leave_cancel. The header specification and status rules further pin down the operation. The closing 'watermark-free, full CRUD' phrase is slightly muddled but does not obscure the core purpose.

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?

The 'Bulk-create ... from a CSV/TSV' phrasing establishes a clear usage context: use this when many leave requests need to be created at once from a file, in contrast to the individual flow of leave_request. However, it never names an alternative or states when not to use the tool, and the 'Pro' prerequisite is a tag rather than an explained gating condition.

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.