Token导航 LogoToken导航TokenDH.com
Go Garmin logo
AI代理未说明官方级别未说明来源级核验

Go Garmin

MCP Server

一个用于访问Garmin Connect API的Go语言客户端库和命令行工具,支持健康数据查询、活动管理、设备设置及LLM集成。

工具数

52

提示词数

0

GitHub Stars

3

资源数

0
GoClaude命令行工具Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

llehouerou

提供方

llehouerou

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

go garmin

Garmin Connect API的Go客户端库和CLI。

安装

先决条件

  • 转到1.25或更高版本(安装Go)
  • $GOPATH/bin (通常 ~/go/bin)在你的路径中

安装CLI

go install github.com/llehouerou/go-garmin/cmd/garmin@latest

验证安装:

garmin --version

从源代码构建

git clone https://github.com/llehouerou/go-garmin.git
cd go-garmin
go build -o garmin ./cmd/garmin
./garmin --help

CLI使用情况

认证

# Login to Garmin Connect
garmin login -email=your@email.com -password=yourpassword

# Logout
garmin logout

命令

# Sleep data
garmin sleep [date]

# Wellness data
garmin wellness stress [date]
garmin wellness body-battery [date]
garmin wellness heart-rate [date]
garmin wellness spo2 [date]
garmin wellness respiration [date]
garmin wellness intensity-minutes [date]

# Activities
garmin activities list [--start=0] [--limit=20]
garmin activities get 
garmin activities types
garmin activities splits 
garmin activities weather 
garmin activities details 
garmin activities hr-zones 
garmin activities power-zones 
garmin activities exercise-sets 

# Weight and HRV
garmin weight daily [date]
garmin weight range --start=YYYY-MM-DD --end=YYYY-MM-DD
garmin hrv daily [date]
garmin hrv range --start=YYYY-MM-DD --end=YYYY-MM-DD

# Training metrics
garmin metrics readiness [date]
garmin metrics vo2max [date]
garmin metrics endurance [date]
garmin metrics hill [date]
garmin metrics training-status [date]
garmin metrics load-balance [date]
garmin metrics acclimation [date]
garmin metrics race-predictions [display-name]

# Fitness age
garmin fitnessage stats --start=YYYY-MM-DD --end=YYYY-MM-DD

# Fitness stats
garmin fitnessstats get [--start=YYYY-MM-DD] [--end=YYYY-MM-DD] [--aggregation=weekly] [--metrics=calories,distance,duration]
garmin fitnessstats activities [--start=YYYY-MM-DD] [--end=YYYY-MM-DD] [--activity_type=running] [--metrics=name,startLocal,activityType]

# Biometric data
garmin biometric lactate-threshold
garmin biometric ftp
garmin biometric hr-zones
garmin biometric power-weight [date]

# Devices
garmin devices list
garmin devices settings 

# User profile
garmin profile social
garmin profile settings
garmin profile display

# Workouts
garmin workouts list [--start=0] [--limit=20]
garmin workouts get 
garmin workouts create --file=workout.json
garmin workouts create --json='{"workoutName": "..."}'
cat workout.json | garmin workouts create
garmin workouts update  --file=workout.json
garmin workouts delete 
garmin workouts schedule  
garmin workouts unschedule 

# Exercise Library (for strength training workouts)
garmin exercises categories          # List all exercise categories
garmin exercises muscles             # List all muscle groups
garmin exercises equipment           # List all equipment types
garmin exercises list [--category=BENCH_PRESS] [--muscle=CHEST] [--equipment=DUMBBELL]
garmin exercises get   # Get exercise details

# Calendar (month is 0-indexed: January=0)
garmin calendar get --year=2026 [--month=0] [--day=28] [--start=1]

所有命令都输出JSON以便于解析。

MCP服务器(LLM集成)

CLI包括一个MCP(模型上下文协议)服务器,允许Claude等LLM助手访问您的Garmin数据。

先决条件

  1. 安装CLI(请参阅 安装)
  2. 登录一次以创建会话:
   garmin login -email=your@email.com -password=yourpassword

MCP服务器重用您的CLI会话,因此您只需登录一次。

克劳德代码

增添 ~/.claude.json (全球)或 .claude/settings.json (项目):

{
  "mcpServers": {
    "garmin": {
      "command": "garmin",
      "args": ["mcp"]
    }
  }
}

克劳德桌面版

增添 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "garmin": {
      "command": "garmin",
      "args": ["mcp"]
    }
  }
}

光标

添加到光标设置(设置>MCP服务器):

{
  "garmin": {
    "command": "garmin",
    "args": ["mcp"]
  }
}

故障排除

如果MCP服务器不工作:

  1. 验证CLI是否在您的PATH中: which garmin
  2. 检查您是否已登录: garmin sleep 应返回数据
  3. 如果需要,请使用二进制文件的完整路径:
   {
     "mcpServers": {
       "garmin": {
         "command": "/full/path/to/garmin",
         "args": ["mcp"]
       }
     }
   }

