← Back to API docs
TrainerDay ChatGPT by OpenAI

Connect TrainerDay to ChatGPT

Manage your training calendar and view your athlete data directly in ChatGPT.

Before you start: Do this on chatgpt.com in a browser, not in the mobile app. A free account works. Takes about two minutes. On a Business or Enterprise workspace, an admin may need to allow custom plugins first.

Setup

OpenAI changed this flow in October 2026. These are the current steps — the old ones are at the bottom of the page if your ChatGPT still looks like that.

1

Log in to TrainerDay first

Sign in at trainerday.com in the browser you normally use. ChatGPT sends you back here to approve access, and being logged in already makes that one click instead of a detour.
2

Open Settings → Plugins

On chatgpt.com, open Settings and click Plugins, near the bottom of the left column under Integrations. Then click Browse directory in the top right.
ChatGPT settings with Plugins selected and Browse directory in the top right
3

Add → Add custom MCP server

In the directory, click the Add button in the top right and choose Add custom MCP server.
Plugin directory Add menu with Add custom MCP server highlighted
4

Fill in the dialog and create

Four things matter:
Name
TrainerDay
Connection
Server URL (not Tunnel)
URL
https://api.trainerday.com/mcp
Authentication
OAuth

Icon and description are optional — leave them empty. Skip Advanced OAuth settings; ChatGPT discovers everything on its own, so you do not need a client ID or secret.

Tick I understand and want to continue, then click Create as a plugin.

Add custom MCP server dialog filled in with TrainerDay and the API URL
5

Approve access

ChatGPT sends you to TrainerDay to approve access to your calendar and athlete data — either right after you create it, or the first time you use TrainerDay in a chat. Choose the permissions you want and click Allow.
6

Ask it something in a new chat

Start a new chat — a chat you opened before adding the plugin will not see it. Try "In TrainerDay, what is my CTL?", "What’s on my training calendar this week?" or "Add a 1-hour endurance ride to next Monday."

If ChatGPT does not reach for it on its own, click + in the message box and pick TrainerDay.

ChatGPT answering a question about CTL using TrainerDay data
🎥 Setup video coming soon

If something goes wrong

TrainerDay is not in the + menu

Start a new chat first — it only shows up in chats opened after you added it. If it is still missing, go to Settings → Plugins, open the … next to TrainerDay and choose Manage plugin. If there is a Refresh schema option there, click it.

ChatGPT says it cannot see your data

You are probably in an older chat. Open a new one and switch TrainerDay on with the + button.

The approval page keeps sending you in circles

Log in at trainerday.com in the same browser first, then add the plugin again.

There is no Plugins item in Settings

Your ChatGPT is still on the older flow. Turn on Developer mode under Settings → Security and login, then follow the old instructions at the bottom of this page. On a Business or Enterprise workspace an admin may have to allow custom plugins first.

Still stuck

Email hello@trainerday.com and tell us which step you are on.

What You Can Do

Once connected, ChatGPT can read and manage your TrainerDay data:

🚴 View your athlete profile and FTP
📅 Read your training calendar
➕ Add workouts to your calendar
✎ Update or reschedule events
🗑 Remove calendar events
📈 View training load (CTL, ATL, TSB, FitScore)
📊 Analyze training history and trends
⚡ One-call training summary (hours, FTP history, planned workouts)
Old instructions (before October 2026) If your ChatGPT still has Developer mode and a Plugins item in the sidebar, use these. Show

These steps no longer match the current ChatGPT. Kept here only for accounts that have not been updated yet.

  1. Log in to TrainerDay first at trainerday.com, in the browser you normally use.
  2. Turn on developer mode. On chatgpt.com open Settings → Security and login, find Developer mode and switch it on. ChatGPT marks this elevated risk because it lets you add servers OpenAI has not reviewed — that warning is about unknown servers in general, not TrainerDay. Leave Enforce CSP in developer mode alone.
  3. Open Plugins and click +. Click Plugins in the left sidebar, then the + to the right of the search box. The New Plugin dialog opens.
  4. Fill in the New Plugin dialog. Name TrainerDay, description empty, Connection Server URL, URL https://api.trainerday.com/mcp, Authentication OAuth. Skip Advanced OAuth settings.
  5. Accept the warning and click Create. Tick I understand and want to continue, then Create.
  6. Refresh the schema. Back on the Plugins page, click the … next to TrainerDay, choose Manage plugin, and click Refresh schema. This is the step everyone missed — ChatGPT often would not load the tools without it.
  7. Approve access when ChatGPT sends you to TrainerDay, and click Allow.
  8. Switch TrainerDay on in a new chat with the + button in the message box. You do this in each new chat.