Skip to content
Agentmart
Submit a tool

Garminmcp

Privacy-first unofficial Garmin Connect MCP for AI health, sleep, activity & recovery agents.

Connector by davidmosiah · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 13
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/davidmosiah-garminmcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Privacy-first unofficial Garmin Connect MCP for AI health, sleep, activity & recovery agents.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
40 read · 1 write · 1 delete
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Tools by what they do 42

Read from the source code; the running server may list different tools.

Read 40 · Look things up without changing anything.

  • garmin_activity_series
  • garmin_agent_manifest
  • garmin_auth_instructions
  • garmin_cache_status
  • garmin_capabilities
  • garmin_connection_status
  • garmin_daily_summary
  • garmin_data_inventory
  • garmin_demo
  • garmin_get_activity
  • garmin_get_activity_details
  • garmin_get_activity_hr_zones
Show 28 more tools
  • garmin_get_activity_splits
  • garmin_get_activity_weather
  • garmin_get_body_battery_day
  • garmin_get_body_battery_events
  • garmin_get_daily_summary
  • garmin_get_heart_day
  • garmin_get_hrv_day
  • garmin_get_hydration_day
  • garmin_get_intensity_minutes_day
  • garmin_get_primary_training_device
  • garmin_get_profile
  • garmin_get_respiration_day
  • garmin_get_sleep_day
  • garmin_get_spo2_day
  • garmin_get_steps_day
  • garmin_get_stress_day
  • garmin_get_training_readiness_day
  • garmin_get_training_status_day
  • garmin_get_user_settings
  • garmin_get_weight_range
  • garmin_list_activities
  • garmin_list_devices
  • garmin_onboarding
  • garmin_privacy_audit
  • garmin_profile_get
  • garmin_quickstart
  • garmin_weekly_summary
  • garmin_wellness_context

Write 1 · Create, change, send or run things.

  • garmin_profile_update

Delete 1 · Delete, drop, revoke or wipe things.

  • garmin_disconnect_local

Secrets and settings it asks for

Other settings (environment variables or headers).

  • GARMIN_CACHE
  • GARMIN_CACHE_PATH
  • GARMIN_DOMAIN
  • GARMIN_NO_CACHE
  • GARMIN_PRIVACY_MODE
  • GARMIN_TOKEN_PATH

Network hosts it talks to 13

  • connect.garmin.com · found in code
  • connectapi.garmin.cn · found in code
  • connectapi.garmin.com · found in code
  • developer.garmin.com · found in code
  • developerportal.garmin.com · found in code
  • diauth.garmin.com · found in code
  • example.test · found in code
  • garminconnectmcp.vercel.app · found in code
  • github.com · found in code
  • glama.ai · found in code
  • mobile.integration · found in code
  • thegarth.s3.amazonaws.com · found in code
  • wellness.delx.ai · found in code

Files it touches

  • Your home directory (~)
  • ~/.hermes/config.yaml
  • ~/.hermes/skills/garmin-mcp/SKILL.md

Tools (42)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • garmin_activity_seriesGarmin Activity Seriesread-only

    Description is built at runtime.

  • garmin_agent_manifestGarmin Agent Manifestread-only

    Machine-readable install, runtime and client guidance for AI agents. Does not call Garmin or expose secrets.

  • garmin_auth_instructionsGarmin Auth Instructionsread-only

    Explain the local Garmin Connect authentication flow without asking the user to paste secrets into an agent.

  • garmin_cache_statusGarmin Cache Statusread-only

    Show optional local SQLite cache status. Enable with GARMIN_CACHE=sqlite or GARMIN_CACHE=true.

  • garmin_capabilitiesGarmin MCP Capabilitiesread-only

    Explain supported Garmin data, privacy boundaries, recommended agent workflow and project links.

  • garmin_connection_statusGarmin Connection Statusread-only

    Check local Garmin config, token file, Node version, privacy mode, cache readiness and optional MCP client readiness without calling Garmin or exposing secrets.

  • garmin_daily_summaryGarmin Daily Health Summaryread-only

    Build a practical daily summary from Garmin activity, sleep, heart-rate, HRV, stress and Body Battery when available. Read-only and non-medical.

  • garmin_data_inventoryGarmin Data Inventoryread-only

    Inventory supported Garmin data domains, auth scope requirements, privacy boundary and recommended first calls. Does not call Garmin APIs or expose user data.

  • garmin_demoGarmin Demoread-only

    Returns realistic example payloads of garmin_daily_summary, garmin_wellness_context, and garmin_get_body_battery_day so agents see the contract before any real Garmin Connect call.

  • garmin_disconnect_localDisconnect Garmin Locallycan change or delete data

    Delete the local Garmin token file. This does not change the Garmin account; use only when the user explicitly wants to disconnect this MCP. Gated by explicit_user_intent: true (requires explicit user intent).

  • garmin_get_activityGarmin Activityread-only

    Get a Garmin activity summary by activity id.

  • garmin_get_activity_detailsGarmin Activity Detailsread-only

    Get detailed Garmin activity samples when available.

  • garmin_get_activity_hr_zonesGarmin Activity Heart-Rate Zonesread-only

    Get Garmin activity heart-rate zone time by activity id when available.

  • garmin_get_activity_splitsGarmin Activity Splitsread-only

    Get Garmin activity splits/laps by activity id.

  • garmin_get_activity_weatherGarmin Activity Weatherread-only

    Get Garmin activity weather by activity id when available.

