Skip to main content
Glama

Update Appointment Group

update_appointment_group
Destructive

Updates an existing appointment group by ID, changing only the fields you pass and returning the updated group. Use it to edit details, publish a draft group, or add new time slots.

Instructions

Update an existing appointment group by id — only the fields you pass are changed — and return the updated group object. Set publish=true to make a draft group visible to participants; Canvas will not let you set it back to false once published. Add new_appointments as [start_at, end_at] ISO 8601 pairs to create additional time slots — existing slots are left alone and there is no removal here. This tool cannot change participant_type, participant_visibility, or the per-participant appointment limits set at create_appointment_group; those are fixed at creation. Find the id with list_appointment_groups. Requires permission to manage the Scheduler in the group's context.

Input Schema

NameRequiredDescriptionDefault
titleNoNew title
publishNoSet to true to publish the group
descriptionNoNew description
context_codesNoUpdate context associations
location_nameNoLocation name
location_addressNoLocation address
new_appointmentsNoNew time slots to add as [start_at, end_at] pairs
appointment_group_idYesThe appointment group ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.18.15
    • addedInput schema / properties / appointment_group_id / anyOf
      Added value: +[
      +  {
      +    "exclusiveMinimum": 0,
      +    "maximum": 9007199254740991,
      +    "type": "integer"
      +  },
      +  {
      +    "pattern": "^[1-9][0-9]{0,18}$",
      +    "type": "string"
      +  }
      +]
    • removedInput schema / properties / appointment_group_id / type
      Removed value: -"number"
  2. Changed1 schema field changedv1.18.11
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  3. Changed3 schema fields changedv1.18.5
    • changedInput schema / properties / new_appointments / items / items
      Previous value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "string"
      -  }
      -]New value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / new_appointments / items / maxItems
      Added value: +2
    • addedInput schema / properties / new_appointments / items / minItems
      Added value: +2
  4. Addedv1.18.4

TDQS

A4.9/5.0
Behavior5/5

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

Adds substantial behavior beyond the destructiveHint/openWorldHint annotations: publish is one-way and irreversible once set true, new_appointments is append-only with no removal, unpassed fields are untouched, and the operation requires Scheduler management permission in the group's context. These are exactly the side effects an agent must know before mutating.

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, then constraints in descending importance; every sentence carries a distinct constraint. It is dense but slightly long with several em-dash clauses, costing a little readability.

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

Completeness5/5

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

For a destructive mutation with no output schema, the description covers partial-update semantics, irreversible publish, append-only slots, immutable fields, id discovery, and permission prerequisites. Nothing an agent needs to call it correctly is missing.

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

Parameters5/5

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

Schema coverage is 100%, so the baseline is 3, but the description goes further: it explains publish's irreversibility, that new_appointments are [start_at, end_at] ISO 8601 pairs that only add slots, and that omitted fields are unchanged. It also enumerates the immutable fields that are not parameters, preventing invalid calls.

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 and resource ('Update an existing appointment group by id') plus the return value ('return the updated group object'). It is clearly distinct from create_appointment_group, delete_appointment_group, and get_appointment_group in the sibling list.

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

Usage Guidelines5/5

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

Gives explicit when-nots: participant_type, participant_visibility, and per-participant limits cannot be changed here and are fixed at creation; there is no slot removal. It also routes the agent to list_appointment_groups to obtain the id, which is the one lookup an agent needs.

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