calendar_get_free_busy
Query colleagues' schedules to find available meeting times. Returns full event details when permitted, otherwise free/busy slots.
Instructions
Query colleagues' schedules for a time range. For each email, tries to fetch full event details (title, time, status) when the authenticated user has calendar access; falls back to free/busy slots only when access is unavailable. Use this for meeting scheduling. Returns one entry per email: {email, source: 'events', events: [{id, title, start_time, end_time, status, all_day}]} (up to 50 events), or {email, source: 'free_busy', busy: [{start, end}]}, or {email, source: 'error', error}; the user's privacy settings may reduce 'events' to busy slots. Use calendar_list_events instead for the user's own calendar. Auto-approved.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| emails | Yes | Comma-separated email addresses of the people (or room resource emails) to check, e.g. 'a@example.com,b@example.com'. | |
| reason | Yes | One sentence: why are you calling this tool right now? | |
| time_max | Yes | End of the range, same RFC 3339 format as time_min. Required. | |
| time_min | Yes | Start of the range as an RFC 3339 timestamp with an offset, e.g. '2026-10-15T09:00:00+02:00'. Required; a bare date is not accepted. |