Garmin Workouts MCP

Crea entrenamientos de Garmin Connect usando lenguaje natural.

Documentación

Garmin Workouts MCP

Crea entrenamientos de Garmin Connect usando descripciones en lenguaje natural. Construido como un servidor MCP (Model Context Protocol).

Instalación

Claude Code (Recomendado)

claude mcp add garmin-workouts-mcp npx garmin-workouts-mcp

Claude Desktop

Añade a tu archivo de configuración:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "garmin-workouts-mcp": {
      "command": "npx",
      "args": ["-y", "garmin-workouts-mcp"]
    }
  }
}

Luego reinicia Claude Desktop.

Uso

⚠️ Importante: Los tokens de autenticación de Garmin caducan después de ~5 minutos. Planifica varios entrenamientos y créalos todos en una sola sesión.

Inicio rápido

  1. Solicita un entrenamiento - Solo describe lo que quieres: "Crea un calentamiento de 10 min, 5x1km de intervalos de umbral con 2 min de descanso, luego 10 min de enfriamiento"

  2. Autentícate cuando sea necesario - Se abrirá una ventana del navegador en Garmin Connect para que inicies sesión (ocurre cuando los tokens caducan ~cada 5 minutos)

  3. Tu entrenamiento aparece - La herramienta lo crea directamente en tu cuenta de Garmin Connect y proporciona un enlace para verlo

  4. Disponible en el dispositivo - El entrenamiento estará disponible en Garmin Connect y se puede enviar a tu dispositivo desde allí

Tu inicio de sesión se guarda temporalmente - Los tokens se almacenan de forma segura en tu máquina pero caducan después de ~5 minutos, por lo que es posible que necesites volver a autenticarte entre sesiones.

Crea múltiples entrenamientos en una sola sesión:

"Create these 3 workouts:
1. Easy 30 min run in zone 2
2. 5x1km threshold intervals with 2 min rest
3. 10x30 second sprints with 90 second recovery"

Cómo funciona

  1. Solicita entrenamientos - Describe lo que quieres crear
  2. Auto-autenticación - El navegador se abre para iniciar sesión cuando los tokens caducan
  3. Creación por lotes - Crea múltiples entrenamientos en la misma sesión

Ejemplos de entrenamientos

  • Carrera suave: "Carrera suave de 30 minutos en zona 2"
  • Intervalos: "5x400m a ritmo de 5k con 60 segundos de descanso"
  • Umbral: "Calentamiento de 10 min, tempo de 20 min en zona 4, enfriamiento de 10 min"
  • Sprints: "Calentamiento de 10 min, luego 8 sprints de 15 segundos con 3 min de recuperación"
  • Complejo: "Entrenamiento pirámide: 1-2-3-4-3-2-1 minutos intensos con recuperación igual"

Características

  • 🧠 Procesamiento de lenguaje natural - Describe entrenamientos en lenguaje sencillo
  • 🔐 Autenticación segura - Autenticación basada en tokens con renovación automática
  • 🏃 Soporte multi-deporte - Entrenamientos de carrera, ciclismo y natación
  • ⚡ Integración directa con Garmin - Crea entrenamientos al instante en Garmin Connect
  • 💾 Gestión inteligente de tokens - Re-autenticación automática cuando los tokens caducan

Limitaciones actuales

⚠️ Solo objetivos de frecuencia cardíaca/zonas - La herramienta actualmente admite zonas de frecuencia cardíaca (Zona 1-5) y objetivos específicos de BPM, pero aún no admite objetivos basados en ritmo (p. ej., 4:00/km).

Cómo funciona

  1. Convierte tu descripción de entrenamiento en lenguaje natural en datos estructurados
  2. Traduce al formato de API de entrenamientos de Garmin con zonas y objetivos adecuados
  3. Crea el entrenamiento directamente en tu cuenta de Garmin Connect
  4. Se sincroniza automáticamente con tu dispositivo Garmin

Hecho para Claude Code y Claude Desktop.

Aviso legal

Este proyecto es una herramienta no oficial de terceros que interactúa con la interfaz web de Garmin Connect. No está afiliado, respaldado ni patrocinado por Garmin Ltd. ni por ninguna de sus filiales.

  • Úsalo bajo tu propio riesgo - Esta herramienta puede dejar de funcionar si Garmin cambia su API o sus términos de servicio
  • No para uso comercial - Este es un proyecto personal destinado únicamente al uso individual
  • Sin garantía - El software se proporciona "tal cual" sin ninguna garantía
  • Respeta los términos de Garmin - Los usuarios son responsables de cumplir con los términos de servicio de Garmin Connect
  • Responsabilidad de datos - Eres responsable de los entrenamientos creados y de cualquier dato compartido con Garmin

Si representas a Garmin y tienes inquietudes sobre este proyecto, comunícate a través de los issues de GitHub.

Desarrollo

Almacenamiento de tokens

Los tokens de autenticación se almacenan de forma segura en:

  • Ubicación: ~/.config/garmin-workouts-mcp/auth.json
  • Permisos: 600 (solo lectura/escritura del usuario)
  • Caducidad: ~5 minutos desde el inicio de sesión
  • Contenido: Tokens JWT y cookies para la API de Garmin Connect

Desarrollo local

# Clone and install
git clone https://github.com/charlesfrisbee/garmin-workouts-mcp.git
cd garmin-workouts-mcp
pnpm install

# Build and test locally
pnpm run build
pnpm run pack

# Add to Claude Code for testing
claude mcp add garmin-workouts-mcp ./garmin-workouts-mcp-local.tgz

Requisitos

  • Node.js 16+
  • pnpm
  • Claude Code (para pruebas locales)
  • Cuenta de Garmin Connect