Skip to main content
Glama

Sleep and workout sessions

sessions

Sleep nights or workouts within an inclusive date range. Workout activity accepts run/bike/swim (or running/cycling/swimming). granularity=week groups workouts by Monday date and modality, summing duration, distance and estimated HR-zone seconds. Boundary weeks cover only the requested dates. Distance and zone coverage counts distinguish missing data from zero; max_hr uses the same definition as workout_detail. Filters and weekly grouping require kind=workout. Timestamps carry the local UTC offset.

Input Schema

NameRequiredDescriptionDefault
toYes
fromYes
kindYes
max_hrNoPersonal maximum HR in bpm; otherwise uses observed workout maximum, an estimate
activityNo
granularityNo

Output Schema

NameRequiredDescriptionDefault
rowsYes
truncatedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Without strong annotation help (readOnlyHint=false and destructiveHint=false tell the agent little about a retrieval-shaped tool), the description carries real weight: inclusive boundaries, boundary weeks covering only requested dates, coverage counts distinguishing missing data from zero, and local UTC offsets on timestamps. It does not describe pagination, result ordering, or what the response envelope looks like, but the output schema covers returns.

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 scope, then constraint-by-constraint detail in five tight sentences with no filler. Some sentences are telegraphic to the point of ambiguity ('Distance and zone coverage counts distinguish missing data from zero' requires unpacking), but nothing is redundant.

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 explanation, and the description instead covers the non-obvious semantics an agent would otherwise get wrong: inclusive range, week grouping boundaries, missing-vs-zero coverage, and timezone handling. For a 6-parameter read tool this is sufficient to call it correctly.

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 only 17% (only max_hr is documented), so the description must compensate, and it largely does: it resolves the activity enum aliases (run/bike/swim or running/cycling/swimming), explains that granularity=week groups by Monday date and modality while summing duration, distance and HR-zone seconds, and states that activity/granularity only apply with kind=workout. Gaps remain on the default granularity and on what happens if activity is passed with kind=sleep.

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 resource and scope: 'Sleep nights or workouts within an inclusive date range', and names kind=workout as the mode that enables filters and weekly grouping. That distinguishes it from workout_detail and query_daily well enough, though the differentiation is indirect (via 'max_hr uses the same definition as workout_detail') rather than explicit.

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

Usage Guidelines3/5

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

It gives one hard routing rule: 'Filters and weekly grouping require kind=workout', which tells the agent when activity/granularity/max_hr are valid. It never says when to pick this over query_daily or workout_detail, and gives no guidance on when kind=sleep is preferable to another daily tool.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources