Skip to main content
Glama

Change a scheduled shift

shiftbase_update_roster
Destructive

WRITE: change a scheduled shift: move it to another date, time, employee, team or shift type, or change its break or note. Reads the shift first and sends it back with your changes. For a recurring shift, scope says what changes: "occurrence" (this date only), "sequence" (this date and all later ones) or "original" (the whole series; also the right scope for a non-recurring shift). PUT /rosters/{occurrenceId}/{scope}.

Input Schema

NameRequiredDescriptionDefault
dateNoNew date (yyyy-mm-dd).
scopeYes"original" for a non-recurring shift; see the description for recurring ones.
notifyNoNotify the employee (default false).
team_idNoNew team.
user_idNoNew employee.
end_timeNoNew end, hh:mm.
shift_idNoNew shift type.
start_timeNoNew start, hh:mm.
descriptionNoNew note.
break_minutesNoNew unpaid break in minutes.
department_idNoNew department (when moving to a team of another department).
occurrence_idYesoccurrence_id from shiftbase_list_rosters.
paid_break_minutesNoNew paid break in minutes.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, and idempotentHint=false. The description adds valuable behavior: it reads the shift first (a read-modify-write pattern), and clarifies how the scope parameter changes which occurrences are affected. It does not detail authentication needs, rate limits, or error conditions, but with annotations covering the safety profile, this is good transparency.

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 front-loaded with 'WRITE: change a scheduled shift', followed by a concise enumeration of what can change, then the scope semantics, and finally the endpoint. Every sentence adds value with no redundancy.

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 mutation tool with 13 parameters, 100% schema coverage, and no output schema, the description covers the essential behavioral aspects (read-modify-write, scope meaning). It does not mention possible side effects (e.g., notifications controlled by 'notify' parameter) or what happens on failure, but the schema and annotations fill many gaps.

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 100%, so the baseline is 3. The description adds meaning for the scope parameter by defining the three enum values in plain language and explaining applicability to recurring vs non-recurring shifts. It also lists the categories of changeable fields, which helps map parameters to intent, though individual parameters are already well-described in the schema.

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 (change) and resource (scheduled shift), then enumerates the exact fields that can be modified (date, time, employee, team, shift type, break, note), and even names the HTTP endpoint. This clearly distinguishes it from siblings like shiftbase_create_roster and shiftbase_get_roster.

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 description explains how to use the scope parameter to target recurring vs non-recurring shifts, which is a key usage decision. It also notes that it reads the shift first and sends it back, implying prerequisites. However, it does not explicitly state when to use this tool versus alternatives like create_roster or list_rosters, though the purpose makes that fairly clear.

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.