Skip to main content
Glama

garmin_activities

Read-onlyIdempotent

List Garmin workouts in a date range, newest first, with pace, heart rate, training load, and VO2max. Filter by activity type, name, or limit results to 100.

Instructions

List workouts in a date range, newest first: type, duration, distance, pace or speed, heart rate, time in HR zones, training load, training effect, VO2max, Body Battery impact, sets/reps. Default last 30 days, up to 100 items.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "garmin_activities"
  }
}

Input Schema

NameRequiredDescriptionDefault
daysNoNumber of days ending at end_date, used when start_date is omitted.
limitNoMaximum activities to return, 1-100. Default 20.
searchNoText to match in activity names.
end_dateNoLast day, YYYY-MM-DD. Default: today.
start_dateNoFirst day, YYYY-MM-DD in the user's local calendar. Default: computed from end_date and days.
activity_typeNoGarmin parent type key, e.g. running, cycling, swimming, fitness_equipment, walking, hiking.

Output Schema

NameRequiredDescriptionDefault
toYes
fromYes
countYes
truncatedNo
activitiesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover safety (readOnlyHint, idempotentHint, openWorldHint), so the bar is lower; the description still adds real behavior: default window of the last 30 days, newest-first ordering, and a 100-item ceiling. It does not discuss pagination, rate limits, or auth, which would be the remaining useful additions.

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?

Two sentences, front-loaded with the verb and scope, then defaults. The long field enumeration is dense but earns its place by telling the agent what data comes back for planning purposes; nothing is redundant with the annotations.

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?

With an output schema present the description needn't specify return structure, and it still summarizes the fields plus defaults and cap. For a six-parameter, zero-required read tool that is close to complete; only tie-breaking between this and its single-activity sibling is left implicit.

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 100%, so the baseline is 3; the description goes slightly beyond by stating the default window ('last 30 days'), which the 'days' property does not itself declare, and by naming the returned fields that make 'search' and 'activity_type' meaningful filters. It does not explain the interplay between start_date/days beyond the schema text.

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?

Opens with a specific verb+resource ('List workouts') and immediately names the scope (date range), ordering (newest first), and the payload an agent can expect (type, duration, distance, HR zones, training load, VO2max, etc.). It reads as a plural/collection counterpart to the singular 'garmin_activity' sibling, though it never names that sibling explicitly.

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?

The date-range framing and 'newest first'/'up to 100 items' hints imply bulk retrieval rather than single-workout lookup, but the description never states when to prefer it over garmin_activity, garmin_trends, or garmin_daily_summary, and gives no exclusions or prerequisites. Usage is inferable rather than instructed.

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