Skip to main content
Glama
Rootly MCP server

Rootly MCP server

Official
by rootlyhq

Update Schedule

update_schedule
Idempotent

Update an existing on-call schedule by ID to change its name, time zone, owner, Slack channel, business hours, coverage, or notification preferences.

Instructions

Updates a specific schedule by id

Input Schema

NameRequiredDescriptionDefault
idYesRequired. ID of the schedule (fills `{id}` in /v1/schedules/{id}). Pass it as `id` -- this tool has no `schedule_id` argument.
dataYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.4.0

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, so safety and repeatability are covered by structure. The description adds nothing about update semantics — crucially, whether omitted `attributes` fields are preserved or cleared, which is the single most consequential unknown in a PATCH-style nested update.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with zero waste and a front-loaded verb, but the brevity is under-specification rather than economy — nothing is left after the tautological restatement of the name.

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?

Rich schema (nested attributes, conditional constraints like shift-report flags requiring slack_channel) and an output schema exist, so the description needn't explain returns. Still, for a mutation on a 15+ attribute object, the absence of any partial-vs-full update statement leaves a real gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is reported at 50%, so the description needs to compensate and does not. It says only 'by id', giving no hint about the `data` wrapper, the JSON:API `type` discriminator, or which attributes are writable versus derived (e.g., `time_zone`).

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?

Clear verb + resource: 'Updates a specific schedule by id'. An agent knows exactly which record type is mutated. It does not differentiate from nearby siblings such as update_schedule_rotation or update_override_shift, but the noun 'schedule' is distinct enough.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus update_schedule_rotation or list_schedules/get_schedule first. No prerequisites (e.g., needing a schedule id from list_schedules) are stated.

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

Deploy Server

Other Tools