# create_event

Creates an event and returns it (id, htmlLink, start/end, attendees, hangoutLink when add_meet). Times: EITHER start_date_time + end_date_time (RFC3339; add time_zone for recurring events) OR start_date + end_date for all-day (end_date is EXCLUSIVE — the day after the last day). recurrence makes it a recurring series. attendees invites guests — but the API sends invitation emails ONLY with send_updates=all (the default notifies nobody). add_meet attaches a Google Meet link (may come back status=pending — re-run get_event for the final URL). This is a plain calendar write: it does not check for conflicts — call query_free_busy first to find a free slot. Never blindly re-send after a timeout or 5xx: the event may already exist — check with list_events first, or you will create a duplicate and re-invite everyone.

Agent View of the PolicyLayer registry record for `create_event`. HTML page: https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/create-event

## Facts

- Tool: `create_event`
- Server: Mcp Google Calendar (`@a1-x-tech/mcp-google-calendar`) — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar.md
- Install: `npx -y @a1-x-tech/mcp-google-calendar`
- Homepage: https://github.com/A1-x-Tech/mcp-google-calendar
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 12 (2 required)
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `summary` | string | yes | Event title. |
| `add_meet` | boolean | no | Attach a Google Meet conference. The returned conferenceData may be status=pending — re-run get_event for the final Meet link. |
| `color_id` | string | no | Event color id ("1".."11"; the palette is fixed by Google). |
| `end_date` | string | no | All-day event end date, EXCLUSIVE — the day after the last day (a one-day event on the 5th ends on the 6th). |
| `location` | string | no | Free-form location, e.g. a room name or address. |
| `attendees` | array | no | Guest list. On update this REPLACES the whole list — fetch the event first and send the complete new list. Invitation emails go out only with send_updates=all. |
| `reminders` | array | no | Custom reminders (max 5). Setting this turns default reminders off for the event. |
| `time_zone` | string | no | IANA time zone for start/end (e.g. "Europe/Berlin"). REQUIRED for recurring events; otherwise optional when the RFC3339 offsets already say everything. |
| `recurrence` | array | no | RRULE/RDATE/EXRULE/EXDATE lines (RFC 5545) making the event recurring, e.g. ["RRULE:FREQ=WEEKLY;BYDAY=MO,WE"]. Requires the timed pair plus time_zone. |
| `start_date` | string | no | All-day event start date (YYYY-MM-DD). Pair with end_date. |
| `visibility` | string | no | Who can see event details on a shared calendar. |
| `calendar_id` | string | yes | The calendar id from list_calendars, or "primary" for the authenticated user's main calendar. |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "create_event",
    "arguments": {
      "summary": "<summary>",
      "calendar_id": "<calendar_id>"
    }
  }
}
```

## Why create_event is rated Medium

An AI agent can call create_event faster than any human can review: one bad instruction and it creates or modifies resources in Mcp Google Calendar by the hundred, each call as confident as the last.

Risk signals: High parameter count (25 properties)

## Use case

AI agents use create_event to create or update resources in Mcp Google Calendar, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Mcp Google Calendar environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Mcp Google Calendar:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "create_event": {
      "limits": [
        {
          "counter": "create_event_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Mcp Google Calendar (18)

- `delete_event` — Destructive — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/delete-event.md
- `logout` — Destructive — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/logout.md
- `start_login` — Execute — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/start-login.md
- `auth_status` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/auth-status.md
- `get_calendar` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/get-calendar.md
- `get_event` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/get-event.md
- `list_calendars` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/list-calendars.md
- `list_event_instances` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/list-event-instances.md
- `list_events` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/list-events.md
- `query_free_busy` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/query-free-busy.md
- `raw_request` — Read — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/raw-request.md
- `create_focus_time` — Write — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/create-focus-time.md
- `create_out_of_office` — Write — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/create-out-of-office.md
- `finish_login` — Write — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/finish-login.md
- `move_event` — Write — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/move-event.md
- `set_client` — Write — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/set-client.md
- `setup_instructions` — Write — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/setup-instructions.md
- `update_event` — Write — https://policylayer.com/tools/a1-x-tech-mcp-google-calendar/update-event.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=a1-x-tech-mcp-google-calendar · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/a1-x-tech-mcp-google-calendar
