Listing and creating events is table stakes; handing over an image of a conference schedule and getting a correctly dated entry is not, and it removes the most tedious part of calendar work. Being able to read across personal and work calendars at once is the other quiet win — it turns "when am I free" into something answerable in one question.
A Google Calendar server with full read and write access to events across your calendars. It handles the OAuth dance itself: on first run it opens a browser, saves the tokens with restricted permissions, and refreshes them in the background afterwards.
- `list-calendars` returns every calendar the account can see
- `list-events` reads events from one of them
- `create-event`, `update-event` and `delete-event` cover the write side
- Event details read out of images — PNG, JPEG and GIF — so a screenshot of an invite becomes a calendar entry
- Attendee response status is available, so "who has not accepted" is answerable
- Several calendars at once, which is what makes cross-calendar availability work
Node.js 16 or higher and TypeScript 5.3 or higher. A Google Cloud project with the Calendar API enabled and OAuth 2.0 desktop credentials downloaded as `gcp-oauth.keys.json` in the project root; add your own address as a test user on the consent screen, and allow a few minutes for that to propagate before the flow will complete. Tokens land in `.gcp-saved-tokens.json` with 600 permissions. While the app stays in testing rather than production, the token expires after 7 days and you re-run the flow. Version 1.0.1, MIT licensed.
Build from source — clone the repository and build it, then point your client at the binary
