Skip to main content
Glama

calendar_update_event

Update an existing event in the connected calendar (Google or Outlook). Can modify title, time, location, description, and attendees, add a Google Meet link to an event that has none, and move the event to another calendar of the same account. Only specified fields will be updated.

Input Schema

NameRequiredDescriptionDefault
endNoNew end time in ISO 8601 format. Optional.
startNoNew start time in ISO 8601 format. Optional.
summaryNoNew event title/summary. Optional.
event_idYesID of the event to update. Required.
locationNoNew event location. Optional.
timezoneNoIANA timezone (e.g. 'Asia/Bishkek') that a new start/end WITHOUT an offset is in: the zone of the person the time was agreed with. OMIT only when that is the calendar's own zone. Same meaning as on calendar.create_event.
attendeesNoFull list of attendee emails the event should have; anyone not listed is removed, an empty list removes everyone. On Google calendars guests already on the event keep their RSVP. On Outlook calendars Microsoft Graph may reset their responses when the list is re-sent. To change only some guests use add_attendees / remove_attendees instead of resending the list.
account_idNoCalendar account to use when the workspace has several (Google or Outlook). OMIT to use the default one; every answer names the account and channel used.
calendar_idNoCalendar ID containing the event. OMIT to use the agent's configured default calendar (or primary).
descriptionNoNew event description. Optional.
in_workspaceNoRun this one call in this workspace id instead of the session's. Nothing is stored; other sessions are not affected.
add_attendeesNoEmails to ADD to the event's current guests; the others stay invited (on Google with their RSVP; on Outlook Microsoft Graph may reset responses when it saves the list). Prefer this to `attendees` when inviting someone.
add_google_meetNoOld name of add_online_meeting (kept for existing agents). OMIT; use add_online_meeting.
move_to_calendarNoMove the event to another calendar of the same Google account, named by its id or its name, case-insensitive (e.g. a separate calendar kept for one project, so it can be shown or hidden on its own). The event keeps its id, Meet link and attendees, and the move itself notifies nobody (a field changed in the same call still notifies the attendees, as any update does). Calendar auto-join reads the primary calendar only, so the meeting bot does not join an event moved out of it. OMIT to leave the event where it is.
remove_attendeesNoEmails to REMOVE from the event's current guests; the others are untouched.
add_online_meetingNoIf true, gives the event a video meeting link of its own when it has none (Google Meet on a Google calendar, Microsoft Teams on an Outlook calendar); an event that already has one keeps it. OMIT to leave the event's link as it is.
send_notificationsNoWhether to email the attendees about the change. true (default) notifies them; false saves the change silently. On Outlook calendars a silent save is refused when the event has guests. Moving an event to another calendar never notifies the guests.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Changed2 schema fields changed
    • removedInput schema / properties / calendar_id / default
      Removed value: -"primary"
    • changedInput schema / properties / calendar_id / description
      Previous value: -"Calendar ID containing the event. Defaults to primary."New value: +"Calendar ID containing the event. OMIT to use the agent's configured default calendar (or primary)."
  4. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-idempotent, open-world, non-destructive behavior, so the bar is lower. The description adds real value by clarifying partial-update semantics ("Only specified fields will be updated") and the condition for adding a Meet link (only when none exists). It omits top-level mention of attendee-notification side effects, which are disclosed only in the schema.

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?

Two tight sentences with zero filler. The core action is front-loaded and the capability list follows in a single scannable clause.

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 17-parameter mutation tool with no output schema, the description gives enough to select and call it correctly, and the unusually rich schema fills in the riskier details. The only gap is that attendee-removal and notification side effects are not surfaced at the description level.

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 description coverage is 100%, so the schema already documents all 17 parameters in depth, including timezone semantics, attendee replacement rules, and notification behavior. The description restates the modifiable field set but adds no semantics beyond what the schema provides; baseline 3 is appropriate.

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 event in the connected calendar") and names the two supported providers. It then enumerates the concrete capabilities—title, time, location, description, attendees, Meet link, cross-calendar move—which clearly separates it from calendar_create_event and calendar_delete_event.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: an agent can infer this applies to modifying an already-existing event. There is no explicit "use this instead of X" routing at the description level; the guidance that distinguishes attendees vs add_attendees/remove_attendees lives in the parameter schema, not here.

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