Skip to main content
Glama

gws-mcp__calendar_list_events

Read-only

List upcoming events from a Google Calendar. By default returns a compact view per event: id, title, start/end, location, plain-text description (HTML stripped, truncated), organizer email, attendee count plus your own response status, the full attendee roster when the meeting has 10 or fewer people, a recurring flag, attachments, and the video join link (Meet or conference-data providers like Zoom). Only large-meeting rosters, reminders, and raw HTML are dropped — use full for the raw Calendar API payload, or calendar_get_event for one event's complete detail.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "gws-mcp__calendar_list_events"
  }
}

Input Schema

NameRequiredDescriptionDefault
fullNoReturn the raw Calendar API response instead of the compact view: full attendee rosters, reminders, conferenceData, htmlLink, and original (often HTML) descriptions. On busy calendars this can be very large — prefer the default compact view for triage and agenda use.
queryNoFree-text search query to filter events
accountNoOptional email address of the connected account to use (e.g. 'user@gmail.com'). If omitted, the default account is used.
order_byNo"startTime" (default) orders events by when they start; "updated" orders them by when they were last changed.
time_maxNoEnd of time range (ISO 8601, e.g., "2024-06-30T23:59:59Z"). Defaults to 7 days from now.
time_minNoStart of time range (ISO 8601, e.g., "2024-06-01T00:00:00Z"). Defaults to now.
page_tokenNoThe nextPageToken from an earlier call with the same calendar, time range and query, to read the page of events after it.
calendar_idNoCalendar ID (default: "primary" for the user's main calendar)
max_resultsNoMaximum number of events to return (default: 20)
updated_minNoOnly events changed at or after this time (RFC 3339, e.g. "2024-06-01T00:00:00Z"), for reading what changed since an earlier call. The time range still applies. Google refuses a time too far in the past (410 updatedMinTooLongAgo), and then a full read is the way back. Optional.
show_deletedNoWhen true, cancelled and deleted events are included, each with status "cancelled". Defaults to false.
max_description_charsNoIn the compact view, truncate each event's plain-text description to this many characters (default: 500; adds a truncation marker). Set to 0 to omit descriptions entirely. Ignored when full is true.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the single readOnlyHint annotation, the description discloses substantial post-processing behavior: HTML is stripped and descriptions truncated, rosters are only included for meetings of 10 or fewer, and reminders/raw HTML are dropped. It also explains the Meet/Zoom join-link extraction, which an agent cannot infer from any structured field.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose and default return shape are front-loaded in the first sentence, followed by the field enumeration and the escape hatches. The dense field list is long but every item answers "what do I get back," so no sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter read tool with no output schema, the description carries the return-value burden well, covering fields, omissions, and truncation. It omits pagination behavior and the default time window, though both are documented in the schema, leaving only minor gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds the compact-vs-full trade-off that governs the `full` flag and clarifies which fields are lost in each mode. It also frames the compact view as the triage/agenda default, reinforcing the schema's note that `max_description_chars` is ignored when `full` is true.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("List upcoming events from a Google Calendar") and then enumerates the exact compact shape it returns, so an agent knows precisely what data comes back. It explicitly contrasts itself with the `full` mode and with the sibling `calendar_get_event` for single-event detail.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description routes the agent away from this tool when it needs raw payloads or one event's full detail, naming both the `full` parameter and the `calendar_get_event` sibling. It does not address adjacent scheduling siblings such as `calendar_freebusy` or `calendar_suggest_time`, so the when-not guidance is incomplete rather than exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.