Skip to main content
Glama

update_calendar_event

Idempotent

Update an existing calendar event. Use fetch_calendar_events first to get the event_token. Supports partial updates - only provide fields you want to change. Note: Cannot update events to past dates.

update_calendar_event

When to use

Update an existing calendar event. Use fetch_calendar_events first to get the event_token. Supports partial updates - only provide fields you want to change. Note: Cannot update events to past dates.

Parameters to validate before calling

  • event_token (string, required) — The event token to update (UUID format, required)

  • title (string, optional) — New event title (optional)

  • start_date (string, optional) — New start date in ISO 8601 format (optional)

  • end_date (string, optional) — New end date in ISO 8601 format (optional)

  • description (string, optional) — New event description (optional)

  • location (string, optional) — New event location (optional)

  • start_time (string, optional) — New start time in HH:MM format (optional)

  • end_time (string, optional) — New end time in HH:MM format (optional)

  • color (string, optional) — New event color in hex format (optional)

  • all_day (boolean, optional) — Whether this is an all-day event (optional)

  • status (string, optional) — New event status (optional)

  • private_event (boolean, optional) — Whether this is a private event (optional)

  • sms_notification (boolean, optional) — Enable SMS notifications (optional)

  • completed (boolean, optional) — Mark event as completed (optional)

  • latitude (number, optional) — New location latitude coordinate (optional)

  • longitude (number, optional) — New location longitude coordinate (optional)

  • event_url (string, optional) — New URL associated with the event (optional)

  • people_involved (string, optional) — New people involved in the event (optional)

  • repeat_this_event (string, optional) — New repeat configuration (optional)

  • notification (string, optional) — New notification settings (optional)

Notes

  • Cannot move events to past dates (UTC). Use tomorrow or later

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
colorNoNew event color in hex format (optional)
titleNoNew event title (optional)
statusNoNew event status (optional)
all_dayNoWhether this is an all-day event (optional)
end_dateNoNew end date in ISO 8601 format (optional)
end_timeNoNew end time in HH:MM format (optional)
latitudeNoNew location latitude coordinate (optional)
locationNoNew event location (optional)
completedNoMark event as completed (optional)
event_urlNoNew URL associated with the event (optional)
longitudeNoNew location longitude coordinate (optional)
start_dateNoNew start date in ISO 8601 format (optional)
start_timeNoNew start time in HH:MM format (optional)
descriptionNoNew event description (optional)
event_tokenYesThe event token to update (UUID format, required)
notificationNoNew notification settings (optional)
private_eventNoWhether this is a private event (optional)
people_involvedNoNew people involved in the event (optional)
sms_notificationNoEnable SMS notifications (optional)
repeat_this_eventNoNew repeat configuration (optional)

TDQS

A4/5.0
Behavior4/5

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

With annotations already indicating readOnly=false, destructive=false, and idempotent=true, the description adds meaningful behavioral constraints: partial updates, the need for event_token retrieval, and the 'cannot update to past dates (UTC)' rule. It does not cover auth or errors, but the key behavioral traits are disclosed.

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?

The initial paragraph is concise and front-loaded, but the 'When to use' section and the full parameter list duplicate the opening and input schema. This is structured but not optimally concise; redundancy reduces its efficiency.

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?

Given the tool's complexity (20 parameters) and high schema coverage, the description provides essential usage context: fetch first, partial updates, and the past-date restriction. It does not describe return values, but the absence of an output schema means that is optional context, and the description covers the main operational needs.

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%, and the description's parameter list largely copies the schema's descriptions. It adds little beyond the schema, though the partial-update note and the explicit UUID format for event_token provide some reinforcement.

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?

The description opens with 'Update an existing calendar event,' clearly identifying the verb, resource, and scope. It also distinguishes itself from siblings by noting the prerequisite fetch_calendar_events call and partial-update behavior, which separates it from create/delete/get/fetch variants.

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?

It explicitly instructs to use fetch_calendar_events first to obtain the event_token and explains partial updates. It does not mention explicit exclusions or alternatives, but the context is clear enough for an agent to know when this tool applies.

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.

TDQS

A3.6/5.0
Disambiguation4/5

Most tools follow a clear resource+action pattern (fetch_* for lists, get_* for single items, create/update/delete for writes), making them distinguishable. A few near-overlaps exist (fetch_billing_transactions vs fetch_wallet_transactions, draw_winners vs schedule_drawing) but the descriptions clarify the boundaries.

Naming Consistency4/5

Tool names consistently use snake_case verb_noun, with fetch_ for list operations and get_ for single-item retrieval. Some verb variation (add_participant, count_participants, draw_winners, schedule_drawing) deviates from the dominant create/fetch/update/delete pattern but remains predictable and readable.

Tool Count1/5

With 83 tools, this is far beyond a well-scoped server (typically 3-15, with 25+ considered too many). Even though the platform has broad functionality, the sheer number of tools creates significant agent confusion and selection overhead.

Completeness4/5

The sweepstakes domain is thoroughly covered: lifecycle management, participants, groups, rules, drawings, winners, calendar, notes, todos, tickets, surveys, invoices, billing, files, and entry settings. A few minor gaps exist (e.g., no general participant field update, no archive action) but the surface is remarkably complete for its scope.

Resources