Skip to main content
Glama
InstaCode

icloud-calendar-mcp-server

by InstaCode

List iCloud Events

icloud_list_events
Read-onlyIdempotent

Retrieve events from an iCloud calendar within a specified start and end datetime, returning details like summary, time, location, and unique ID for later updates or deletions.

Instructions

List events from a specific calendar within a time range.

Args:

  • calendar: Display name (e.g. "Work") or full CalDAV URL

  • start: ISO 8601 datetime for range start

  • end: ISO 8601 datetime for range end

Returns an array of events with uid, summary, start, end, location, description, allDay flag. The 'uid' is the stable identifier — use it for update/delete operations.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
endYesRange end as ISO 8601 datetime (e.g., '2026-05-31T23:59:59Z')
startYesRange start as ISO 8601 datetime (e.g., '2026-05-01T00:00:00Z')
calendarYesCalendar display name (e.g., 'Work', 'Home') or full CalDAV URL
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds value by specifying return fields (uid, summary, start, etc.) and noting that uid is stable for mutations. It does not mention pagination or limits, but openWorldHint covers partial results.

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 description is extremely concise: one sentence for purpose, a bullet-like list for arguments, and a clear statement about return structure and uid significance. Every sentence is informative with no redundancy.

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?

Given the tool's simplicity (3 params, no output schema), the description covers purpose, parameter semantics, and return shape adequately. It lacks mention of potential pagination or the implication of openWorldHint, but the uid instruction adds useful chaining context. Overall complete enough for typical usage.

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

Parameters3/5

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

With 100% schema coverage, the schema already documents parameters well. The description provides example values ('Work') and clarifies that calendar accepts both display names and CalDAV URLs, but this largely mirrors the schema description, adding minimal new meaning.

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?

The description uses the specific verb 'list' and resource 'events' with constraints 'from a specific calendar within a time range', clearly distinguishing its purpose from sibling tools like create, delete, update, and list_calendars.

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 clearly implies when to use (list events in a range), and mentions that 'uid' is for update/delete, which guides chaining. However, it does not explicitly state when not to use or suggest alternatives like icloud_list_calendars for obtaining calendar IDs.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/InstaCode/icloud-calendar-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server