Show 27 more tools
  • garmin_get_body_battery_dayGarmin Body Batteryread-only

    Get Garmin Body Battery daily report for a date. Not medical advice.

  • garmin_get_body_battery_eventsGarmin Body Battery Eventsread-only

    Get Garmin Body Battery charge/drain events for a date. Not medical advice.

  • garmin_get_daily_summaryGarmin Daily Summary Rawread-only

    Get Garmin daily movement and wellness summary for a date.

  • garmin_get_heart_dayGarmin Daily Heart Rateread-only

    Get Garmin daily heart-rate samples and resting heart-rate context for a date. Not medical advice.

  • garmin_get_hrv_dayGarmin HRVread-only

    Get Garmin HRV status and overnight HRV metrics for a date when available. Not medical advice.

  • garmin_get_hydration_dayGarmin Hydrationread-only

    Get Garmin hydration summary for a date when available.

  • garmin_get_intensity_minutes_dayGarmin Intensity Minutesread-only

    Get Garmin intensity minutes for a date.

  • garmin_get_primary_training_deviceGarmin Primary Training Deviceread-only

    Get the primary Garmin training device when available.

  • garmin_get_profileGarmin Profileread-only

    Get the authenticated Garmin profile using the configured privacy mode.

  • garmin_get_respiration_dayGarmin Respirationread-only

    Get Garmin respiration data for a date when available. Not medical advice.

  • garmin_get_sleep_dayGarmin Daily Sleepread-only

    Get Garmin sleep summary, stages and sleep window for a date. Not medical advice.

  • garmin_get_spo2_dayGarmin SpO2read-only

    Get Garmin Pulse Ox / SpO2 data for a date when available. Not medical advice.

  • garmin_get_steps_dayGarmin Daily Steps Chartread-only

    Get Garmin daily steps and summary chart for a date.

  • garmin_get_stress_dayGarmin Daily Stressread-only

    Get Garmin stress summary and samples for a date. Not medical advice.

  • garmin_get_training_readiness_dayGarmin Training Readinessread-only

    Get Garmin training readiness for a date when supported by the device/account. Not medical advice.

  • garmin_get_training_status_dayGarmin Training Statusread-only

    Get Garmin aggregated training status for a date when supported by the device/account. Not medical advice.

  • garmin_get_user_settingsGarmin User Settingsread-only

    Get Garmin account user settings such as units and display preferences.

  • garmin_get_weight_rangeGarmin Weight Rangeread-only

    Get Garmin weight/body-composition logs for a date range. Not medical advice.

  • garmin_list_activitiesGarmin Activitiesread-only

    List recent Garmin activities. Supports pagination, optional date filters and privacy modes.

  • garmin_list_devicesGarmin Devicesread-only

    List devices registered to the Garmin account.

  • garmin_onboardingGarmin Onboarding (shared wellness profile)read-only

    Return the 11-question Delx wellness onboarding flow (in English or pt-BR) plus the current shared profile state and missing critical fields. Read-only. The agent should ask these questions one-by-one, then call garmin_profile_update with explicit_user_intent=true to save. The same profile is reused by every Delx Wellness connector (WHOOP, Oura, Nourish, etc.) — agents can call the equivalent {connector}_onboarding tools to cover their respective domains, or rely on this one since all connectors share the same questions.

  • garmin_privacy_auditGarmin Privacy Auditread-only

    Return local privacy, cache, token-path and env-presence posture without revealing secret values.

  • garmin_profile_getGarmin Profile Get (shared wellness profile)read-only

    Read the shared Delx wellness profile (~/.delx-wellness/profile.json). Returns the user's preferred name, body basics, goals, devices, training context, nutrition context, agent preferences, and missing critical fields. Cross-connector — the same profile is also available from other Delx Wellness MCPs (WHOOP, Oura, Nourish, Fitbit, etc). Read-only.

  • garmin_profile_updateGarmin Profile Update (shared wellness profile)

    Persist a partial patch to the shared Delx wellness profile (~/.delx-wellness/profile.json). REQUIRES explicit_user_intent=true. Top-level fields stored: profile (preferred_name, language, timezone, units, age_or_birth_year, height, weight, sex_or_gender_context), goals, devices, training, nutrition, preferences, safety, notes. NEVER stores OAuth tokens, API keys, refresh tokens, cookies, or any secret-shaped field — writes will be rejected at validation time. Cross-connector — the same profile is read by other Delx Wellness MCPs.

  • garmin_quickstartGarmin Quickstartread-only

    Personalized 3-step setup walkthrough for the human user. Adapts to current state (env vars set? token present? what's next?). Call this first when the user asks 'how do I connect Garmin?'

  • garmin_weekly_summaryGarmin Weekly Health Reviewread-only

    Build a weekly Garmin scorecard with movement, sleep, HRV, stress, Body Battery, bottlenecks and actions. Read-only and non-medical.

  • garmin_wellness_contextGarmin Wellness Contextread-only

    Normalize Garmin readiness, sleep score, Body Battery and recent movement load into the shared wellness_context shape for recommendation engines.

Signals

Stars
13
Forks
8
Open issues
2
Last commit
Oct 8, 2026 (20 days ago)
Last release
Aug 29, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.davidmosiah/garminmcp
Version
0.5.3
Auth
No auth
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 25, 2026

More from davidmosiah

Cite this page

Garminmcp MCP server. Agent Mart. https://agentmart.dev/connectors/davidmosiah-garminmcp (last updated 2026-10-25)