Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GARMIN_PASSWORDYesYour Garmin Connect password
GARMIN_USERNAMEYesYour Garmin Connect username

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_daily_overviewA

Get a comprehensive daily overview including sleep, activities, and health metrics

get_sleep_dataB

Get detailed sleep data for a specific date from Garmin Connect

get_health_metricsB

Get aggregated health metrics for a specific date

get_heart_rate_dataC

Get detailed heart rate data for a specific date

get_weight_dataA

Get weight and body composition data for a specific date

get_hydration_dataB

Get daily hydration (water intake) data for a specific date

get_activitiesA

Get list of recent activities with optional filtering and pagination

get_activity_detailsC

Get detailed information for a specific activity

get_weekly_volumeC

Get weekly training volume aggregation for a specific week

get_training_stress_balanceA

Get training stress balance (TSB), chronic training load (CTL), and acute training load (ATL) for a specific date. TSB = CTL - ATL indicates form/freshness. Uses HR-based TSS calculation when available, falls back to duration estimates.

get_vo2maxA

Get VO2max history with one-decimal precision. Garmin's UI rounds VO2max to a whole number, which can sit unchanged for months while the underlying value moves — use this to see the real trend. Defaults to the last 90 days.

get_activity_lapsA

Get per-lap splits for one activity — the individual interval reps with pace, HR and cadence, rather than the aggregated totals get_activity_details returns. Essential for analysing whether an interval session held pace or faded.

get_race_predictionsA

Get Garmin's own predicted race times for 5K, 10K, half marathon and marathon, based on current fitness.

get_hrvA

Get overnight heart rate variability: last night's average, weekly average, baseline range and status (BALANCED / UNBALANCED / LOW). A recovery and autonomic-load marker.

get_training_statusB

Get Garmin's aggregated training status for a date, including the most recent VO2max reading and load balance.

get_hr_zonesA

Get the heart rate zones configured on the account, per sport, and crucially which basis they are calculated from (max HR, heart rate reserve, or lactate threshold). The same percentage band maps to very different bpm depending on the basis, so check this before interpreting any zone the watch reports.

get_activity_hr_zonesA

Get time spent in each heart rate zone during one activity, with each zone's share of the session. Average HR hides distribution — use this to tell an evenly aerobic run from one that swung between too hard and too easy.

get_training_readinessA

Get training readiness for a date: the score the device derives from sleep, recovery time, HRV and recent load. A go / hold check before a hard session.

create_running_workoutA

Create a structured workout in Garmin Connect. Defaults to running; set sport to 'cycling', 'swimming' or 'other' for non-running workouts. Build workouts with warmup, intervals, recovery, cooldown, and repeat blocks. Supports time-based, distance-based, and lap-button durations. Supports pace, HR zone, and no-target intensity controls.

schedule_workoutA

Schedule a workout to a specific date in Garmin Connect calendar. Use the workoutId from create_running_workout response.

get_scheduled_workoutsA

Get scheduled workouts from Garmin Connect calendar for a date range. Defaults to the current week (Monday to Sunday) if dates not provided. Returns list of scheduled workouts with details including scheduleId for unscheduling.

delete_workoutA

Permanently delete a workout from Garmin Connect library. This also removes the workout from all calendar dates where it was scheduled. This operation cannot be undone.

unschedule_workoutA

Remove a workout from Garmin Connect calendar. The workout remains in your library for future scheduling. Use the scheduleId from get_scheduled_workouts response.

get_workout_detailsA

Get detailed information for a specific workout including steps, targets, and duration. Returns the complete workout structure with formatted step information.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 24 tools

Disambiguation4/5

Most tools target clearly distinct endpoints (sleep, HRV, VO2max, hydration, etc.) and descriptions do a good job clarifying boundaries. However, get_daily_overview overlaps with get_sleep_data, get_health_metrics, and get_activities, and the cluster of training metrics (status, readiness, TSB) could confuse without careful reading.

Naming Consistency5/5

All tools follow a consistent snake_case verb_noun pattern: get_*, create_*, schedule_*, unschedule_*, delete_*. The only mild oddity is create_running_workout despite supporting other sports, but the style remains uniform.

Tool Count3/5

24 tools sits in the heavy range and feels borderline for a coaching server. While most map to distinct Garmin endpoints, there is some redundancy (daily overview duplicates other getters) and potential to consolidate.

Completeness4/5

The surface covers activity data, health metrics, training analytics, and the full workout scheduling lifecycle (create, schedule, unschedule, delete, view details). Missing an update_workout operation and tools for courses/routes, but core coaching workflows are supported.

Maintenance

ActivityMaintained
ResponsivenessNo issues