Credentials. Google and Microsoft OAuth app credentials grant access to host calendars, so store them as secrets and limit the scopes you create.
Who it is forA team admin whose hosts already live in Google Calendar or Microsoft 365 and who needs bookings to respect those calendars.
The problemWithout calendar sync, a booking page offers times that are already taken on a host's real calendar.
The outcomeA booking page that checks connected Google or Microsoft calendars and shows only truly open slots.
What you need first
- Node 20+
- A Cloudflare account
- Command-line access to run wrangler
- Your own Google or Microsoft OAuth app, only if you want calendar sync
Steps
- Complete the base deployment using
npx punctual-sh initor the manual steps in the README. - Create your own Google and Microsoft OAuth apps, since the README says calendar sync uses your own OAuth app.
- Follow the walkthrough in docs/self-hosting.md to connect each host's Google or Microsoft calendar.
- Create an event type with buffers and notice windows, then open the booking page and confirm that a busy calendar slot is not offered.
Prompt for your agent
Using the CCCrafts/punctual repo and docs/self-hosting.md, list the steps to connect a Google calendar to a deployed Punctual instance at <base-url>. Output the ordered steps and confirm that the OAuth redirect values match the deployed BASE_URL.
Caveat. The README points to docs/self-hosting.md for the calendar connection steps, so the exact OAuth setup is not in the README itself.
Use this in your AI agent
Ask your agent
Using the Deduped MCP, get the setup steps for CCCrafts/punctual and "Sync Google and Microsoft calendars into bookings"
Add Deduped to Claude Code once
claude mcp add --transport http deduped https://dedupedai.com/mcp
Every Monday: the 5 hottest repos and exactly how to use them. Free, one email a week, unsubscribe anytime.
Get them freeShare: X LinkedIn Hacker News Email Copy link
Third-party repos we don't own. AI-written use cases can be wrong. Disclaimer