Schedule a meeting by finding mutual availability and creating a calendar event. Uses Google Calendar API. Use when user says "schedule meeting", "find time", or "book a meeting".
Find available time slots and create a Google Calendar event. Requires meetings persona for google_calendar_* tools.
| Input | Type | Default | Purpose |
|---|---|---|---|
title | string | required | Meeting title |
duration_minutes | int | 30 | Meeting duration |
attendees | string | - | Comma-separated emails |
preferred_time | string | - | e.g. "tomorrow 2pm", "next Monday morning" |
days_ahead | int | 5 | Days to search for slots |
description | string | "" | Meeting agenda |
persona_load("meetings") — Google Calendar toolscheck_known_issues("google_calendar", "")google_calendar_status — verify API accessiblegoogle_calendar_check_mutual_availability(attendee_email=attendees, days_ahead, duration_minutes)google_calendar_check_mutual_availability(attendee_email="primary", days_ahead, duration_minutes)google_calendar_list_events(days=days_ahead) — busy timesgoogle_calendar_quick_meeting(title, attendee_email=attendees or "", when=selected_time, duration_minutes)memory_session_log("Scheduled meeting: {title}", "Time: {selected_time}, Duration: {duration_minutes}min")preferred_time if provided; else first available slot from mutual availabilitylearn_tool_fix("google_calendar_schedule_meeting", "oauth token", "Token expired", "Run setup-gmail to refresh OAuth")