Skip to main content
Glama

get_workout

Read-only

Retrieve a workout's exact steps—distance, time, and targets—by ID to answer questions about pace, recoveries, warm-up, and cool-down accurately.

Instructions

The steps of one workout, saved or scheduled: each step with its distance or time and target.

Use it for any question about what a session involves ("what's the pace for Wednesday's workout", "how long is the cool-down", "what are the recoveries"), with the workout_id from get_plan's sessions or from list_workouts. Never guess a workout's paces, recoveries or warm-up from other sessions: read them here. Repeats keep their structure, e.g. 8 x [1 km at a target, 60 s recovery].

Args: workout_id: The workout's id, from get_plan or list_workouts.

Input Schema

NameRequiredDescriptionDefault
workout_idYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.1

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already mark this readOnly, non-destructive, closed-world, so the safety bar is met; the description goes further by disclosing the response shape an agent would otherwise have to discover: each step's distance-or-time and target, that repeats keep their nested structure (8 x [1 km at target, 60 s recovery]), and that warm-up/cool-down are part of the answer. That is meaningful behavioral context beyond the structured fields.

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

Conciseness4/5

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

Front-loaded with the core statement, then usage, then the repeat-structure detail, then Args. Slightly long for one parameter, and the three quoted example queries overlap somewhat, but every sentence still carries routing or output-structure information rather than filler.

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

Completeness5/5

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

An output schema exists, so return values need no full prose, yet the description still gives the one structural fact worth knowing (repeats nest). Combined with id provenance, the never-guess warning and the clear read-only framing, nothing an agent needs to call this correctly is missing.

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

Parameters4/5

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

Schema coverage is 0% and the single property has no description, so the description must compensate; it does by stating the id comes from get_plan or list_workouts rather than being guessed, and repeats this in the Args block. It stops short of saying the id is an integer or what happens on an invalid id, so it earns a 4 rather than a 5.

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

Purpose5/5

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

Opens with a specific verb+resource ('The steps of one workout, saved or scheduled') and states the scope precisely: each step with distance/time and target. This clearly separates it from get_plan (plan-level sessions) and list_workouts (enumeration), even though the description never has to name them as competitors explicitly, the wording does the differentiation.

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

Usage Guidelines5/5

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

Explicitly says 'Use it for any question about what a session involves' and gives three paraphrased example queries that map to real user phrasing. It also names exactly where the workout_id comes from ('from get_plan's sessions or from list_workouts') and issues a clear exclusion: never guess paces, recoveries or warm-up from other sessions.

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