Docs · Updated 2026-10-07
Google Calendar — Testing tool reference
Testing/BYO only, not public verified Google app availability. Needs your credentials; real-calendar and named-client acceptance remain pending.
Endpoint: https://toolcargo.com/mcp/google-calendar. Scope: connector:google-calendar. Included with Site Audit; each successful tool call uses one shared call.
Set up your own Testing grant
- Use your own dedicated Google Cloud project and enable Google Calendar API.
- Configure an external OAuth audience as Testing and add your intended Google account as a test user.
- Follow Google’s offline-access guide to obtain a refresh token with your own client and only
https://www.googleapis.com/auth/calendar.readonly. Optional basic identity scopes are allowed; write scopes and unrelated grants are refused. - Open Google Calendar Testing connection settings, enter the client ID, client secret and refresh token, and acknowledge Testing use. Never paste secrets into agent prompts.
- Create a scoped Google Calendar key from your ToolCargo dashboard and connect your agent to the endpoint above.
External Testing grants and refresh tokens expire seven days after consent. Renew consent and reconnect after expiry. Account and Workspace administrator policies can block access. ToolCargo cannot infer app publishing status from a refresh token; your acknowledgment is not Google approval.
Permissions and data
ToolCargo checks scope confirmation on each token refresh. Missing scope confirmation refuses connection or tool access before any calendar read; it never falls back to an assumed grant. It then reads your primary calendar identity before saving encrypted credentials bound to your ToolCargo account. Disconnect deletes those credentials; revoke the grant in Google to invalidate it there. Requested calendar descriptions, locations, organizer and attendee details pass through ToolCargo to your agent; this adapter does not store calendar reports or log their contents. Requests use only Google’s OAuth token endpoint and fixed Calendar API paths. No event/calendar creation, editing, deletion, invitations, sharing changes or reservations.
google_calendar_list_calendars
One page of up to 100 visible calendars and access roles. Explicit pagination; no calendar creation or ACL changes.
google_calendar_get_calendar
Selected metadata for primary or an exact calendar ID. Does not read or modify sharing permissions.
google_calendar_list_events
One page of up to 100 events overlapping an explicit RFC3339 window of at most 93 days. Recurrence expanded, cancelled events excluded; optional bounded text search. No automatic pagination.
google_calendar_get_event
Selected event details with up to 100 attendees and 10,000 description characters. End times are exclusive; text is untrusted. No attachments or remote links fetched.
google_calendar_free_busy
Read busy intervals for 1–20 distinct calendar IDs over at most 93 days. Unknown or source-error coverage must never be treated as free. No groups, invitations or reservations.
Inputs and interpretation
{ "calendar_id": "primary", "time_min": "2026-10-07T00:00:00+03:00", "time_max": "2026-10-14T00:00:00+03:00", "limit": 25 }{ "calendar_ids": ["primary"], "time_min": "2026-10-07T00:00:00Z", "time_max": "2026-10-08T00:00:00Z" }Use exact IDs returned by this connector; event IDs are distinct from iCalUIDs. List tools return one mutable page with at most 100 rows; pass next_page_token back as page_token with the same filters. No automatic pagination or snapshot guarantee. Windows require RFC3339 offsets and a positive span of at most 93 days. Event lists expand recurring instances, exclude cancelled events and select events whose end is after the lower bound and whose start is before the upper bound. All-day events retain date-only values and exclusive end dates; timed events retain provider offsets and time-zone metadata.
Descriptions are untrusted text or HTML, bounded to 10,000 characters; at most 100 attendees and 20 recurrence lines are projected. Attachments, conference links and remote assets are never fetched. Upstream JSON is bounded to 4 MB; oversized or invalid data fails without charging.
Free/busy accepts 1–20 distinct calendars, resolves primary explicitly, uses UTC and does not expand groups. Busy start is inclusive and end exclusive. Coverage must match the requested window; missing, malformed, error or more-than-500-interval coverage remains unknown. Never treat unknown as free. Availability is a point-in-time observation; it does not reserve time or promise an event can be scheduled.
Public launch remains pending
A public ToolCargo Google app needs the applicable OAuth verification for calendar.readonly, including dedicated app configuration, branding/domain/privacy evidence and scope justification as required by Google. ToolCargo’s owner must arrange that work. Testing/BYO does not establish public approval or a successful real-account call.
Official references: Calendar scopes, event-list semantics, free/busy and OAuth token expiry.
Set up Google Calendar
Review connection instructions, required credentials and plan limits before connecting your agent.