icu_create_event
Create a single new calendar event from scratch with support for workout syntax, custom categories, and training availability. Ideal for adding one-off workouts, notes, or race entries.
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 |
|---|---|---|---|
| start_date | Yes | Start date in YYYY-MM-DD format | |
| name | Yes | Event name | |
| 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. | |
| 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. | |
| event_type | No | Activity discipline (NOT the category): Ride, Run, Swim, Walk, Hike, VirtualRide, VirtualRun, Other. Required for RACE_A/B/C events. | |
| duration_seconds | No | Planned duration in seconds | |
| distance_meters | No | Planned distance in meters | |
| training_load | No | Planned training load | |
| 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. | |
| training_availability | No | Training availability: NORMAL, LIMITED, or UNAVAILABLE. Typical for INJURED/SICK/HOLIDAY blocks. | |
| color | No | Custom display color (hex string) | |
| show_as_note | No | Show event as a note marker on the fitness chart | |
| not_on_fitness_chart | No | Hide event entirely from the fitness chart | |
| show_on_ctl_line | No | Render event on the CTL line | |
| athlete_id | No | Athlete ID (for coaches managing multiple athletes) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |