← Back to all apps

Tredict

Productivityby Tredict
Launched Mar 9, 2026 on ChatGPT

Tredict is a platform for endurance training planning, structured workouts, and workout analysis for athletes and coaches.

Create reusable training plans and structured workouts for running, cycling, swimming, and other sports directly in Tredict with ChatGPT. Plans can be tailored to your recent activities and preferred training approach, whether based on power, pace, or other performance metrics.

Execute your training plan directly on your sports watch through Tredict’s integrations with Garmin, Suunto, Polar, Wahoo, Coros, and other platforms.

Organize your training calendar with AI-powered assistance that helps summarize workouts and suggest meaningful titles and descriptions for your training sessions.

Analyze past training activities and generate structured workout plans that support long-term endurance training.

Tredict integrates with ChatGPT to help athletes and coaches organize and plan endurance training more efficiently.

Tredict is GDPR compliant.

11ChatGPT Tools
TredictDeveloper
ProductivityCategory

Available Tools

Activity details, extensive metrics and time series data

activity
Full Description

Returns detailed metrics and time series for a single executed activity.

Examples metrics: " positionLat, positionLong, speed, distance, altitude, cadence, power,

weather, runningEffectiveness, effort, intensityDistribution, zonesDistribution, powerAerobicFactor, speedIndex, formPowerFactor ".

Parameters (1 required)
Required
activityIdstring

The activityId that references a single activity that should be fetched. Could be determined from the 'activity-list' for example.

List executed activities for a date range

activity-list
Full Description

List of already executed activities with activity summaries. If the 'pageSize' limit is reached in the result, there will be a 'nextCursor' in the pagination object. Call the next page with the nextCursor as startDate. Each 'activitList' entry contains at least the activity 'id', 'date' and 'sportType'. If you need extended summaries on all entries in this list call this tool "activity-list" with the "extendedSummary" parameter set to "1". The extended summary contains trainingType, pace, speed, heartrate, temperature, power, cadence, calories, distance, altitude, durations. Be careful as this can lead to significantly larger datasets, if there are lot of results, f.ex. when querying over multiple years. If you need an extended summary with title, notes and metrics only for a single activity, or if you need time series, like the heart rate series, call the "activity" tool with the appropriate 'id' retrieved from this list. If the tool only returs instructions, without any training session and without erroring, then there are simply no training sessions for this date range.

Parameters (0 required, 4 optional)
Optional
endDatestring

endDate (date ISO format string with Zulu) sets the oldest date of the entry in the activity list. Use in combination with 'startDate' to define a specific date range of activity entries, f.ex. "2025-01-31T00:00:00.00Z" (startDate) to "2025-01-01T00:00:00.00Z" (endDate) to fetch only the activities of January 2025. If no 'endDate' is given, the list paginates to the very last activity.

extendedSummarynumber

Set to number '1' to get an extended activity summary on each list entry. The extended 'summary' contains fields like 'title', 'notes', 'duration', 'distance', 'speed', 'pace', 'heartrate', 'power' and many more.

pageSizenumber

Optional pageSize of activity list number of activity entries as integer. Set if you plan to look only at the recent activities. Default is 500. Max pageSize is 1000.

startDatestring

startDate (date ISO format string with Zulu) sets the start date of the activity list. The list starts with the newest activity, traversing in date back to older activities. If no 'startDate' is given, the list starts with the newest executed activity available.

Update title and description of an activity (non-destructive)

activity-update
Full Description

Update fields like 'title' or the 'notes' on an single activity or planned/scheduled workout.

Always ask the user, the human-in-the-loop, for confirmation, if you would like to call this tool. Do not batch call this tool. Ask for confirmation on each activity.

Never apply title or notes updates on your own.

The 'title' is the activity title with a maximum length of 255 characters. If you want to remove the title of an activity pass an empty string "", then Tredict will apply it's default. Do not set this param at all, if you do not want to change the title.

The 'notes' field is a longer description or notes of the activity with maximum length od 2048 chars. It can keep interesting details of an workout or activity.

If reseting a field with an empty string should not be enough, you can search for an object named 'mcpUpdatedFields' in an activity either with the 'activity' tool for executed activities or in the list of planned activities with the 'planned-workout-list' tool. The 'mcpUpdatedFields' object contains older titles and notes with a datestring, when they were backuped.

Parameters (1 required, 2 optional)
Required
activityIdstring

The activityId that references a single activity or scheduled workout that should be fetched. Could be determined from the 'activity-list' for example.

Optional
notesstring

Updates the notes. Max 2048 chars. Can be an extensive description of the activty, do not set at all or with 'null' to skip. Set to a string with one blank space, like this " ", to reset.

titlestring

Updates the title. Max 255 chars. Do not set at all or with 'null' to skip. Set to a string with one blank space, like this " ", to empty activity title and apply Tredict defaults.

Add a single plan training to an existing plan

add-plan-training
Full Description

Add a single planned training (structured workout) to a plan you created with the 'plan-creation' tool before. Use this tool to add the planned trainings by single tool call for each training to the training plan that should be build for the user.

Parameters (2 required)
Required
planIdstring

This is the id of the training plan you would like to add a planned training to.

planTrainingobject

A planned training or structured workout that belong to the plan.

Create reusable training plans in 'My Plans'

plan-creation
Full Description

Call this to create a reusable training plan in the ‘My Own Training Plans’ category of Tredict (this is not the actual training calendar). Later on, the plan can be applied by the Tredict user to a custom start or end date in the user's training calendar, either by the user themselves or even in the calendars of athletes associated with the user. If the user has connected an appropriate sports watch manufacturer in Tredict, the plan, when applied, including the structured workouts and planned trainings, will be automatically transferred to the sports watch. Prefer to add the activities to the new plan step by step with the 'add-plan-training' tool. After plan creation, another tool called ‘show-plan-ui’ can be called with the planId to open the MCP app user interface for that plan, which gives a great user experience.

Parameters (2 required)
Required
llmDescriptionstring

Give a brief description of yourself. Model type, provider and manufacturer.

planobject

Details and structure of a single planned workout

planned-workout
Full Description

Returns the details and structure of a planned structured workout in JSON.

Parameters (1 required, 1 optional)
Required
workoutIdstring

workoutId you got for example from the 'planned-workout-list'.

Optional
languagestring

The language the annotations in the planned workout will be. Either 'de' for German or 'en' for English. Default: en

List of planned structured workouts

planned-workout-list
Full Description

List of planned and scheduled trainings or structured workouts.

Each 'plannedWorkoutList' entry contains these fields: Fieldname, optional, description id = The unique id of the training session. Alias: workoutId date = Scheduled date of the training session. updatedAt = Last time the user updated the training session. You can compare on this date for updates. timezone = Timezone in hours. '2' means GTM+2. sportType = The sportType can be 'running', 'cycling', 'swimming', 'misc'. title = (Optional) If the user manually defined a title this is given here. notes = (Optional) If the user manually defined a description or notes this is given here. distance = (Optional) The summed up distance in meters of the planned workout segments. duration = (Optional) The summed up duration in seconds of the planned workout segments. Do not calculate a pace from distance and duration. There could be segments with neither both. executedTrainingId = (Optional) Set with the 'activityId' of an executed activity (training), if this planned workout session has a executed activity attached. You can call the "activity"-tool to get detailed information on the executed activity for comparision with this planned workout.

Parameters (0 required, 3 optional)
Optional
endDatestring

endDate (date ISO format string with Zulu) sets the newest date of the entry in the planned workout list. If given no strutctured workouts will be returned after this date. If you only want the get the list of the next week set the endDate 7 days large then the startDate.

sportTypestring

If given, the list only shows the workouts for the given main sportType of either 'running', 'cycling', 'swimming' or 'misc'.

startDatestring

startDate (date ISO format string with Zulu) sets the start date of the planned workout list. The list starts with the start date nearest neighbour workout, traversing in date forward to the future and to newer workouts. If no 'startDate' is given, the list starts with the most recent of today's planned workout/training. The startDate can be maximum 2 years in the past.

Tredict Activity Details and Metrics UI widget

show-activity-ui
Full Description

Shows standard metrics, timeseries, laps and a map of an executed activity by activityId.

Parameters (1 required)
Required
activityIdstring

This is the id of the executed activity that should be displayed. The activity ui cannot be called with planned/scheduled training sessions in the future, only executed ones in the past.

Tredict Training Plan Details and Calendar UI widget

show-plan-ui
Full Description

Shows a reusable training plan created in the users 'My Plans' category by planId.

Parameters (1 required)
Required
planIdstring

This is the id of the reusable training plan that should be displayed.

Zone revisions

zones
Full Description

List of zones represented by revisions over time for each sportType and then the "zoneType".

"zoneType" can be of "heartrate", "pace", "power" or "cadence". A single zone row has an "intensity" field attached, values are mapped like this: 0 = low intensity, 1 = medium intensity, 2 = high intensity Also a single zone row has "from" and "to" fields to define the zone range.

Each list entry represents a so called revision defined by the "timestamp", which only includes changed/updated values/metrics in relation to the last presence of the related metric in an older revision.

The last occurence of a specfic metric as the neighbour to an f.ex. an activity related to the older timestamp of a revision is the valid one.

Parameters (0 required, 1 optional)
Optional
sportTypestring

If given, the list only shows the zones for the given main sportType of either 'running', 'cycling', 'swimming' or 'misc'. Default is to show all sports.

Aggregated zones distribution

zones-distribution
Full Description

List of aggregated zones distributions calculated by the time series data points activities have.

The distribution are sorted by sportType and the monthly YYYYMM date tag. Each date tag has training intensity zone distributions based on metrics like pace, power, cadence or heart rate recorded during workouts.

Therein are objects with the zone revision date as key. This revison date in combination with sportType and zoneType can be used to fetch the zone definitions with help of the 'zones' tool.

If there is no revision date, but instead "template", this means the user never defined it's zones revisions, yet, and it's base on the Tredict own zones template. Feel free to ignore then.

A specific distribution contains an array which has to be mapped to the defined zones revision. Each zone row contains another array with 3 entries representing the time spent in the intensityType of 0=low,1=medium,2=high.

Hint: Reducing the zone rows results in the "Intensity Distribution" instead.

Key abbrevations in the zones object are: c = Cadence p = Power pa = Pace h = Heart rate

Parameters (0 required, 3 optional)
Optional
endDatestring

endDate (date ISO format string with Zulu) sets the newest date of the entry in the zones ditribution list. Use in combination with 'startDate' to define a specific date range of zones distribution entries. If no 'endDate' is given, the list starts with the newest entry available.

sportTypestring

If given, the list only shows the zones distributions for the given main sportType of either 'running', 'cycling', 'swimming' or 'misc'. Default is to show all sports.

startDatestring

startDate (date ISO format string with Zulu) sets the start date of the zones distribution list. The list starts with the oldest zones distribution entries, traversing in date forward to newer entries. If no 'startDate' is given, the list goes one year back.