Suggest better times for an event
suggest_rescheduleSuggest better times for an existing meeting by analyzing calendar availability and ranking options by attendee conflicts, with an option to apply the best suggestion.
Instructions
Propose better times for an existing meeting, ranked, keeping its length.
Reads the event, then looks for slots of the same duration inside the user's working hours where the organiser is free, and ranks them: fewest attendee conflicts first, the event's current day next, then earliest. Slots that sit closer to another meeting than the user's buffer allows are penalised, not hidden.
Read-only by default -- it suggests, the user decides. Set apply to move
the event to the top suggestion once they have agreed to it.
Args:
event_id: The event to reschedule (from find_events).
calendar_id: Calendar the event lives on.
search_days: How many days ahead to search. Default 7, maximum 60.
max_suggestions: How many times to propose. Default 5, maximum 20.
search_from: Start searching from this time, ISO 8601. Defaults to now.
apply: True to actually move the event to the best suggestion. Only set
this when the user has agreed to the time.
account: Account name from 'calendar-mcp accounts'; omit for the default.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| apply | No | ||
| account | No | ||
| event_id | Yes | ||
| calendar_id | No | primary | |
| search_days | No | ||
| search_from | No | ||
| max_suggestions | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of suggestions returned. | |
| applied | No | True when the event was actually moved. | |
| message | No | One-line human-readable summary. | |
| summary | No | Event title. | |
| event_id | Yes | Event the suggestions are for. | |
| timezone | Yes | Timezone the suggestions are expressed in. | |
| attendees | No | Attendee calendars whose availability was checked. | |
| calendar_id | Yes | Calendar the event lives on. | |
| current_end | No | Current end, ISO 8601. | |
| suggestions | No | Proposed times, best first. | |
| applied_event | No | The event after the move; null unless 'applied' is true. | |
| current_start | No | Where the event sits now, ISO 8601. | |
| search_time_max | Yes | End of the searched window, ISO 8601. | |
| search_time_min | Yes | Start of the searched window, ISO 8601. | |
| duration_minutes | No | Length of the event, preserved by every suggestion. |