Skip to content

sedoglia/garmin-mcp-ts

Repository files navigation

Garmin Connect MCP Server

English | Italiano

TypeScript Node.js MCP License: MIT Version

PayPal


Un server Model Context Protocol (MCP) che connette Claude Desktop a Garmin Connect, permettendo di interrogare in linguaggio naturale i tuoi dati di attività fisica, metriche di salute, sonno e altro ancora.

🎉 Novità v4.1.0 - Gear Management & Collections

🔧 GEAR MANAGEMENT ✅ MIGLIORATO

  • get_all_gear: ✅ ORA FUNZIONANTE - Lista automatica di tutto l'equipaggiamento (non richiede più UUID manuale!)
  • create_gear: ❌ RIMOSSO (l'API OAuth Garmin restituisce 403 Forbidden per la creazione gear)
  • update_gear: Aggiorna equipaggiamento (UUID ora ottenibile via get_all_gear)
  • delete_gear: Elimina equipaggiamento (UUID ora ottenibile via get_all_gear)

🆕 GEAR METADATA & COLLECTIONS ✅ NUOVO

  • get_gear_types: Ottieni i tipi di equipaggiamento disponibili (scarpe, bici, casco, etc.)
  • get_gear_makes: Ottieni le marche/brand disponibili
  • get_gear_collections: Lista tutte le collezioni di equipaggiamento
  • get_gear_collection: Dettagli di una collezione specifica (gear associati, tipi attività)
  • create_gear_collection: Crea una nuova collezione di equipaggiamento
  • update_gear_collection: Aggiorna una collezione (nome, gear, tipi attività)
  • delete_gear_collection: Elimina una collezione

📈 Ora con 106 TOOLS disponibili! (tutti testati e funzionanti)


Novità v4.1.0 - Social & Advanced Analytics

🤝 SOCIAL FEATURES ⚠️ PARZIALE

  • get_activity_comments: Ottieni commenti su un'attività ✅ FUNZIONANTE
  • add_activity_comment: Aggiungi commenti alle attivitàRIMOSSO (Non supportato da API OAuth Garmin)
  • set_activity_privacy: Imposta privacy (public o private solo) ⚠️ PARZIALE (opzione "followers" non supportata)

📊 ADVANCED TRAINING METRICS ✅ TESTATO

  • get_training_load: Carico di allenamento settimanale e bilanciamento
  • get_load_ratio: Rapporto acuto/cronico (injury risk indicator)
  • get_performance_condition: Condizione di performance attuale

💤 ADVANCED SLEEP ANALYSIS ✅ TESTATO

  • get_sleep_movement: Movimenti durante il sonno e momenti irrequieti

DEVICE MANAGEMENT ✅ TESTATO

  • get_device_alarms: Ottieni sveglie configurate sui dispositivi

🗺️ COURSE MANAGEMENT ✅ TESTATO

  • get_courses: Ottieni percorsi/route salvati

🔬 ACTIVITY ANALYSIS TOOLS ✅ TESTATO

  • compare_activities: Confronta 2-5 attività fianco a fianco
  • find_similar_activities: Trova attività simili per tipo/distanza/durata (20% tolerance)
  • analyze_training_period: Analisi completa trends, volumi e pattern di allenamento

Funzionalità

Questo server MCP fornisce 106 potenti strumenti per interagire con i tuoi dati Garmin Connect:

Strumenti Attività (Base)

Strumento Descrizione
list_recent_activities Ottiene la lista delle attività recenti con filtri opzionali
get_activity_details Ottiene informazioni dettagliate su un'attività specifica
get_activity_splits Ottiene dati di split/lap per un'attività specifica
get_workouts Ottiene la lista dei workout pianificati

Strumenti Salute & Benessere

Strumento Descrizione
get_health_metrics Ottiene metriche di salute giornaliere (passi, frequenza cardiaca, VO2 max)
get_sleep_data Ottiene informazioni dettagliate sul sonno (durata, qualità, fasi)
get_body_composition Ottiene dati sulla composizione corporea (peso, BMI, grasso corporeo)
get_steps Ottiene il conteggio passi per una data specifica
get_heart_rate Ottiene dati dettagliati sulla frequenza cardiaca
get_hydration Ottiene dati giornalieri sull'idratazione

Metriche Wellness (v1.2)

Strumento Descrizione
get_stress_data Ottiene i livelli di stress durante il giorno (scala 0-100)
get_body_battery Ottiene i livelli di energia Body Battery (0-100)
get_hrv_data Ottiene dati di variabilità cardiaca (HRV)
get_respiration_data Ottiene dati sulla frequenza respiratoria
get_spo2_data Ottiene dati SpO2 (saturazione di ossigeno nel sangue)

Strumenti Utente & Dispositivi

Strumento Descrizione
get_devices Ottiene la lista dei dispositivi Garmin connessi
get_user_profile Ottiene informazioni sul profilo utente
get_training_status Ottiene lo stato di allenamento e statistiche delle attività

Nuovi Strumenti v2.0

Gestione Workout

Strumento Descrizione
get_workout_by_id Ottiene dettagli di un workout specifico
download_workout Scarica workout in formato FIT per sync su device
create_workout Crea workout strutturati con warmup, intervalli, cooldown
update_workout Modifica un workout esistente
delete_workout Elimina un workout
schedule_workout Schedula un workout su una data specifica
unschedule_workout Rimuove workout dal calendario (⚠️ usare prima di delete_workout)

Gestione Attività

Strumento Descrizione
upload_activity Upload file attività (FIT, GPX, TCX)
create_manual_activity Crea attività manuale
set_activity_name Modifica nome attività
set_activity_type Modifica tipo attività
delete_activity Elimina un'attività (⚠️ irreversibile)
download_activity Scarica attività in vari formati (FIT, TCX, GPX, KML, CSV)

Device & Settings

Strumento Descrizione
get_device_last_used Ottiene info sull'ultimo dispositivo usato
get_device_settings Ottiene impostazioni di un dispositivo

Health & Wellness Avanzati

Strumento Descrizione
get_all_day_stress Ottiene stress dettagliato per tutto il giorno
get_floors Ottiene piani saliti
get_intensity_minutes Ottiene minuti di intensità (moderata e vigorosa)
get_max_metrics Ottiene metriche max (VO2 max, etc.)
get_training_readiness Ottiene punteggio Training Readiness
get_endurance_score Ottiene Endurance Score
get_fitness_age Ottiene Fitness Age stimata
get_daily_summary Ottiene sommario giornaliero completo

Weight & Body

Strumento Descrizione
get_weigh_ins Ottiene pesate in un range di date
add_weigh_in Aggiunge pesata con dati composizione corporea
delete_weigh_in Elimina una pesata
get_blood_pressure Ottiene misurazioni pressione sanguigna
set_blood_pressure Registra misurazione pressione
delete_blood_pressure Elimina misurazione pressione

Activity Details Avanzati

Strumento Descrizione
get_activity_weather Ottiene meteo durante un'attività
get_activity_hr_zones Ottiene tempo nelle zone HR
get_activity_exercise_sets Ottiene set esercizi (strength training)

Goals, Challenges & Records

Strumento Descrizione
get_goals Ottiene obiettivi (attivi, futuri, passati)
get_adhoc_challenges Ottiene sfide ad-hoc
get_badge_challenges Ottiene sfide badge disponibili
get_earned_badges Ottiene badge guadagnati
get_personal_records Ottiene record personali
get_race_predictions Ottiene previsioni tempi gara (5K, 10K, HM, M)

Gear Management

Strumento Descrizione
get_all_gear Lista completa di tutto l'equipaggiamento con UUID
update_gear Aggiorna equipaggiamento esistente
delete_gear Elimina equipaggiamento
get_gear_stats Ottiene statistiche uso gear
link_gear_to_activity Collega gear a un'attività

Nota: A partire dalla v4.1, get_all_gear funziona automaticamente e fornisce gli UUID necessari per gli altri strumenti gear. La creazione di nuovo gear non è supportata dall'API OAuth di Garmin.

Reports & Progress

Strumento Descrizione
get_progress_summary Ottiene sommario progressi tra due date

🆕 Nuovi Strumenti v3.0

User & Activity Summary

Strumento Descrizione
get_user_summary Ottiene riepilogo utente per una data (steps, calories, etc.)
get_steps_data Ottiene dati passi dettagliati per una data
get_daily_steps Ottiene passi giornalieri in un range di date (max 28 giorni)
get_activities_by_date Ottiene attività in un range di date
get_activity_typed_splits Ottiene split per tipo di attività

Health Metrics Avanzati

Strumento Descrizione
get_rhr_day Ottiene frequenza cardiaca a riposo giornaliera
get_hill_score Ottiene punteggio Hill Score in un range di date
get_all_day_events Ottiene tutti gli eventi del giorno (stress, body battery)
get_body_battery_events Ottiene eventi Body Battery dettagliati

Badges & Challenges Avanzati

Strumento Descrizione
get_available_badges Ottiene tutti i badge disponibili
get_in_progress_badges Ottiene badge in corso di completamento
get_available_badge_challenges Ottiene sfide badge disponibili
get_non_completed_badge_challenges Ottiene sfide badge non completate
get_in_progress_virtual_challenges Ottiene sfide virtuali in corso

Gear Avanzato

Strumento Descrizione
get_gear_activities Ottiene attività associate a un gear
remove_gear_from_activity Rimuove gear da un'attività

Training Plans

Strumento Descrizione
get_training_plans Ottiene piani di allenamento disponibili
get_training_plan_by_id Ottiene dettagli piano di allenamento

Salute Femminile

Strumento Descrizione
get_menstrual_data Ottiene dati ciclo mestruale per una data
get_pregnancy_summary Ottiene riepilogo gravidanza

Utility & Stats

Strumento Descrizione
get_activity_types Ottiene tutti i tipi di attività disponibili
get_primary_training_device Ottiene dispositivo di allenamento primario
count_activities Conta il numero totale di attività
get_fitness_stats Ottiene statistiche fitness in un range di date
add_hydration_data Aggiunge dati idratazione

🆕 Nuovi Strumenti v4.0

Social Features

Strumento Descrizione
get_activity_comments Ottiene commenti su un'attività
set_activity_privacy Imposta privacy attività (public/private)

Advanced Training Metrics

Strumento Descrizione
get_training_load Carico di allenamento settimanale e bilanciamento
get_load_ratio Rapporto acuto/cronico (injury risk indicator)
get_performance_condition Condizione di performance attuale

Advanced Sleep & Device

Strumento Descrizione
get_sleep_movement Movimenti durante il sonno e momenti irrequieti
get_device_alarms Sveglie configurate sui dispositivi
get_courses Percorsi/route salvati

Activity Analysis

Strumento Descrizione
compare_activities Confronta 2-5 attività fianco a fianco
find_similar_activities Trova attività simili per tipo/distanza/durata
analyze_training_period Analisi completa trends, volumi e pattern

🆕 Nuovi Strumenti v4.1

Gear Metadata

Strumento Descrizione
get_gear_types Tipi di equipaggiamento disponibili (scarpe, bici, etc.)
get_gear_makes Marche/brand disponibili

Gear Collections (CRUD completo)

Strumento Descrizione
get_gear_collections Lista tutte le collezioni di equipaggiamento
get_gear_collection Dettagli collezione (gear associati, tipi attività)
create_gear_collection Crea nuova collezione con associazione attività
update_gear_collection Aggiorna collezione (nome, gear, tipi attività)
delete_gear_collection Elimina una collezione

Prerequisiti

  • Node.js 18.0 o superiore
  • npm 8.0 o superiore
  • Claude Desktop installato
  • Account Garmin Connect con credenziali valide

🚀 Installazione Rapida (Bundle Precompilato)

Passaggi:

1. Installa Keytar (Raccomandato per sicurezza massima)

Per utilizzare il vault nativo del sistema operativo (Windows Credential Manager, macOS Keychain, Linux Secret Service), installa keytar:

npm install keytar

Nota: Se keytar non può essere installato, il sistema userà automaticamente un file criptato come fallback.

2. Scarica il bundle

Usa il browser oppure:

wget https://github.com/sedoglia/garmin-mcp-ts/releases/download/v4.1.0/diabetes-m-mcp.mcpb

3. Verifica l'integrità

Verifica l'integrità (opzionale ma consigliato):

wget https://github.com/sedoglia/garmin-mcp-ts/releases/download/v4.1.0/diabetes-m-mcp.mcpb.sha256
sha256sum -c garmin-mcp-ts.mcpb.sha256

4. Installa l'estensione in Claude Desktop (Metodo Consigliato)

Installazione tramite Custom Desktop Extensions:

  1. Apri Claude Desktop
  2. Vai su Impostazioni (Settings)
  3. Seleziona la scheda Estensioni (Extensions)
  4. Clicca su Impostazioni Avanzate (Advanced settings) e trova la sezione Extension Developer
  5. Clicca su "Installa Estensione..." (Install Extension…)
  6. Seleziona il file .mcpb (garmin-mcp-ts.mcpb scaricato al passaggio 2)
  7. Segui le indicazioni a schermo per completare l'installazione

Nota: Questo è il metodo più semplice e consigliato. L'estensione sarà automaticamente integrata in Claude Desktop senza necessità di configurazione manuale.


5. Configura le Credenziali Garmin (Metodo Sicuro - Raccomandato)

Apri una nuova chat su Claude Desktop e scrivi il seguente prompt:

Configura le credenziali di accesso per Garmin

Rispondi al messaggio fornendo:

  • Utente: la tua email Garmin
  • Password: la tua password Garmin

L'estensione provvederà automaticamente a criptare e salvare le credenziali in modo sicuro nel vault nativo del sistema operativo (Windows Credential Manager, macOS Keychain, Linux Secret Service).

Nota: Le credenziali NON verranno salvate in file di testo. Saranno sempre crittografate e gestite dal vault nativo del SO.

6. Riavvia Claude Desktop

  • Chiudi completamente l'applicazione
  • Riapri Claude Desktop
  • Verifica in Impostazioni → Sviluppatore lo stato della connessione ✅

🚀 Installazione (clonando il repository con GIT)

1. Clona il Repository

git clone https://github.com/sedoglia/garmin-mcp-ts.git
cd garmin-mcp-ts

2. Installa le Dipendenze

npm install

3. Installa Keytar (Raccomandato per sicurezza massima)

Per utilizzare il vault nativo del sistema operativo (Windows Credential Manager, macOS Keychain, Linux Secret Service), installa keytar:

npm install keytar

Nota: Se keytar non può essere installato, il sistema userà automaticamente un file criptato come fallback.

4. Compila il Progetto

npm run build

5. Configura le Credenziali Garmin (Metodo Sicuro - Raccomandato)

Esegui lo script di setup per configurare le credenziali in modo sicuro:

npm run setup-encryption

Questo script:

  1. Crea una directory sicura nella home dell'utente
  2. Genera una chiave di encryption e la salva nel vault nativo del SO
  3. Chiede email e password Garmin
  4. Cripta e salva le credenziali in modo sicuro

Per verificare la configurazione:

npm run check-encryption

5b. Metodo Alternativo (Legacy)

In alternativa, puoi creare un file .env nella root del progetto:

GARMIN_EMAIL=tua.email@esempio.com
GARMIN_PASSWORD=la_tua_password_garmin

Nota sulla Sicurezza: Non commitare mai il file .env nel controllo versione. È già incluso in .gitignore. Si consiglia di usare il metodo sicuro sopra descritto.

Configurazione di Claude Desktop

Posizione del File di Configurazione

Il file di configurazione di Claude Desktop si trova in:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Esempio di Configurazione

Aggiungi il server MCP Garmin al tuo claude_desktop_config.json:

{
  "mcpServers": {
    "garmin": {
      "command": "node",
      "args": ["C:\\percorso\\a\\garmin-mcp-ts\\dist\\index.js"]
    }
  }
}

Per macOS/Linux:

{
  "mcpServers": {
    "garmin": {
      "command": "node",
      "args": ["/percorso/a/garmin-mcp-ts/dist/index.js"]
    }
  }
}

Verifica della Configurazione

  1. Riavvia Claude Desktop dopo aver salvato la configurazione
  2. Cerca gli strumenti Garmin tra quelli disponibili (icona martello)
  3. Prova a chiedere: "Quali sono le mie attività recenti su Garmin?"

Esempi di Utilizzo

Interrogare le Attività Recenti

"Mostrami le mie ultime 5 attività Garmin"

"Quali attività ho fatto questa settimana?"

Ottenere Metriche di Salute

"Quali sono le mie metriche di salute per oggi?"

"Quanti passi ho fatto ieri?"

Analisi del Sonno

"Come ho dormito la scorsa notte?"

"Mostrami i dati del sonno del 10 dicembre"

Gestione Workout (NUOVO v2.0)

"Mostrami i miei workout pianificati"

"Scarica il mio ultimo workout"

Training Readiness (NUOVO v2.0)

"Qual è il mio Training Readiness di oggi?"

"Mostrami il mio Endurance Score"

Progressi e Statistiche (NUOVO v2.0)

"Quanti km ho corso questo mese?"

"Mostrami il sommario dei miei progressi dell'ultimo mese"

Health Metrics Avanzati (NUOVO v3.0)

"Qual è stata la mia frequenza cardiaca a riposo oggi?"

"Mostrami gli eventi di tutto il giorno per stress e body battery"

Salute Femminile (NUOVO v3.0)

"Come influisce il mio ciclo mestruale sulla mia performance di allenamento?"

"In base al mio ciclo, quale tipo di allenamento dovrei fare?"

Gestione Equipaggiamento (NUOVO v4.0/v4.1)

"Mostrami tutto il mio equipaggiamento Garmin"

"Quali tipi di equipaggiamento posso gestire?"

"Crea una collezione 'Scarpe Running' e associala alle attività di corsa"

"Mostrami le mie collezioni di equipaggiamento"

Commenti e Privacy (NUOVO v4.0)

"Mostrami i commenti sulla mia ultima attività"

"Imposta la mia ultima corsa come privata"

Metriche Training Avanzate (NUOVO v4.0)

"Come sta andando il mio carico di allenamento questo mese?"

"Qual è il mio rapporto acuto/cronico? Sono a rischio infortuni?"

Analisi Attività (NUOVO v4.0)

"Confronta le mie ultime 3 corse"

"Trova attività simili alla mia corsa di domenica scorsa"

"Analizza il mio allenamento dell'ultimo mese"

Test

Esegui i test con dati reali:

npm test

Il test script verifica tutti gli strumenti con il tuo account Garmin.

Architettura

garmin-mcp-ts/
├── src/
│   ├── index.ts           # Punto di ingresso, gestione stdout/stderr
│   ├── garmin/
│   │   ├── client.ts      # Client API Garmin Connect (2200+ righe)
│   │   ├── types.ts       # Definizioni tipi TypeScript
│   │   └── simple-login.ts # Utility standalone per test login
│   ├── mcp/
│   │   ├── server.ts      # Setup server MCP e gestori richieste
│   │   ├── tools.ts       # Definizioni strumenti e schemi (106 tools)
│   │   └── handlers.ts    # Logica implementazione strumenti
│   └── utils/
│       ├── constants.ts   # Costanti dell'applicazione
│       ├── errors.ts      # Classi di errore personalizzate
│       ├── logger.ts      # Utility di logging (solo stderr)
│       └── secure-storage.ts # Modulo di storage sicuro con encryption
├── scripts/
│   ├── setup-encryption.ts  # Script interattivo per setup credenziali
│   ├── check-encryption.ts  # Script diagnostico per verificare encryption
│   └── test-keytar.ts       # Script diagnostico per testare l'integrazione con Keytar
├── dist/                  # Output JavaScript compilato
├── package.json
└── tsconfig.json

🔐 Architettura di Sicurezza

Il sistema di sicurezza utilizza un'architettura a due livelli per proteggere le credenziali:

Dove vengono salvati i dati

Sistema Operativo Chiave di Encryption Dati Criptati
Windows Windows Credential Manager %LOCALAPPDATA%\garmin-mcp\
macOS Keychain (Face ID/Touch ID) ~/Library/Application Support/garmin-mcp/
Linux Secret Service (D-Bus/GNOME) ~/.config/garmin-mcp/

Come funziona

  1. Chiave di Encryption: Una chiave AES-256 viene generata alla prima esecuzione e salvata nel vault nativo del SO
  2. Credenziali: Email e password vengono cifrate con AES-256-GCM e salvate in garmin-credentials.enc
  3. Token OAuth: I token vengono cifrati e salvati in garmin-tokens.enc per riutilizzo sessione

Perché è sicuro

  • La chiave non è mai su disco in chiaro: È nel vault hardware/software del SO
  • Se il repository viene esposto: I dati rimangono inutili senza la chiave
  • Se il PC viene clonato: I dati sono inaccessibili (la chiave rimane nel vault dell'utente originale)
  • Encryption forte: AES-256-GCM con IV casuale per ogni operazione

Fallback

Se keytar non è disponibile (vault nativo), il sistema usa un file .encryption.key con permessi ristretti (0o600) nella directory dati.

Verifica stato encryption

Per verificare lo stato completo dell'encryption e keytar:

npm run check-encryption

Per testare l'integrazione con keytar:

npm run test-keytar

⚠️ Limitazioni Note

Limitazioni API Garmin OAuth

Alcuni endpoint e funzionalità non sono disponibili tramite l'API OAuth pubblica di Garmin:

Commenti alle Attività

  • Lettura commenti (get_activity_comments): Funzionante
  • Scrittura commenti (add_activity_comment): NON SUPPORTATO dall'API OAuth
    • I commenti possono essere aggiunti solo tramite:
      • Web interface di Garmin Connect
      • App mobile Garmin Connect
      • NON disponibile via API OAuth

Privacy Attività

  • Impostare privacy (set_activity_privacy): Parzialmente funzionante
    • public: Funziona correttamente
    • private: Funziona correttamente
    • followers: NON SUPPORTATO - restituisce errore 400 "PRIVACY_INVALID"

Gear Management

  • Lista gear (get_all_gear): Funzionante (via endpoint filterGear)
  • Aggiorna/elimina gear (update_gear, delete_gear): Funzionante
  • Creazione gear (create_gear): RIMOSSO - l'API OAuth restituisce 403 Forbidden
    • I gear possono essere creati solo tramite:
  • Collezioni gear (CRUD completo): Funzionante

Metriche Avanzate (Dipende dal Dispositivo)

Alcune metriche potrebbero non essere disponibili a seconda del modello di smartwatch:

Metrica Dispositivi Supportati Note
get_endurance_score Solo dispositivi premium (Fenix 7+, Forerunner 955+) Non disponibile su Instinct 2 Solar
get_training_readiness Solo Instinct 2X Non su Instinct 2 Solar standard
get_floors Richiede barometro Potrebbe non sincronizzarsi via API
get_intensity_minutes Tutti i dispositivi Potrebbe non sincronizzarsi via API
get_training_load Richiede 7+ giorni di dati Usa Firstbeat Analytics
get_load_ratio Richiede 4+ settimane consecutive Calcolato su storico esteso
get_performance_condition Durante attività Visibile sul watch, non sempre via API

Nota: Alcune metriche sono visibili nell'app Garmin Connect ma potrebbero non essere esposte tramite API OAuth.

Risoluzione dei Problemi

Problemi Comuni

Autenticazione Fallita

  1. Verifica che le tue credenziali Garmin siano corrette
  2. Controlla di poter accedere manualmente a connect.garmin.com
  3. Assicurati che non ci siano caratteri speciali nella password che potrebbero richiedere escape

Rate Limiting (Errore 429)

Garmin potrebbe bloccare temporaneamente le richieste se ne vengono fatte troppe in un breve periodo. Attendi qualche minuto e riprova.

Il Server Non Appare in Claude Desktop

  1. Controlla che il percorso a dist/index.js sia corretto e assoluto
  2. Verifica che la sintassi del JSON di configurazione sia valida
  3. Riavvia completamente Claude Desktop
  4. Controlla i log di Claude Desktop per eventuali errori

Visualizzare i Log

Il server produce informazioni diagnostiche su stderr. In Claude Desktop, controlla i log dell'applicazione:

  • Windows: %APPDATA%\Claude\logs\
  • macOS: ~/Library/Logs/Claude/

Crediti e Ringraziamenti

Questo progetto è stato ispirato e costruito sul lavoro di diversi progetti open-source:

Un ringraziamento speciale ai manutentori del pacchetto npm garmin-connect.

Contribuire

I contributi sono benvenuti! Sentiti libero di inviare una Pull Request.

  1. Fai il fork del repository
  2. Crea il tuo branch per la feature (git checkout -b feature/FunzionalitàIncredibile)
  3. Committa le tue modifiche (git commit -m 'Aggiunge una FunzionalitàIncredibile')
  4. Pusha il branch (git push origin feature/FunzionalitàIncredibile)
  5. Apri una Pull Request

Licenza

Questo progetto è rilasciato sotto Licenza MIT - vedi il file LICENSE per i dettagli.

Privacy Policy

Questo progetto rispetta la tua privacy. Per informazioni complete su come vengono gestiti i tuoi dati, consulta la nostra Privacy Policy.

Riepilogo

  • Dati raccolti: Credenziali Garmin (email e password) e token OAuth
  • Archiviazione: Tutti i dati sono crittografati localmente con AES-256-GCM e salvati nel vault nativo del sistema operativo
  • Trasmissione: I dati vengono trasmessi solo ai server Garmin Connect per l'autenticazione e il recupero dei dati
  • Nessun server di terze parti: Non raccogliamo, non memorizziamo e non trasmettiamo i tuoi dati a server di terze parti
  • Controllo locale: Tutti i dati rimangono sul tuo dispositivo sotto il tuo controllo

Disclaimer

Questo progetto non è affiliato, approvato o connesso a Garmin Ltd. o alle sue sussidiarie. Garmin e Garmin Connect sono marchi registrati di Garmin Ltd.


Supporta lo Sviluppo

Se questo progetto ti è utile, considera di supportarlo con una donazione!

PayPal

English | Italiano | Segnala Problemi

About

A Model Context Protocol (MCP) server that connects Claude Desktop to Garmin Connect, enabling natural language queries about your fitness activities, health metrics, sleep data, and more.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors