Skip to main content
Glama
UtahREIA

addevent-mcp-server

by UtahREIA

Update AddEvent Event

addevent_update_event
Idempotent

Update an existing event by providing only the fields to change—like datetime or location—so the rest of the event remains untouched.

Instructions

Updates an existing event. Only the fields you provide are changed; everything else is left as-is.

Args:

  • event_id (string, required): The event to update.

  • Any other field from addevent_create_event (title, datetime_start, datetime_end, location, description, etc.) is optional here — include only what's changing.

Returns: The updated event object as JSON.

Examples:

  • "Move the Main Monthly meetup to 7pm" -> event_id set, datetime_start updated.

  • "Change the location to the new venue" -> event_id set, location updated.

  • Don't use when: the event doesn't exist yet (use addevent_create_event).

Error Handling:

  • Returns "Error: Not found..." (404) if event_id doesn't exist, or "Error: Invalid request..." (400) if a field value fails validation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
colorNoEvent color, 1 to 20, matching the calendar's palette. Default 1.
titleNoThe event's title. Must be a non-empty, single-line string.
event_idYesThe ID of the event to update.
locationNoAddress or URL (e.g. a Zoom link). Mutually exclusive with location_id.
reminderNoMinutes before the event to send a reminder, 0 to 10800. Default 30. Only honored by Apple Calendar, Outlook desktop, and Office 365/Outlook.com.
timezoneNoIANA-style timezone (e.g. 'America/Denver') or 'floating' for a time that stays the same on every viewer's local clock. Defaults to the calendar's timezone. Use addevent_list_timezones for supported values.
free_busyNoWhether the event blocks the attendee's calendar: 'free', 'busy', or 'default' (use their default setting).
calendar_idNoThe calendar this event belongs to. Defaults to the account's default calendar if omitted. Use addevent_search_calendars to find calendar IDs.
custom_dataNoArbitrary key-value metadata to attach to the event, e.g. an external ID linking back to GHL. Use snake_case keys.
descriptionNoPlain text or simplified HTML description. Keep to roughly 500 characters or fewer for cross-browser compatibility.
location_idNoID of a saved location. Mutually exclusive with location.
datetime_endNoEnd date/time, same format as datetime_start. Defaults to datetime_start + 1 hour if omitted.
rsvp_enabledNoIf true, attendees must RSVP before adding the event to their calendar. Default false.
rsvp_form_idNoCustom RSVP form ID, or 'default' for the standard form.
all_day_eventNoIf true, start/end times are ignored and only the date is used. Default false.
internal_nameNoInternal-only label, never shown publicly. Useful for a human-readable label or an external ID linking back to another system.
datetime_startNoStart date/time, e.g. '2026-09-15 18:00' or '2026-09-15' for a date-only event.
organizer_nameNoOrganizer's name. Must be paired with organizer_email.
recurring_ruleNoiCalendar RRULE string for a repeating event (e.g. 'FREQ=MONTHLY;BYDAY=3TU' for the third Tuesday of every month). Leave empty for a one-time event. datetime_start must align with the rule for strict clients like Outlook desktop and Apple Calendar. Not supported by Yahoo Calendar.
organizer_emailNoOrganizer's email. Must be paired with organizer_name. Including an organizer makes calendar clients like Outlook desktop treat this as a meeting rather than an appointment.
landing_page_template_idNoCustom event landing page template ID, or 'default' for the standard AddEvent template.
Behavior4/5

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

Annotations already indicate non-read-only, idempotent, non-destructive behavior. The description adds valuable context beyond that: partial-update semantics, 404/400 error handling, and the note that validation failures return an error. It does not contradict the annotations.

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 well-structured with clear sections (Args, Returns, Examples, Error Handling, Don't use when). It front-loads the core purpose and each sentence earns its place, providing useful examples and error details without 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 tool with 21 parameters, the description covers the essential context: partial updates, error handling, return type (updated event object as JSON), and usage examples. It could have elaborated on edge cases (e.g., mutually exclusive fields), but the schema handles those details, and no output schema exists, so the return-type statement is sufficient.

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 every parameter already has detailed meaning. The description adds a few example parameter uses (datetime_start, location) and clarifies that event_id is required while all others are optional, but it largely relies on the schema. Baseline of 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?

The description opens with 'Updates an existing event'—a specific verb + resource. It also clarifies partial-update semantics ('Only the fields you provide are changed; everything else is left as-is'), which distinguishes it from a full replace or create, and explicitly contrasts with addevent_create_event in the 'Don't use when' note.

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?

It explicitly states when to use the tool ('Only the fields you provide are changed... include only what's changing') and when not to ('Don't use when: the event doesn't exist yet'), naming the alternative (addevent_create_event). The examples (moving a meeting, changing location) further clarify common usage scenarios.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/UtahREIA/addevent-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server