Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GARMINTOKENSNoPath to the directory where Garmin session tokens are stored. Defaults to ~/.garminconnect.~/.garminconnect
GARMIN_OWL_DBNoPath to the SQLite cache database. Defaults to ~/Library/Application Support/garmin-owl/garmin.sqlite.~/Library/Application Support/garmin-owl/garmin.sqlite

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
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_daily_summaryC

Get activity time/goals, HR, stress, respiration, SpO2, Body Battery, steps/calories.

get_sleepC

Get sleep score/need, stages, HR/stress, respiration, SpO2, and skin-temp deviation.

get_hrvA

Get Garmin HRV status and nightly values; optional readings are capped at 48 points.

get_recoveryA

Combine Garmin sleep, HRV, Body Battery, stress, RHR, readiness; states why any is absent.

get_training_readinessC

Get Garmin training readiness, component percentages, and factor feedback.

get_body_batteryA

Get Garmin Body Battery charged/drained and start/end/high/low levels for one day.

get_stressA

Get Garmin daily average/max stress and per-band durations; series capped at 48 points.

get_activitiesA

List concise activities in an inclusive date range; defaults to the last 14 days.

get_activityB

Get one activity summary, laps, training effect, and available HR/power zones.

get_body_compositionA

Get weight and Garmin-provided body composition for at most 366 days.

get_training_contextA

Get recovery and preceding training anchored to date, with transparent comparisons.

get_recovery_trendA

Trend sleep HR/temp, HRV, RHR, readiness, and Body Battery over 7/14/28 days.

get_training_weekA

Summarize a Mon-Sun week; every total discloses how many activities reported the metric.

get_training_loadC

Get acute/chronic load, ratio/status, focus/targets, VO2 max, scores, acclimation.

get_training_zonesA

Get configured Garmin HR-zone and cycling power-zone floor thresholds.

get_running_toleranceB

Get 1-90 days of Garmin running distance, impact load, tolerance, and feedback.

get_recent_activitiesA

List recent cached activities with bounded days/limit and optional exact type filter.

compare_activitiesA

Compare 2-10 activities; each metric range states how many reported a value.

get_cycleB

Get normalized cycle phase/timing without notes, symptoms, or raw day logs.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 19 tools

Disambiguation2/5

Several tools share overlapping data: get_daily_summary, get_sleep, get_recovery, get_stress, and get_body_battery all surface similar health metrics, while get_recovery, get_training_readiness, get_training_context, and get_recovery_trend form a confusing recovery/readiness cluster. An agent would struggle to know which endpoint is authoritative for a given metric.

Naming Consistency4/5

The vast majority of tools follow a consistent get_<resource> snake_case pattern, making the set predictable. The only clear deviation is compare_activities, which uses a verb-noun structure instead of a get_ prefix, but this is a minor inconsistency.

Tool Count3/5

With 19 tools, the server sits in the slightly-heavy range for a data-retrieval API. Many are individually meaningful, but the recovery/readiness/trend cluster could likely be consolidated without losing capability.

Completeness5/5

The toolset provides broad coverage of Garmin health and training data: daily summaries, sleep, HRV, stress, body battery, activities, body composition, training load/zones/context, trends, and cycle data. No major dead-ends or obvious missing read operations are apparent for the stated domain.

Maintenance

ActivityMaintained
ResponsivenessNo issues