icu_create_event
Create one new calendar event from scratch. Specify date, name, category, and optional details like workout structure or training load.
Instructions
Create ONE new calendar event from scratch.
For two or more events in a single call, prefer icu_bulk_create_events over a loop. For copying existing events forward in time (repeating a workout for N weeks), use icu_duplicate_events — that tool reuses an existing event's payload instead of taking new fields.
For category guidance and the training_availability enum, read the
intervals-icu://event-categories resource. For structured WORKOUT events,
put workout-syntax text in description — see intervals-icu://workout-syntax.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Event name | |
| color | No | Custom display color (hex string) | |
| category | Yes | Event category enum. Common: WORKOUT, NOTE, RACE_A/B/C, TARGET, PLAN, HOLIDAY, SICK, INJURED. Full list with use-case guidance and the training_availability enum: intervals-icu://event-categories resource. Legacy aliases RACE→RACE_A, GOAL→TARGET accepted. | |
| end_date | No | End date in YYYY-MM-DD format. Use for ranged categories (INJURED, SICK, HOLIDAY, SEASON_START) to mark a multi-day block. | |
| athlete_id | No | Athlete ID (for coaches managing multiple athletes) | |
| event_type | No | Activity discipline (NOT the category): Ride, Run, Swim, Walk, Hike, VirtualRide, VirtualRun, Other. Required for RACE_A/B/C events. | |
| start_date | Yes | Start date in YYYY-MM-DD format | |
| description | No | Event description. For WORKOUT events, use Intervals.icu structured workout syntax (see intervals-icu://workout-syntax resource) — the server parses it into a structured workout with training load and zones. | |
| show_as_note | No | Show event as a note marker on the fitness chart | |
| training_load | No | Planned training load | |
| distance_meters | No | Planned distance in meters | |
| duration_seconds | No | Planned duration in seconds | |
| show_on_ctl_line | No | Render event on the CTL line | |
| not_on_fitness_chart | No | Hide event entirely from the fitness chart | |
| training_availability | No | Training availability: NORMAL, LIMITED, or UNAVAILABLE. Typical for INJURED/SICK/HOLIDAY blocks. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |