client_ai_wod module lets a client’s AI assistant view published
Workouts of the Day, check the verified leaderboard, manage the client’s own
WOD preferences, and start or complete WOD sessions. Client AI tools are
subject-bound: every call resolves to the authenticated client
(subjectClientId) and only exposes that client’s own session state alongside
published company WOD content. The module is available only when the company
MCP integration feature is enabled, client AI access is enabled for the
client-company relationship, the company’s client MCP policy allows the module
(write tools additionally require the company policy to allow them), and the
client has granted health data consent.
Available Tools
client_ai_get_wod_by_date
Get the published WOD for one canonical date, scoped to the authenticated client and active company, including only that client’s session state. Calling it without a date returns today’s WOD in the active company’s timezone.
- Type: Read-only
- Important Input Fields:
date(string, optional): Canonical date inYYYY-MM-DDformat. Defaults to today in the active company’s timezone.language(string, optional): Content language, one ofen,nl.
client_ai_get_wod_detail
Get a bounded execution view of one published WOD, with the authenticated client’s own session and logged-set state.
- Type: Read-only
- Important Input Fields:
wodId(string, required): The unique WOD ID (24-character ObjectId).language(string, optional): Content language, one ofen,nl.
client_ai_get_wod_leaderboard
Get a bounded, preference-aware page of verified WOD results plus the authenticated client’s own result when present.
- Type: Read-only
- Important Input Fields:
wodId(string, required): The unique WOD ID (24-character ObjectId).page(integer, optional): Page number, starting at 1.limit(integer, optional): Page size, between 10 and 50.
client_ai_get_my_wod_preferences
Get WOD participation and notification preferences for the authenticated client in the active company.
- Type: Read-only
- Important Input Fields: None.
client_ai_update_my_wod_preferences Write
Update WOD participation or notifications for the authenticated client without changing company WOD settings.
- Type: Write
- Important Input Fields:
participates(boolean, optional): Whether you take part in the daily WOD (affects leaderboard visibility).notificationEnabled(boolean, optional): Whether you receive WOD notifications.
client_ai_start_my_wod Write
Start a fresh published WOD session for the authenticated client through the existing Workout V2 session core. Existing sessions must be resumed in the client app.
- Type: Write
- Important Input Fields:
wodId(string, required): The unique WOD ID (24-character ObjectId).division(string, optional): Division to perform, one ofrx,scaled.locationId(string, optional): Location ID (24-character ObjectId) where the WOD is performed.language(string, optional): Content language, one ofen,nl.
client_ai_complete_my_wod Write
Complete the authenticated client’s active WOD session through the existing scoring, verification, leaderboard, and XP domain flow.
- Type: Write
- Important Input Fields:
wodId(string, required): The unique WOD ID (24-character ObjectId).wodResult(object, optional): Score fields for the WOD format:roundsCompleted,repsPerRound,extraReps,totalReps,timeCapSeconds,elapsedSeconds(all numbers, min 0),finishedBeforeCap(boolean), andintervalReps(array of numbers, max 100 items).notes(string, optional): Notes on the completed workout. Max 2000 chars.verificationMode(string, optional): How the score is verified, one ofdirect,request_verification.
Natural Language Examples
- “What’s today’s WOD?”
- “Start today’s WOD for me — I’m doing the scaled division.”
- “I finished in 14:32 before the cap, log my score and ask my coach to verify it.”
- “Where am I on the leaderboard for yesterday’s WOD?”