intervals-icu-mcp-server 0.1.1 → 0.1.2
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/dist/client.d.ts +1 -0
- package/dist/index.js +5 -1
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -126,6 +126,7 @@ const TOOLS = [
|
|
|
126
126
|
race: { type: "boolean", description: "Mark as a race event (default: false)" },
|
|
127
127
|
distance: { type: "number", description: "Distance in meters (e.g. 100000 for 100km)" },
|
|
128
128
|
sub_type: { type: "string", description: "Race category/sub-type (e.g. A, B, C)" },
|
|
129
|
+
workout_doc: { type: "object", description: "Structured workout definition (Intervals.icu workout_doc format) to attach steps/intervals to this event" },
|
|
129
130
|
athlete_id: { type: "string", description: "Athlete ID (defaults to ATHLETE_ID env var)" },
|
|
130
131
|
api_key: { type: "string", description: "API key (defaults to API_KEY env var)" },
|
|
131
132
|
},
|
|
@@ -147,6 +148,7 @@ const TOOLS = [
|
|
|
147
148
|
race: { type: "boolean", description: "Toggle race flag" },
|
|
148
149
|
distance: { type: "number", description: "Distance in meters (e.g. 100000 for 100km)" },
|
|
149
150
|
sub_type: { type: "string", description: "Race category/sub-type (e.g. A, B, C)" },
|
|
151
|
+
workout_doc: { type: "object", description: "New structured workout definition (Intervals.icu workout_doc format)" },
|
|
150
152
|
athlete_id: { type: "string", description: "Athlete ID (defaults to ATHLETE_ID env var)" },
|
|
151
153
|
api_key: { type: "string", description: "API key (defaults to API_KEY env var)" },
|
|
152
154
|
},
|
|
@@ -344,6 +346,7 @@ const TOOLS = [
|
|
|
344
346
|
category: { type: "string" },
|
|
345
347
|
type: { type: "string" },
|
|
346
348
|
race: { type: "boolean" },
|
|
349
|
+
workout_doc: { type: "object", description: "Structured workout definition (Intervals.icu workout_doc format)" },
|
|
347
350
|
},
|
|
348
351
|
},
|
|
349
352
|
},
|
|
@@ -513,6 +516,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
513
516
|
race: args["race"],
|
|
514
517
|
distance: args["distance"],
|
|
515
518
|
sub_type: args["sub_type"],
|
|
519
|
+
workout_doc: args["workout_doc"],
|
|
516
520
|
});
|
|
517
521
|
return { content: [{ type: "text", text: `Created event:\n\n${formatEvent(event)}` }] };
|
|
518
522
|
}
|
|
@@ -520,7 +524,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
520
524
|
const eventId = z.string().parse(args["event_id"]);
|
|
521
525
|
const config = getConfig(args);
|
|
522
526
|
const input = {};
|
|
523
|
-
for (const key of ["name", "description", "start_date_local", "category", "type", "race", "distance", "sub_type"]) {
|
|
527
|
+
for (const key of ["name", "description", "start_date_local", "category", "type", "race", "distance", "sub_type", "workout_doc"]) {
|
|
524
528
|
if (args[key] !== undefined)
|
|
525
529
|
input[key] = args[key];
|
|
526
530
|
}
|