productivity
Google Calendar CLI for Cron Jobs
Use the Google Calendar CLI for cron jobs with headless JSON commands, schema discovery, credentials, and permission controls.
8 functions 5 read 3 write OAuth browser flow auth
Google Calendar CLI for Cron Jobs
Schedule repeatable integration workflows from cron while keeping credentials in KosmoKrator config.
Use the headless CLI from cron when an operation should run without an interactive agent session. The Google Calendar CLI uses the same integration registry as the TUI, Lua runtime, and MCP gateway, but returns predictable command output for automation.
Command Shape
# Google Calendar CLI for Cron Jobs
kosmokrator integrations:configure google_calendar --set access_token="$GOOGLE_CALENDAR_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmo integrations:call google_calendar.google_calendar_create_event '{"calendar_id":"example_calendar_id","summary":"example_summary","description":"example_description","location":"example_location","start_date_time":"example_start_date_time","end_date_time":"example_end_date_time","start_date":"example_start_date","end_date":"example_end_date"}' --json Discovery Before Execution
Agents and scripts can inspect Google Calendar docs and schemas before choosing a function.
kosmo integrations:docs google_calendar --json
kosmo integrations:docs google_calendar.google_calendar_create_event --json
kosmo integrations:schema google_calendar.google_calendar_create_event --json
kosmo integrations:search "Google Calendar" --json
kosmo integrations:list --json Useful Google Calendar CLI Functions
| Function | Type | Parameters | Description |
|---|---|---|---|
google_calendar.google_calendar_create_event | Write | calendar_id, summary, description, location, start_date_time, end_date_time, start_date, end_date, time_zone, attendees, recurrence | Create a Google Calendar event. Use startDateTime/endDateTime for timed events, or startDate/endDate for all-day events. |
google_calendar.google_calendar_delete_event | Write | calendar_id, event_id | Delete a Google Calendar event by its ID. |
google_calendar.google_calendar_freebusy | Read | time_min, time_max, calendar_ids | Check free/busy availability across one or more Google Calendars. Returns busy time slots within the specified time range. Useful for finding open slots for scheduling meetings. |
google_calendar.google_calendar_get_event | Read | calendar_id, event_id | Get a single Google Calendar event by its ID. |
google_calendar.google_calendar_list_calendars | Read | max_results, page_token | List all Google Calendars the user has access to. |
google_calendar.google_calendar_list_events | Read | calendar_id, time_min, time_max, query, max_results, page_token | List or search events in a Google Calendar. Supports date range filtering and text search. |
google_calendar.google_calendar_quick_add | Read | calendar_id, text | Create a Google Calendar event from natural language text (e.g., "Lunch with Alice tomorrow at noon"). |
google_calendar.google_calendar_update_event | Write | calendar_id, event_id, summary, description, location, start_date_time, end_date_time, start_date, end_date, time_zone, attendees, recurrence | Update an existing Google Calendar event (partial update). Only specified fields are changed. |
Automation Notes
- Use
--jsonfor machine-readable output. - Keep credentials out of argv by using environment variables or stored KosmoKrator configuration.
- Configure read/write policy before unattended runs; use
--forceonly for trusted automation. - Use the MCP gateway instead when the agent needs dynamic tool discovery inside a conversation.