Skip to main content
Glama
Garmin Connect Personal API MCP

Garmin Connect Personal API MCP

by hannta

Get Garmin profile and HR zones

garmin_get_profile
Read-only

Retrieves your Garmin profile settings and per-sport heart-rate zones, so heart-rate data from other tools can be interpreted correctly.

Instructions

The user's Garmin settings and heart-rate zones: time zone used for dates, first day of the week, training and long-run days set in Garmin Connect, and per-sport HR zones with max, resting and lactate-threshold heart rate. Use it to interpret heart-rate data from the other tools.

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.1

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and a closed domain, so safety is covered. The description adds value by listing the concrete settings returned (time zone, week start, training days, per-sport zones with max/resting/lactate-threshold HR), which frames what the call yields. It could still note whether zones are user-configured vs. auto-detected or stale.

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 payload description and ending with the usage rationale. The middle list is dense but every item is distinct information; no filler or repetition of the title.

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?

No output schema exists, so the description must describe return content, and it does so reasonably thoroughly for a zero-arg profile read. The remaining gap is sibling differentiation against garmin_get_heart_rate_zones, which an agent might otherwise call redundantly.

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?

The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies; schema coverage is 100% and the empty object is self-explanatory.

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 ('The user's Garmin settings and heart-rate zones') and enumerates the contents: time zone, first day of week, training/long-run days, per-sport HR zones. It stops short of distinguishing from the sibling garmin_get_heart_rate_zones, which plausibly overlaps on HR 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 a clear positive usage rule: 'Use it to interpret heart-rate data from the other tools.' That is real context an agent can act on. No exclusions or explicit alternatives (e.g. when to prefer garmin_get_heart_rate_zones) are given.

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