Skip to main content
Glama

get_activity_workouts

Read-only

Retrieve the workouts performed during a specific Garmin activity, including each device-run step, by activity ID. Returns an empty list when the activity has no workouts.

Instructions

The workouts done during an activity, with the steps the device ran. GETs /activity-service/activity/{id}/workouts: the workouts done during the activity, {index, workoutName, timeCreated, sport, manufacturer, multisportSet, steps, workoutPhrase} with the steps the device ran (PersonalApi.ActivityWorkoutDTO, matched key for key, steps included). [] for an activity done without one.

Input Schema

NameRequiredDescriptionDefault
activityIdYesNumeric id

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.10.0

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover safety (readOnlyHint) and open-world reach, so the bar is lower. The description still adds real behavior: it discloses the underlying GET path and, importantly, that an activity done without a workout returns `[]` rather than erroring. It does not cover failure modes for a bad/unknown activityId.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core meaning, but it is noticeably repetitive: 'the workouts done during an activity' and 'with the steps the device ran' each appear twice, plus an internal DTO name and 'matched key for key, steps included' which restates earlier text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read with annotations and no output schema, listing the returned field set and the empty-array case makes it largely self-sufficient. Missing only error behavior and any note on whether steps can be nested/large.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single parameter is already documented as 'Numeric id', so the schema carries the load. The description only echoes the id as `{id}` in the path template and adds no format, range, or accepted-string nuance beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: returns the workouts performed during one activity, including the device-executed steps. That is clearly distinct from library tools like get_workouts and from get_activity_details. It never names a sibling explicitly, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance and no named alternative. The reader must infer from the id-based schema that this is the per-activity drill-down versus get_activity_details or get_activity_exercise_sets.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools