home / skills / aviz85 / claude-skills-library / calendar

This skill helps you check, create, and manage Google Calendar events via Apps Script API, keeping schedules synchronized and invites organized.

npx playbooks add skill aviz85/claude-skills-library --skill calendar

Review the files below or copy the command above to add this skill to your agents.

Files (4)
skill.md
1.7 KB
---
name: calendar
description: "Google Calendar integration via Apps Script API. Use when checking schedule, meetings, today's events, weekly calendar, or adding events."
version: "1.0.0"
author: aviz85
tags:
  - calendar
  - google
  - scheduling
  - productivity
setup: "./SETUP.md"
setup_complete: false
---

# Google Calendar Integration

> **First time?** If `setup_complete: false` above, run `./SETUP.md` first, then set `setup_complete: true`.

Check and manage calendar events via Google Apps Script API.

## Workflow

1. **Check availability** - Query today/week/upcoming events
2. **Create events** - Add with title, time, description, guests
3. **Send invites** - Use `guests` param to auto-send calendar invites

## API Actions

| Action | Description | Params |
|--------|-------------|--------|
| `today` | Today's events | - |
| `week` | This week's events | - |
| `upcoming` | Next N hours | `hours` (default: 4) |
| `range` | Date range | `start`, `end` (ISO dates) |
| `create` | Create event | `title`, `start`, `end`, `guests`, `description`, `location` |

## Examples

```bash
# Today's events
curl "$URL?action=today&token=$TOKEN"

# Create meeting with guest invite
curl "$URL?action=create&title=Meeting&start=2026-01-15T10:00:00&end=2026-01-15T11:00:00&[email protected]&token=$TOKEN"
```

## Response Format

```json
{
  "count": 1,
  "events": [
    {
      "title": "Meeting Name",
      "start": "2026-01-04T09:00:00.000Z",
      "end": "2026-01-04T10:00:00.000Z",
      "location": "Zoom link or address",
      "isAllDay": false
    }
  ]
}
```

## Integration

Works with other skills:
- **zoom-meeting** - Check conflicts before scheduling
- **whatsapp** - Notify contacts about calendar invites

Overview

This skill integrates Google Calendar via Google Apps Script to check availability, list events, and create meetings with invites. It helps you view today, this week, upcoming windows, or a custom date range, and add events with guests, descriptions, and locations. Use it to reduce scheduling friction and automate invite sending.

How this skill works

The skill calls an Apps Script API endpoint with actions like today, week, upcoming, range, and create. Query endpoints to receive JSON lists of events (title, start, end, location, isAllDay) or post event data to create meetings and optionally email guest invites. Parameters include ISO date ranges, hour windows, and common event fields.

When to use it

  • Check today’s meetings and availability before starting work
  • Review this week’s calendar to plan priorities
  • Find upcoming free/busy windows within the next N hours
  • Create a new meeting and automatically send guest invites
  • Query a custom date range for planning or reporting

Best practices

  • Use ISO 8601 timestamps for start and end to avoid timezone issues
  • Query 'upcoming' with a small hours window to find immediate conflicts
  • Check 'week' before scheduling cross-team meetings to avoid overlaps
  • Include guests and emails when creating events to trigger invites
  • Validate required fields (title, start, end) before calling create

Example use cases

  • Fetch today’s events to build a daily agenda in a dashboard
  • Check the next 4 hours for open slots before booking a last-minute call
  • Create a team sync with title, description, location, and guest list
  • Scan a date range to generate a weekly availability report
  • Preflight a Zoom meeting with the zoom-meeting skill to avoid conflicts

FAQ

What action returns events for today?

Call the action 'today' to receive a JSON list of today's events.

How do I create an event with guest invites?

Use action 'create' with title, start, end, and guests (comma-separated emails) to add the event and send invites.