cal-scheduler
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CAL_DEFAULT_TZ | No | IANA zone every event is stored in | Pacific/Auckland |
| CALDAV_BASE_URL | Yes | CalDAV server URL, e.g. http://127.0.0.1:5232 | |
| CALDAV_PASSWORD | No | CalDAV account password | |
| CALDAV_USERNAME | No | CalDAV account user |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_calendarsA | List the calendars available on the account. |
| create_calendarB | Create a new calendar by display name. |
| delete_calendarA | Delete a calendar and all of its events. Irreversible. |
| list_eventsA | List event occurrences in [start, end], expanding recurring series. |
| resolve_datetimeA | Show how a datetime string will be interpreted, without writing anything. Use this to confirm a zone before committing an event. |
| create_eventA | Create an event (single, or recurring if |
| update_eventA | Edit a whole event/series. Only the fields you pass change. |
| delete_eventA | Delete a whole event/series (and any of its overrides). Irreversible. |
| mark_doneA | Mark an event (or one occurrence of a series) done at the current UTC moment. |
| exclude_occurrenceA | Drop a single occurrence of a recurring series (EXDATE). |
| move_occurrenceA | Reschedule a single occurrence of a series (RECURRENCE-ID override). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Each tool targets a distinct resource and action: calendar CRUD, event CRUD, occurrence-level operations (exclude, move), done-status marking, and datetime resolution. Even update_event vs move_occurrence are unambiguous due to explicit scope differentiation (whole event/series vs single occurrence).
All tool names follow a consistent verb_noun snake_case pattern (list_calendars, create_event, exclude_occurrence). mark_done is a minor variation (verb+adverb) but still fits the naming style and does not disrupt the pattern.
11 tools is well-scoped for a calendar/scheduler server, covering calendar management, event management, and recurring-event operations without unnecessary redundancy. Each tool earns its place.
Core lifecycle for calendars (list/create/delete) and events (list/create/update/delete) is covered, along with advanced recurrence handling. Missing calendar update (e.g., rename) is a minor gap, but agents can work around it by recreate if needed.