Skip to main content
Glama
durely
by durely

Get Garmin profile and zones

garmin_get_profile
Read-onlyIdempotent

Retrieves the user's Garmin profile settings, heart rate zones per sport, and fitness age so you can interpret heart rate data correctly.

Instructions

Get the user's Garmin profile settings, heart rate zones per sport, and fitness age.

Returns: units and locale, time zone, preferred training days, HR zone floors per sport (with the max HR / LTHR / resting HR used to compute them), and the latest fitness age.

Use this before interpreting heart rate data (to know the user's zones), or when the user asks about their zones, max HR, lactate threshold or fitness age.

Input Schema

NameRequiredDescriptionDefault
response_formatNo'markdown' for readable text (default), 'json' for complete structured datamarkdown

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.5.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/openWorld, so the safety profile is covered. The description adds genuinely useful behavioral detail beyond that by spelling out what comes back (units and locale, time zone, preferred training days, zone floors with the max HR/LTHR/resting HR used, latest fitness age). It does not mention cost of the network call or how markdown vs json differ in completeness.

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

Conciseness5/5

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

Two short blocks, front-loaded with what is returned and followed by the decision rule. Every sentence carries information an agent needs; nothing is filler.

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 no output schema, the description correctly carries the return-value burden and does so in useful detail, plus the prerequisite usage rule. Minor gap: it does not tell the agent that returning json preserves the full structured zone/HR data that markdown may compress.

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?

Only one optional parameter and schema description coverage is 100%, with the enum values fully documented in-schema, so the baseline of 3 applies. The description never mentions response_format or when to prefer json for structured zone data, adding no meaning beyond the schema.

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?

Names a specific verb and resource ('Get the user's Garmin profile settings') and enumerates the exact scope: HR zones per sport and fitness age. That enumerated scope makes it unmistakable against siblings like garmin_get_daily_health or garmin_get_intraday, which cover time-series health data rather than configuration/zones.

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

Usage Guidelines4/5

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

Gives two concrete activation conditions: 'before interpreting heart rate data (to know the user's zones)' and 'when the user asks about their zones, max HR, lactate threshold or fitness age.' Clear and actionable, but no explicit exclusions or named alternative tools for overlapping questions.

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