Google Calendar Event Creator
Creates Google Calendar events from natural language descriptions using gcalcli or Calendar API. Handles recurring events, attendees, reminders, and conference links. Prerequisites: gcalcli, gcloud, curl, jq.
MCP get_skill({ skillId: "google-calendar-event-creator-71119699" })Use this skill with your agent
Create a free account and connect via MCP
# Google Calendar Event Creator
Create calendar events from natural language. Parses time, attendees, recurrence, and reminders, then creates the event in Google Calendar.
## When to Use
- "Schedule a meeting with Sarah tomorrow at 2pm"
- "Block 2 hours for deep work every morning this week"
- "Create a recurring 1:1 with my manager every Tuesday"
## Requirements
- **gcalcli** (`pip install gcalcli`) or **Google Cloud CLI** with Calendar API
- OAuth scopes: `calendar.events`
## Workflow
### Step 1 — Parse Natural Language Input
Extract from the user's request:
- **Title** — event name
- **Date/time** — start and end (infer duration: meetings=30min, focus=2h, lunch=1h)
- **Attendees** — email addresses
- **Recurrence** — one-time, daily, weekly, monthly
- **Location** — physical address or "Google Meet"
- **Reminders** — default or custom
- **Description** — agenda or notes
### Step 2 — Confirm Details
Show parsed event to user before creating:
```
📅 Event: Weekly 1:1 with Sarah
⏰ Tuesday, Apr 1, 2026 14:00 - 14:30
👥 Attendees: sarah@company.com
🔄 Recurrence: Every Tuesday
📍 Location: Google Meet (auto-generate link)
🔔 Reminder: 10 minutes before
```
Ask for confirmation.
### Step 3 — Create Event via gcalcli
```bash
# Simple event
gcalcli add --title "Weekly 1:1 with Sarah" \
--when "Tuesday 2pm" \
--duration 30 \
--where "Google Meet" \
--description "Weekly sync - discuss current sprint and blockers" \
--reminder 10 \
--noprompt
# Verify creation
gcalcli agenda "Tuesday" "Wednesday" --tsv
```
### Alternative: Create via Calendar API
```bash
ACCESS_TOKEN=$(gcloud auth print-access-token)
curl -s -X POST -H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"summary": "Weekly 1:1 with Sarah",
"location": "Google Meet",
"description": "Weekly sync",
"start": {"dateTime": "2026-04-01T14:00:00", "timeZone": "America/New_York"},
"end": {"dateTime": "2026-04-01T14:30:00", "timeZone": "America/New_York"},
"attendees": [{"email": "sarah@company.com"}],
"recurrence": ["RRULE:FREQ=WEEKLY;BYDAY=TU"],
"conferenceData": {"createRequest": {"requestId": "unique-id", "conferenceSolutionKey": {"type": "hangoutsMeet"}}},
"reminders": {"useDefault": false, "overrides": [{"method": "popup", "minutes": 10}]}
}' \
"https://www.googleapis.com/calendar/v3/calendars/primary/events?conferenceDataVersion=1" | jq '{id: .id, link: .htmlLink, meet: .conferenceData.entryPoints[0].uri}'
```
### Step 4 — Handle Batch Creation
For requests like "block focus time every morning this week":
1. Calculate each day's time slot
2. Check for conflicts with existing events
3. Create event for each non-conflicting slot
4. Report: "Created 4 focus blocks (Mon-Thu). Friday conflicted with All-Hands."
### Step 5 — Confirm & Report
After creation, show:
- Event link (click to open in Google Calendar)
- Google Meet link (if applicable)
- Recurrence summary
## Important Rules
- Always check for conflicts before creating events
- Always confirm with user before creating (show preview first)
- Default to 30-min duration for meetings if not specified
- Use user's timezone from Google Calendar settings
## Example Prompts
- "Schedule a 1-hour deep work block tomorrow at 9am"
- "Create a 15-min standup every weekday at 9am with team@company.com"
- "Block my lunch from 12-1 every day this week"Related Skills
More skills in Calendar & Scheduling
Google Calendar Availability Finder
Finds mutual free times across multiple Google Calendar users and proposes meeting slots. Generates scheduling links or draft calendar invites. Prerequisites: gcalcli, gcloud, curl, jq.
Google Calendar Daily Planner
Pulls today's or tomorrow's Google Calendar events via gcalcli, analyzes meeting density, identifies focus blocks, and generates a time-blocked daily plan. Prerequisites: gcalcli, gcloud, curl, jq.
Google Calendar Meeting Prep
Pulls upcoming meeting details from Google Calendar, researches attendees and topics via Brave Search, and generates a meeting prep brief with talking points. Prerequisites: gcalcli, gcloud, curl, jq, brave-search MCP.
Google Calendar Weekly Review
Generates a weekly calendar review: time spent in meetings vs focus work, meeting categories, overload analysis, and improvement recommendations. Prerequisites: gcalcli, gcloud, curl, jq.
Explore Other Categories
Skills from other categories with shared topics
Academic Search
Search and analyze academic literature. Find papers, understand research methodologies, and synthesize academic findings for research projects.
Acp Router
Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or explicit ACP harness work into either OpenClaw ACP runtime sessions or direct acpx-driven sessions ("telephone game" flow). For coding-agent thread requests, read this skill first, then use only `sessions_spawn` for thread creation. Codex chat binding defaults to the native Codex app-server plugin unless ACP is explicit or background spawn needs ACP.
Ads Copywriter
Multi-platform ad copy generation for Google Ads, Meta/Facebook, TikTok, LinkedIn with A/B testing variants