Health & fitness
Trainerize
Clients, programs, check-ins and messages for your Trainerize business.
14 endpoints
Your AI agent onboards clients with a group, program and PAR-Q, reads weekly check-ins and spots who has gone quiet. Sign in to PT Distinction once in your own Cloud Browser. No API, no zaps.
8 tools Read and write
PT Distinction has no MCP server, no ChatGPT or Claude app and no public API. Its only connection is a Zapier app that adds clients, packages and groups (checked 9 Nov 2026). Cotlet runs 8 PT Distinction tools hosted, over MCP for agents and REST for scripts, in your own trainer login.
| What you need | PT Distinction API | Zapier app | Cotlet |
|---|---|---|---|
| Add clients and groups | No API | Yes | Yes, after your OK |
| Assign programs and forms | No API | No | Yes, after your OK |
| Read check-ins and progress | No API | No | Yes |
| Ask in ChatGPT or Claude | No | No | Yes |
| Setup | None possible | Zaps to build | Sign in once |
Checked 8 Nov 2026. Sources: PT Distinction on Zapier · PT Distinction features · PT Distinction: 10-step guide for beginners
Once, in a browser we host for you.
One address in its settings.
It drafts the work, you OK what customers get.
We never keep your PT Distinction password, and nothing a client sees in their app changes until you approve it. Who can see your session
Sign in to PT Distinction in a Cloud Browser. Create a Cotlet account, open PT Distinction in its Cloud Browser, sign in with your trainer login and press Enable for agents.
Add the Cotlet address. Enter https://cotlet.dev/mcp/v1 as the MCP server or connector URL in your agent.
Let the agent in. Chat apps open a Cotlet sign-in page. Editors, n8n and scripts send an API key made in the console.
PT Distinction shares the address https://cotlet.dev/mcp/v1 with every other app you enable, so one connector covers them all. Turned PT Distinction on after connecting? Refresh the connector and the 8 tools appear.
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect
Claude Code:
claude mcp add --transport http cotlet \
https://cotlet.dev/mcp/v1 \
--header "Authorization: Bearer $COTLET_API_KEY" Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth // ~/.cursor/mcp.json
{
"mcpServers": {
"cotlet": {
"url": "https://cotlet.dev/mcp/v1",
"headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
}
}
} # ~/.codex/config.toml
[mcp_servers.cotlet]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY" MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: pt_distinction_read Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: pt_distinction_write Search matches name and email. Adding a client or a group sends what they see, so it waits for your OK.
Returns clients with ID, groups, package, current program and the last day they logged anything.
MCP callpt_distinction_read → list_clients
REST endpointGET https://cotlet.dev/api/v1/pt-distinction/clients
| Name | Type | Description |
|---|---|---|
| query string | string | Name or email. |
| group string | string | Only this group. |
| inactive_days integer | integer | Only clients with nothing logged in this many days. |
| page integer | integer | Page number. Default: 1. |
{
"clients": [
{
"client_id": "C-50211",
"name": "Emma Whitfield",
"groups": [
"12-week transformation"
],
"program": "Strength phase 2",
"last_activity": "2026-11-07"
}
],
"page": 1
} Returns the client: program and this week's schedule, completed workouts, latest weight and habits, and forms still waiting.
MCP callpt_distinction_read → get_client
REST endpointGET https://cotlet.dev/api/v1/pt-distinction/clients/{client_id}
| Name | Type | Description |
|---|---|---|
| client_id string required | string | Client ID from list_clients. |
{
"client_id": "client_8c41d2"
} {
"client_id": "C-50211",
"name": "Emma Whitfield",
"program": "Strength phase 2",
"done_this_week": 2,
"planned_this_week": 4,
"latest_weight_kg": 66.8,
"forms_pending": [
"Weekly check-in"
]
} Creates the client the way Clients > Add Client does; PT Distinction emails their app login. By default you confirm each call; you can switch that off for this tool.
MCP callpt_distinction_write → add_client
REST endpointPOST https://cotlet.dev/api/v1/pt-distinction/clients
| Name | Type | Description |
|---|---|---|
| first_name string required | string | First name. |
| last_name string required | string | Last name. |
| email string required | string | Email for the welcome message. |
| group string | string | Group to add them to. |
{
"first_name": "first name",
"last_name": "last name",
"email": "jane@example.com"
} {
"client_id": "C-50388",
"name": "Jack Hargreaves",
"status": "Invited"
} Adds the client to the group, so the group's schedule and messages reach them in their app. By default you confirm each call; you can switch that off for this tool.
MCP callpt_distinction_write → add_to_group
REST endpointPOST https://cotlet.dev/api/v1/pt-distinction/clients/{client_id}/groups
| Name | Type | Description |
|---|---|---|
| client_id string required | string | Client ID from list_clients. |
| group string required | string | Group name. |
{
"client_id": "client_8c41d2",
"group": "group"
} {
"client_id": "C-50388",
"group": "12-week transformation",
"status": "Added"
} Library items by exact name. Assigning a program or form waits for your OK; reading answers runs at once.
Returns library items by type and name, so the agent assigns the exact one.
MCP callpt_distinction_read → list_library
REST endpointGET https://cotlet.dev/api/v1/pt-distinction/libraries
| Name | Type | Description |
|---|---|---|
| type string | string | Program, Form, Habit. |
| query string | string | Name contains. |
{
"items": [
{
"type": "Program",
"name": "Fat loss 8 weeks"
},
{
"type": "Form",
"name": "PAR-Q"
}
]
} Adds the program to the client's schedule; they see it in their app. By default you confirm each call; you can switch that off for this tool.
MCP callpt_distinction_write → assign_program
REST endpointPOST https://cotlet.dev/api/v1/pt-distinction/clients/{client_id}/program/assign
| Name | Type | Description |
|---|---|---|
| client_id string required | string | Client ID from list_clients. |
| program string required | string | Program name from the library. |
| start string required | string | ISO start date. |
{
"client_id": "C-50388",
"program": "Fat loss 8 weeks",
"start": "2026-11-16"
} {
"client_id": "C-50388",
"program": "Fat loss 8 weeks",
"start": "2026-11-16"
} Puts the form, for example a PAR-Q or weekly check-in, in the client's app to fill in. By default you confirm each call; you can switch that off for this tool.
MCP callpt_distinction_write → send_form
REST endpointPOST https://cotlet.dev/api/v1/pt-distinction/clients/{client_id}/forms
| Name | Type | Description |
|---|---|---|
| client_id string required | string | Client ID from list_clients. |
| form string required | string | Form name from the library. |
{
"client_id": "client_8c41d2",
"form": "form"
} {
"client_id": "C-50388",
"form": "PAR-Q",
"status": "Sent"
} Returns the latest answers to the form, question by question.
MCP callpt_distinction_read → get_form_answers
REST endpointGET https://cotlet.dev/api/v1/pt-distinction/clients/{client_id}/form-answers
| Name | Type | Description |
|---|---|---|
| client_id string required | string | Client ID from list_clients. |
| form string required | string | Form name. |
{
"client_id": "client_8c41d2",
"form": "form"
} {
"client_id": "C-50211",
"form": "Weekly check-in",
"submitted": "2026-11-08",
"answers": [
{
"q": "Energy 1-10",
"a": "7"
},
{
"q": "Sleep hours",
"a": "6.5"
}
]
} Your signed-in PT Distinction profile, AES-256-GCM encrypted, in Finland. No password.
The 8 PT Distinction tools, never the session cookie.
What your trainer login sees: clients, groups, library, schedules, forms.
Payments and packages pricing, your mini-site, messages, deletes.
You sign in again yourself, in the same Cloud Browser.
Disable for agents, reset the browser, or change your PT Distinction password.
Cotlet never types your password: you sign in yourself, and the agent only uses the session. Our site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results).
When PT Distinction moves a button in the client view or renames a library tab, we fix the tool and your agent calls it the same way. status.cotlet.dev checks the site, console and API every 3 minutes.
| Action | Undo |
|---|---|
| Add a client | Yes, archive them; the welcome email stays sent |
| Add to a group, assign a program or form | Yes, remove it from the client |
4 of 8 tools ask first: add_client, add_to_group, assign_program, send_form. You can turn the wait off per tool once you trust a routine.
{
"name": "assign_program",
"arguments": {
"client_id": "C-50388",
"program": "Fat loss 8 weeks",
"start": "2026-11-16"
}
} curl -X POST https://cotlet.dev/api/v1/pt-distinction/clients/C-50388/program/assign \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"program":"Fat loss 8 weeks","start":"2026-11-16"}' {
"client_id": "C-50388",
"program": "Fat loss 8 weeks",
"start": "2026-11-16"
} A cron job or n8n flow can call the same tools over REST at /api/v1/pt-distinction with the same key and price, in JSON. Failed calls are free. Each tool row above shows its REST path.
About $18 a monthfor an online coach with about 40 clients, 3,060 credits. Your PT Distinction plan stays as it is.
| Job | Calls | Credits |
|---|---|---|
| New client onboarded | 4 × 6 | 240 |
| Weekly check-ins read | 20 × 4 | 800 |
| Quiet clients, weekly | 8 × 4 | 320 |
| Next phase assigned | 2 × 10 | 200 |
| Cloud Browser, 30 days | 1,500 | |
| Total | 3,060 |
PT Distinction publishes no usage counts, so the month is our example. Dollars at the $29 pack rate.
| Credits | Price, one time | Calls at 10 credits | Per 1,000 credits |
|---|---|---|---|
| 5,000 | $29 | 500 | $5.80 |
| 15,000 | $79 | 1,500 | $5.27 |
| 32,000 | $149 | 3,200 | $4.66 |
| 60,000 | $249 | 6,000 | $4.15 |
Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.
| Option | What it does | Where it stops |
|---|---|---|
| Zapier app | New clients and package sign-ups between PT Distinction and your other tools. | No programs, forms or questions in plain words. |
| PT Distinction automations | Welcome packs and scheduled content inside PT Distinction. | Fixed steps you set up in advance. |
| By hand | Every screen of the trainer portal, one client at a time. | Your time between sessions. |
If you only need sales from your checkout to create clients, the Zapier app does that. To onboard, assign and read check-ins from ChatGPT or Claude this week, Cotlet works in the PT Distinction account you already have.
Take Group sp. z o.o. runs Cotlet. It is a software company registered in Poland, EU (VAT PL6342984273), in business since 2019, led by its founders Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the PT Distinction tools go to contact@cotlet.dev.
Sign up free at https://cotlet.dev, open PT Distinction under Integrations in the console and sign in to PT Distinction in its Cloud Browser. The trial starts with your first app and asks for no card.
Sign up at cotlet.dev, log in to PT Distinction once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your PT Distinction account through Cotlet, in their phone apps too.
With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in PT Distinction: onboard a new client; read weekly check-ins; spot clients going quiet. You ask in plain words, and anything that reaches other people waits for your OK first.
No. PT Distinction has no ChatGPT or Claude connector of its own and PT Distinction has no official MCP server (checked 9 Nov 2026). Cotlet is an independent one that works in ChatGPT, Claude, Cursor and any MCP client, on your signed-in account.
Yes, with Cotlet. ChatGPT adds the client, puts them in a group and assigns their program and PAR-Q, after your OK. PT Distinction sends its usual welcome email.
Yes, with Cotlet. ChatGPT reads your clients' form answers and sums up the week, for example who slept badly or reported low energy.
Yes, with Cotlet. ChatGPT copies a program from your library to the client from the start date you give, after your OK.
No. Clients keep using their PT Distinction app. Cotlet works in your trainer portal, so programs and forms it assigns show up in their app as usual.
Only in how it is called. Both carry the same 8 tools, inputs, answers, API key and price. Agents use MCP; scripts and HTTP steps use REST.
No. Cotlet is independent and not affiliated with PT Distinction.
Free 7-day trial with 2,000 credits, no card needed.
May we use Google Analytics to see which pages help people? It sets cookies only if you accept. No ads, and we never sell data. Cookie policy