@trainheroic-unofficial/athlete-mcp 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # @trainheroic-unofficial/athlete-mcp
2
2
 
3
- Local single-user [MCP](https://modelcontextprotocol.io) server for a TrainHeroic **athlete** it exposes one [TrainHeroic](https://www.trainheroic.com) athlete's own training to an AI assistant (Claude Code, Claude Desktop, or any MCP client) as callable tools. It runs on your machine and speaks the MCP stdio transport, so the assistant launches it as a subprocess.
3
+ Local single-user [MCP](https://modelcontextprotocol.io) server for a TrainHeroic **athlete**, exposing one [TrainHeroic](https://www.trainheroic.com) athlete's own training to any MCP-capable AI assistant as callable tools. It runs on your machine and speaks the MCP stdio transport, so the assistant launches it as a subprocess.
4
4
 
5
- It reads two required environment variables, `TRAINHEROIC_EMAIL` and `TRAINHEROIC_PASSWORD` your existing TrainHeroic login. These are your real credentials in plaintext; the config below puts them in a file or shell history, so treat them as secrets.
5
+ It reads two required environment variables, `TRAINHEROIC_EMAIL` and `TRAINHEROIC_PASSWORD` (your existing TrainHeroic login). These are real credentials in plaintext; the config below puts them in a file or shell history, so treat them as secrets.
6
6
 
7
- It exposes the logged-in athlete's own training scheduled and completed workouts, per-exercise history, PRs (personal records), working maxes, and lifetime totals plus one confirmation-gated write that logs a completed set. For coaching (rosters, teams, programs, messaging), use [`@trainheroic-unofficial/coach-mcp`](../coach-mcp). For a hosted version that holds credentials server-side behind OAuth and gives a coach login both the athlete and coaching tools, see the [root README](../../README.md).
7
+ It exposes the logged-in athlete's own training: scheduled and completed workouts, per-exercise history, PRs (personal records), working maxes, and lifetime totals, plus one confirmation-gated write that logs a completed set. Coaching capabilities (rosters, teams, programs, messaging) are available through [`@trainheroic-unofficial/coach-mcp`](../coach-mcp). A hosted version that holds credentials server-side behind OAuth and gives a coach login both the athlete and coaching tools is described in the [root README](../../README.md).
8
8
 
9
9
  ---
10
10
 
@@ -23,7 +23,7 @@ claude mcp add trainheroic-athlete \
23
23
 
24
24
  ### Claude Desktop / `.mcp.json` / other stdio clients
25
25
 
26
- Put this in your client's MCP config for Claude Desktop that's `claude_desktop_config.json`
26
+ Put this in your client's MCP config. For Claude Desktop that's `claude_desktop_config.json`
27
27
  (macOS: `~/Library/Application Support/Claude/`; Windows: `%APPDATA%\Claude\`); for a
28
28
  project-scoped Claude Code setup it's `.mcp.json` at the repo root.
29
29
 
@@ -51,20 +51,20 @@ A coach account works here too: a TrainHeroic coach account also has its own ath
51
51
  All read-only except `athlete_log_set`. The assistant fills in each tool's parameters (dates
52
52
  are `YYYY-MM-DD`); your MCP client shows the full schema for each.
53
53
 
54
- - `athlete_whoami` identity (id, name, roles)
55
- - `athlete_profile` lifetime totals + profile
56
- - `athlete_prefs` notification/display preferences
57
- - `athlete_workouts` scheduled + completed workouts in a date range, flattened into one list
58
- - `athlete_exercises` search the exercises you've logged
59
- - `athlete_exercise_history` per-exercise PRs + dated session history
60
- - `athlete_personal_records` exercise personal records
61
- - `athlete_exercise_stats` last performance + PR as of a date
62
- - `athlete_working_maxes` working max per exercise
63
- - `athlete_leaderboard` benchmark/test workout leaderboard
54
+ - `athlete_whoami`: identity (id, name, roles)
55
+ - `athlete_profile`: lifetime totals + profile
56
+ - `athlete_prefs`: notification/display preferences
57
+ - `athlete_workouts`: scheduled + completed workouts in a date range, flattened into one list
58
+ - `athlete_exercises`: search the exercises you've logged
59
+ - `athlete_exercise_history`: per-exercise PRs + dated session history
60
+ - `athlete_personal_records`: exercise personal records
61
+ - `athlete_exercise_stats`: last performance + PR as of a date
62
+ - `athlete_working_maxes`: working max per exercise
63
+ - `athlete_leaderboard`: benchmark/test workout leaderboard
64
64
 
65
65
  **Write (confirmation-gated):**
66
66
 
67
- - `athlete_log_set` logs completed set results to your training log. This is a real write
67
+ - `athlete_log_set`: logs completed set results to your training log. This is a real write
68
68
  that your coach can see. It confirms before running: the server asks the client to confirm,
69
69
  falling back to an explicit `confirm: true` argument when the client can't prompt.
70
70
 
package/dist/server.mjs CHANGED
@@ -1521,7 +1521,7 @@ function registerAthleteTrainingTools(server, ctx) {
1521
1521
  }
1522
1522
  //#endregion
1523
1523
  //#region package.json
1524
- var version = "1.1.0";
1524
+ var version = "1.1.1";
1525
1525
  //#endregion
1526
1526
  //#region src/server.ts
1527
1527
  async function main() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trainheroic-unofficial/athlete-mcp",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -21,8 +21,8 @@
21
21
  "dependencies": {
22
22
  "@modelcontextprotocol/sdk": "^1.29.0",
23
23
  "zod": "^4.4.3",
24
- "@trainheroic-unofficial/core": "1.1.0",
25
- "@trainheroic-unofficial/js": "1.1.0"
24
+ "@trainheroic-unofficial/core": "1.1.1",
25
+ "@trainheroic-unofficial/js": "1.1.1"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/node": "^26.0.0",