可用工具

配置后,您可以向Claude提出以下问题:

  • “我昨晚睡得怎么样?”
  • “我今天的训练准备情况如何?”
  • “显示我最近的活动”
  • “我目前的最大摄氧量是多少?”
  • “我今天的压力水平怎么样?”

MCP服务器公开了这些类别中的52个工具:

类别工具
睡觉get_sleep
健康get_stress, get_body_battery, get_heart_rate, get_spo2, get_respiration, get_intensity_minutes
活动list_activities, get_activity, get_activity_types, get_activity_splits, get_activity_weather, get_activity_details, get_activity_hr_zones, get_activity_power_zones, get_activity_exercise_sets
重量get_weight
HRVget_hrv
设备list_devices, get_device_settings
指标get_training_readiness, get_training_status, get_vo2max, get_endurance_score, get_hill_score, get_training_load_balance, get_heat_altitude_acclimation, get_race_predictions
健身年龄get_fitness_age_stats
健身统计get_fitness_stats, get_fitness_stats_activities
生物识别get_lactate_threshold, get_cycling_ftp, get_heart_rate_zones, get_power_to_weight
锻炼list_workouts, get_workout, create_workout, update_workout, delete_workout, schedule_workout, unschedule_workout
练习题list_exercise_categories, list_muscle_groups, list_equipment_types, list_exercises, get_exercise
日历get_calendar
个人资料get_social_profile, get_user_settings, get_profile_settings
公用事业get_current_date

LLM动力训练创建

MCP集成支持对话式锻炼创建。让克劳德用自然语言创建训练:

跑步训练:

“创建一个45分钟的间歇训练,包括5分钟的热身、6x3分钟的阈值训练和2分钟的恢复,以及冷却”
“在心率2区为我进行90分钟的长跑锻炼”

力量训练计划:

“创建推压日训练:卧推4x8,顶推3x10,三头肌深蹲3x12,两组之间休息90秒”
“通过复合动作,针对胸部、背部和腿部进行全身力量训练”
“创建一个我可以在家做的仅哑铃上半身锻炼”

智能锻炼计划:

“看看我最近的活动,制定一个适合明天的恢复训练”
“根据我的训练负荷,为我的下一次训练提出建议并制定锻炼计划”

LLM使用锻炼库(1794个锻炼)查找有效的锻炼类别和名称,然后构建格式正确的锻炼,直接同步到您的Garmin设备。

对话示例

You: Create a chest and triceps workout with 3 exercises each, 4 sets of 10 reps

Claude: I'll create that workout for you. Let me first find the best exercises...

[Uses list_exercises with muscle=CHEST, then muscle=TRICEPS]

I've found good options. Creating your workout now...

[Uses create_workout with the structured JSON]

Done! I've created "Chest & Triceps" workout with:

Chest:
- Barbell Bench Press: 4x10
- Incline Dumbbell Press: 4x10
- Cable Flyes: 4x10

Triceps:
- Tricep Dips: 4x10
- Skull Crushers: 4x10
- Tricep Pushdowns: 4x10

Rest: 90 seconds between sets

The workout is now in your Garmin Connect account. Would you like me to schedule it?

锻炼类型参考

MCP工具支持所有Garmin锻炼类型:

运动类型ID功能
跑步1速度区、心率区、距离/时间目标
自行车2动力区、节奏目标、距离/时间
游泳4泳姿类型、设备、游泳池长度
力量训练5练习库、重复次数、集合、休息时间
有氧运动6HR区域,时间目标
瑜伽7基于时间的流动
普拉提8基于时间的序列
HIIT9间隔、工作/休息比率

图书馆使用情况

package main

import (
    "context"
    "fmt"
    "time"

    "github.com/llehouerou/go-garmin"
)

func main() {
    client := garmin.New(garmin.Options{})

    // Login
    err := client.Login(context.Background(), "email", "password")
    if err != nil {
        panic(err)
    }

    // Get today's sleep data
    sleep, err := client.Sleep.GetDaily(context.Background(), time.Now())
    if err != nil {
        panic(err)
    }

    fmt.Printf("Sleep score: %d\n", sleep.SleepScores.Overall.Value)
}

建筑

此项目使用 声明性端点注册表 系统。所有端点都是一次性定义的 endpoint/definitions/ 并自动生成:

  • CLI命令(通过 endpoint.CLIGenerator)
  • MCP工具(通过 endpoint.MCPGenerator)
  • 验证规则(通过 endpoint.Validator)

CLAUDE.md 有关添加新端点的说明。

许可证

麻省理工学院

目录标签

目录标签

GoClaude命令行工具健康数据分析本地部署运动数据管理可穿戴设备LLM集成

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

52

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP