MCP Event Listing Best Practices
Use primecal_calendars_events_list as a bounded retrieval tool, not as a full calendar export.
Recommended AI-Friendly Patterns
Compact planner context
Use the default compact response:
{
"from": "2032-04-16T00:00:00.000Z",
"to": "2032-04-17T00:00:00.000Z"
}
This keeps payloads small while still exposing timing, calendar identity, organizer summary, and attendee counts.
Follow-up detail expansion
Request richer fields only when needed:
{
"from": "2032-04-16T00:00:00.000Z",
"to": "2032-04-17T00:00:00.000Z",
"fields": ["id", "title", "description", "meetingUrl", "attendees"],
"includeFullDescription": false
}
Multi-calendar scheduling
Scope to a known subset when the agent already knows which calendars matter:
{
"calendarIds": [14, 15],
"from": "2032-04-16T00:00:00.000Z",
"to": "2032-04-23T00:00:00.000Z"
}
Recommended Field Sets
- Fast planning view:
- default fields only
- Meeting follow-up:
["id", "title", "startsAt", "endsAt", "meetingUrl", "organizer", "attendees"]
- Sync/debug view:
["id", "title", "sourceId", "externalId", "calendarId", "calendarName"]
- Body-aware reasoning:
["id", "title", "description", "meetingUrl"]
Pagination Patterns
- Start with
limit: 50. - If
truncatedistrue, keep calling with the returnednextCursor. - Do not rebuild or modify the cursor client-side.
- Keep
from,to,calendarIds,fields, andexpandRecurrencesstable across pages.
Recurrence Patterns
- Use
expandRecurrences: truefor day-by-day planning or agenda generation. - Use
expandRecurrences: falsefor series management, recurrence audits, or “show me the source rule” workflows.
Description Handling
- Avoid requesting
descriptionunless the task actually needs it. - Prefer truncated descriptions first.
- Use
includeFullDescription: trueonly for second-pass reads or summarization tasks that genuinely need the full body.
Timezone Guidance
- Always send UTC
from/to. - Set
userTimezonewhen the agent is reasoning in a non-default zone. - Treat
timezoneas the rendering context for all-day date-only fields.