Tally Workout
iPhone strength log. Any MCP agent reads your training and plans workouts in the Tally app.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
claude mcp add --transport http tally-workout 'https://mcp.tallyworkout.app/api/mcp' --header 'Authorization: <Optional. OAuth 2.1 is the default. For clients without OAuth: Bearer <API key from Tally → Settings → API keys>.>'
{
"mcpServers": {
"tally-workout": {
"type": "http",
"url": "https://mcp.tallyworkout.app/api/mcp",
"headers": {
"Authorization": "<Optional. OAuth 2.1 is the default. For clients without OAuth: Bearer <API key from Tally → Settings → API keys>.>"
}
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Tally Workout MCP server
Docs for the remote Model Context Protocol server of Tally Workout, a free iPhone strength log. Your AI agent reads your training history and plans workouts in the Tally app. You log every set at the gym. Next week, the agent plans from what you actually lifted. When you ask, the agent can also log, change or delete a finished workout, and you can undo each change for 7 days.
It works with Claude, Claude Code, Codex, ChatGPT, Muse, Hark, Perplexity, Dots and any MCP client that supports OAuth 2.1 or a bearer token.
This repo holds the public docs. The server is first-party and closed source. It runs as part of the Tally backend.
Endpoint
https://mcp.tallyworkout.app/api/mcp
- Transport: Streamable HTTP. No SSE-only mode.
- Auth, option 1: OAuth 2.1, authorization code + PKCE (S256), public client, dynamic
client registration (RFC 7591). Scope:
workouts. - Auth, option 2: an API key, for clients without OAuth. Create it in the Tally app
under Settings → API keys. Send it as
Authorization: Bearer tally_ct_…. A key is Read only, Read and plan, or Full access. Only a Full access key or an OAuth connection can change finished workouts. Keys do not expire. Revoke a key in the app. - Discovery:
/.well-known/mcp-server, agent brief (llms.txt).
Setup by agent
You need the Tally iPhone app and a Tally account. Each link has the full steps.
| Agent | Auth | Steps |
|---|---|---|
| Claude (web, desktop, phone) | OAuth | Add Tally Workout from Claude's directory. Steps |
| Claude Code | OAuth or API key | claude mcp add --scope user --transport http tally https://mcp.tallyworkout.app/api/mcp, then /mcp. Steps |
| Codex | API key | Three lines in ~/.codex/config.toml. Steps |
| ChatGPT | OAuth | Developer mode. Pro reads only. Business, Enterprise and Edu can plan. Steps |
| Muse | OAuth | Client ID tally-muse. Steps |
| Hark | API key | Steps |
| Perplexity | API key | Steps |
| Dots | API key | Not tested yet. Steps |
| Any MCP client | OAuth or API key | Steps |
Tools
21 tools: 10 read, 11 write.
| Tool | Type | What it does |
|---|---|---|
get_training_context | read | Returns planned days from today, the weight unit and, with historyWeeks, recent workouts. |
get_workout_history | read | Returns logged workouts, newest first, set by set. Each workout has a stable id. |
get_workout | read | Returns one logged workout by its id, set by set. |
get_exercise_progress | read | Returns progress for up to 10 exercises over the last 365 days, with top sets and estimated 1RM. |
get_planned_workout | read | Returns one planned day in full, with its version. |
search_exercises | read | Matches exercise names to the user's recent exercises and the Tally library. |
get_exercise | read | Returns one exercise by its id: muscles, equipment and instructions, or the user's custom exercise. |
get_training_summary | read | Returns weekly totals for up to 12 weeks: workouts, sets, volume, time, volume by muscle, and missed or skipped plans. |
get_saved_workouts | read | Returns the user's saved and favorite workout templates. |
get_workout_versions | read | Lists the restorable versions of one finished workout, also a deleted one. |
plan_workout_day | write | Creates or replaces one planned day. |
plan_workout_range | write | Creates or replaces up to 31 planned days in one call. |
update_planned_workout | write | Changes part of one planned day: add, remove or change exercises. |
move_planned_workout | write | Moves a planned day to an empty date. |
skip_planned_workout | write | Marks a planned day as skipped, or restores it. Only the status changes. |
delete_planned_workout | write | Removes a planned day and returns it, so you can undo. |
log_workout | write | Logs a finished workout to the user's history. Full access. |
update_workout | write | Changes one finished workout at its current version: fields, exercises or sets. Full access. |
delete_workout | write | Deletes one finished workout at its current version. Full access. |
restore_workout | write | Makes an earlier version of a finished workout current again, within 7 days, also after a delete. Full access. |
send_feedback | write | Sends a message from the user to the Tally team. Limit: 5 messages a day. |
Rules
- Finished workouts change only when the user asks.
log_workout,update_workout,delete_workoutandrestore_workoutneed a Full access key or an OAuth connection.update_workoutanddelete_workoutneed the workout'sversionfromget_workoutasexpectedVersion. Each change keeps the earlier content for 7 days:get_workout_versionslists it andrestore_workoutbrings it back. All exceptrestore_workoutneed a phone on the current Tally app. - Some days are protected. A day the user built in the app, or edited, is protected. The plan, update, move and delete tools skip it unless the user asks for an override.
- Edits check the version. If a day or a finished workout changed after the agent read it, nothing is written and the result reports a conflict.
- Each user sees only their own data. OAuth tokens and API keys are scoped to one account. The user can revoke them at any time.
Links
- Site: https://tallyworkout.app
- Builder reference: https://tallyworkout.app/connect/mcp
- Guides: https://tallyworkout.app/guides (for example, plan your workouts with Claude)
- App Store: https://apps.apple.com/app/id6758911546
- Support: support@tallyworkout.app
Questions fréquentes
Qu'est-ce que Tally Workout ?
iPhone strength log. Any MCP agent reads your training and plans workouts in the Tally app.
Comment installer Tally Workout ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http tally-workout 'https://mcp.tallyworkout.app/api/mcp' --header 'Authorization: <Optional. OAuth 2.1 is the default. For clients without OAuth: Bearer <API key from Tally → Settings → API keys>.>'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour Tally Workout ?
Oui. Il attend Authorization, à renseigner dans sa configuration.
Tally Workout est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient Tally Workout ?
Il est publié par westvegh. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.