list — Returns the rules in the access control list for the calendar.
patch — Updates an access control rule. This method supports patch semantics.
update — Updates an access control rule.
watch — Watch for changes to ACL resources.
calendarList
delete — Removes a calendar from the user's calendar list.
get — Returns a calendar from the user's calendar list.
insert — Inserts an existing calendar into the user's calendar list.
list — Returns the calendars on the user's calendar list.
patch — Updates an existing calendar on the user's calendar list. This method supports patch semantics.
update — Updates an existing calendar on the user's calendar list.
watch — Watch for changes to CalendarList resources.
calendars
clear — Clears a primary calendar. This operation deletes all events associated with the primary calendar of an account.
delete — Deletes a secondary calendar. Use calendars.clear for clearing all events on primary calendars.
get — Returns metadata for a calendar.
insert — Creates a secondary calendar.
The authenticated user for the request is made the data owner of the new calendar.
Note: We recommend to authenticate as the intended data owner of the calendar. You can use domain-wide delegation of authority to allow applications to act on behalf of a specific user. Don't use a service account for authentication. If you use a service account for authentication, the service account is the data owner, which can lead to unexpected behavior.
patch — Updates metadata for a calendar. This method supports patch semantics.
update — Updates metadata for a calendar.
channels
stop — Stop watching resources through this channel
colors
get — Returns the color definitions for calendars and events.
events
delete — Deletes an event.
get — Returns an event based on its Google Calendar ID. To retrieve an event using its iCalendar ID, call the events.list method using the iCalUID parameter.
import — Imports an event. This operation is used to add a private copy of an existing event to a calendar. Only events with an eventType of default may be imported.
Deprecated behavior: If a non-default event is imported, its type will be changed to default and any event-type-specific properties it may have will be dropped.
insert — Creates an event.
instances — Returns instances of the specified recurring event.
list — Returns events on the specified calendar.
move — Moves an event to another calendar, i.e. changes an event's organizer. Note that only default events can be moved; birthday, focusTime, fromGmail, outOfOffice and workingLocation events cannot be moved.
patch — Updates an event. This method supports patch semantics.
quickAdd — Creates an event based on a simple text string.
update — Updates an event.
watch — Watch for changes to Events resources.
freebusy
query — Returns free/busy information for a set of calendars.
settings
get — Returns a single user setting.
list — Returns all user settings for the authenticated user.
watch — Watch for changes to Settings resources.
Discovering Commands
Before calling any API method, inspect it:
# Browse resources and methods
gws calendar --help
# Inspect a method's required params, types, and defaults
gws schema calendar.<resource>.<method>
Use gws schema output to build your --params and --json flags.
1---2name: gws-calendar-23description: Google Calendar: Manage calendars and events.4---56# calendar (v3)78> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.910```bash11gws calendar <resource> <method> [flags]12```1314## Helper Commands1516| Command | Description |17|---------|-------------|18| [`+insert`](../gws-calendar-insert/SKILL.md) | create a new event |19| [`+agenda`](../gws-calendar-agenda/SKILL.md) | Show upcoming events across all calendars |2021## API Resources2223### acl2425 - `delete` — Deletes an access control rule.26 - `get` — Returns an access control rule.27 - `insert` — Creates an access control rule.28 - `list` — Returns the rules in the access control list for the calendar.29 - `patch` — Updates an access control rule. This method supports patch semantics.30 - `update` — Updates an access control rule.31 - `watch` — Watch for changes to ACL resources.3233### calendarList3435 - `delete` — Removes a calendar from the user's calendar list.36 - `get` — Returns a calendar from the user's calendar list.37 - `insert` — Inserts an existing calendar into the user's calendar list.38 - `list` — Returns the calendars on the user's calendar list.39 - `patch` — Updates an existing calendar on the user's calendar list. This method supports patch semantics.40 - `update` — Updates an existing calendar on the user's calendar list.41 - `watch` — Watch for changes to CalendarList resources.4243### calendars4445 - `clear` — Clears a primary calendar. This operation deletes all events associated with the primary calendar of an account.46 - `delete` — Deletes a secondary calendar. Use calendars.clear for clearing all events on primary calendars.47 - `get` — Returns metadata for a calendar.48 - `insert` — Creates a secondary calendar.49The authenticated user for the request is made the data owner of the new calendar.5051Note: We recommend to authenticate as the intended data owner of the calendar. You can use domain-wide delegation of authority to allow applications to act on behalf of a specific user. Don't use a service account for authentication. If you use a service account for authentication, the service account is the data owner, which can lead to unexpected behavior.52 - `patch` — Updates metadata for a calendar. This method supports patch semantics.53 - `update` — Updates metadata for a calendar.5455### channels5657 - `stop` — Stop watching resources through this channel5859### colors6061 - `get` — Returns the color definitions for calendars and events.6263### events6465 - `delete` — Deletes an event.66 - `get` — Returns an event based on its Google Calendar ID. To retrieve an event using its iCalendar ID, call the events.list method using the iCalUID parameter.67 - `import` — Imports an event. This operation is used to add a private copy of an existing event to a calendar. Only events with an eventType of default may be imported.68Deprecated behavior: If a non-default event is imported, its type will be changed to default and any event-type-specific properties it may have will be dropped.69 - `insert` — Creates an event.70 - `instances` — Returns instances of the specified recurring event.71 - `list` — Returns events on the specified calendar.72 - `move` — Moves an event to another calendar, i.e. changes an event's organizer. Note that only default events can be moved; birthday, focusTime, fromGmail, outOfOffice and workingLocation events cannot be moved.73 - `patch` — Updates an event. This method supports patch semantics.74 - `quickAdd` — Creates an event based on a simple text string.75 - `update` — Updates an event.76 - `watch` — Watch for changes to Events resources.7778### freebusy7980 - `query` — Returns free/busy information for a set of calendars.8182### settings8384 - `get` — Returns a single user setting.85 - `list` — Returns all user settings for the authenticated user.86 - `watch` — Watch for changes to Settings resources.8788## Discovering Commands8990Before calling any API method, inspect it:9192```bash93# Browse resources and methods94gws calendar --help9596# Inspect a method's required params, types, and defaults97gws schema calendar.<resource>.<method>98```99100Use `gws schema` output to build your `--params` and `--json` flags.
Run npx skillmds@latest add nota-america/gws-calendar-2 in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Google Calendar: Manage calendars and events. It is listed under Productivity on SkillMD.
This skill has not completed SkillMD's automated safety review yet. Independent scanners report: SkillSpector: PASS, Skill Scanner: PASS. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
nota-america (@nota-america) published this skill. Their other Agent Skills are listed on their SkillMD profile.