Skip to main content
Glama
sedoglia

Diabetes:M MCP Server

by sedoglia

Diabetes:M MCP Server

TypeScript Node.js MCP Licenza: MIT

PayPal

πŸ‡¬πŸ‡§ English Version

Server MCP (Model Context Protocol) per integrare i dati di Diabetes:M con Claude Desktop. Accedi alle tue letture glicemiche, dati insulina, diario alimentare e metriche di salute attraverso conversazioni in linguaggio naturale.

✨ Funzionalità

  • 11 Strumenti MCP per accesso completo ai dati del diabete

  • Sicurezza multi-livello con crittografia AES-256-GCM

  • Integrazione keyring di sistema per archiviazione sicura della chiave master (Windows Credential Vault, macOS Keychain, Linux Secret Service)

  • Credenziali criptate nel profilo utente (mai nei file di configurazione)

  • Autenticazione basata su cookie (reverse-engineered da analytics.diabetes-m.com)

  • Ricerca cibi intelligente dalle voci del tuo diario

  • Logging di audit completo

Related MCP server: dexcom-mcp

πŸ”§ Strumenti Disponibili

Gestione Credenziali

Strumento

Descrizione

setup_credentials

Configura il login Diabetes:M in modo sicuro

check_credentials

Verifica se le credenziali sono configurate

clear_credentials

Rimuovi le credenziali memorizzate

Strumenti Dati Salute

Strumento

Descrizione

get_logbook_entries

Recupera voci del diario (glicemia, insulina, carboidrati, note)

get_glucose_statistics

Ottieni distribuzione glucosio, media, HbA1c stimata

get_insulin_analysis

Analizza utilizzo insulina e rapporti carboidrati

get_iob

Calcola l'Insulina Attiva (IOB) - insulina ancora in azione nel corpo

get_ic_ratios

Ottieni i rapporti IC (insulina/carboidrati) e ISF configurati per fascia oraria

get_personal_metrics

Ottieni peso, BMI, pressione sanguigna, HbA1c

search_foods

Cerca nel database cibi (include i tuoi cibi personalizzati dal diario)

generate_health_report

Genera report salute completo


Prerequisiti

  • Node.js 18.0 o superiore

  • npm 8.0 o superiore

  • Claude Desktop installato

  • Account Diabetes-M 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/diabetes-m-mcp/releases/download/v1.1.0/diabetes-m-mcp.mcpb

3. Verifica l'integritΓ 

Verifica l'integritΓ  (opzionale ma consigliato):

wget https://github.com/sedoglia/diabetes-m-mcp/releases/download/v1.1.0/diabetes-m-mcp.mcpb.sha256
sha256sum -c diabetes-m-mcp.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 (diabetes-m-mcp.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 Diabetes-M (Metodo Sicuro - Raccomandato)

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

Configura le credenziali di accesso per Diabetes-M

Rispondi al messaggio fornendo:

  • Utente: la tua email Diabetes-M

  • Password: la tua password Diabetes-M

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/diabetes-m-mcp
cd diabetes-m-mcp

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 Diabetes-M (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 Diabetes-M

  4. Cripta e salva le credenziali in modo sicuro

Per verificare la configurazione:

npm run check-encryption

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.

6. 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 Diabetes-M al tuo claude_desktop_config.json:

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

Per macOS/Linux:

{
  "mcpServers": {
    "Diabetes-M": {
      "command": "node",
      "args": ["/percorso/a/diabetes-m-mcp/dist/index.js"]
    }
  }
}

Verifica della Configurazione

  1. Riavvia Claude Desktop dopo aver salvato la configurazione

  2. Cerca gli strumenti Diabetes-M tra quelli disponibili (icona martello)

  3. Prova a chiedere: "Quali sono le mie attivitΓ  recenti su Diabetes-M?"

πŸ’¬ Esempi d'Uso

Configurazione Credenziali

"Configura le mie credenziali Diabetes:M con username mioutente e password miapassword"

Verifica Stato Credenziali

"Verifica lo stato delle mie credenziali Diabetes:M"

Ottieni Voci Diario

"Mostrami le voci del diario degli ultimi 7 giorni"
"Quali erano le mie letture glicemiche ieri?"

Ottieni Statistiche Glucosio

"Mostrami le statistiche glucosio degli ultimi 30 giorni"
"Qual Γ¨ la mia HbA1c stimata?"
"Com'Γ¨ il mio tempo nel range questo mese?"

Analizza Uso Insulina

"Analizza il mio uso di insulina nelle ultime 2 settimane"
"Qual Γ¨ la mia dose media giornaliera di insulina?"

Ottieni Insulina Attiva (IOB)

"Quanta insulina attiva ho in questo momento?"
"Calcola il mio IOB con DIA di 4 ore"
"Mostrami l'insulina on board attuale"

Ottieni Rapporti IC e ISF

"Quali sono i miei rapporti insulina/carboidrati?"
"Mostrami i rapporti IC per colazione, pranzo e cena"
"Qual Γ¨ il mio fattore di sensibilitΓ  insulinica?"

Ottieni Metriche Personali

"Quali sono le mie metriche di salute attuali?"
"Mostrami la cronologia di peso e pressione sanguigna"

Cerca Cibi

"Cerca 'polenta' nel database cibi"
"Trova le info nutrizionali per la pasta"

Genera Report Salute

"Genera un report dettagliato sulla salute per gli ultimi 90 giorni"

πŸ”’ Architettura di Sicurezza

Protezione Multi-Livello

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚               Livello 1: OS Keyring                 β”‚
β”‚  Chiave master in Windows Vault / macOS Keychain /  β”‚
β”‚  Linux Secret Service                               β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚           Livello 2: Crittografia a Riposo          β”‚
β”‚  AES-256-GCM β€’ IV/Salt casuali β€’ PBKDF2 (100K iter) β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚            Livello 3: Storage Sicuro                β”‚
β”‚  %LOCALAPPDATA%/diabetes-m-mcp/ (Win)               β”‚
β”‚  ~/Library/Application Support/diabetes-m-mcp/ (Mac)β”‚
β”‚  ~/.config/diabetes-m-mcp/ (Linux)                  β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚           Livello 4: Validazione Input              β”‚
β”‚  Schemi Zod β€’ Prevenzione SQL injection             β”‚
β”‚  Rate limiting (1 req/sec)                          β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚             Livello 5: Audit Logging                β”‚
β”‚  Identificatori hashati β€’ Log sensibili separati    β”‚
β”‚  Retention configurabile (default: 90 giorni)       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Posizioni di Storage

I file di configurazione sono salvati in percorsi specifici per ogni sistema operativo:

Sistema Operativo

Percorso

Windows

%LOCALAPPDATA%\diabetes-m-mcp\

macOS

~/Library/Application Support/diabetes-m-mcp/

Linux

~/.config/diabetes-m-mcp/

File

Scopo

diabetesm-credentials.enc

Credenziali criptate

diabetesm-tokens.enc

Token sessione criptati

diabetesm-audit.log

Log audit (dati hashati)

Nota: La chiave di crittografia master Γ¨ sempre salvata nel keyring nativo del sistema operativo (Windows Credential Vault, macOS Keychain, Linux Secret Service), non in questi file.

πŸ—οΈ Struttura Progetto

diabetes-m-mcp/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ index.ts              # Entry point
β”‚   β”œβ”€β”€ server.ts             # Setup server MCP
β”‚   β”œβ”€β”€ api/
β”‚   β”‚   β”œβ”€β”€ auth.ts           # Autenticazione (con gestione cookie)
β”‚   β”‚   β”œβ”€β”€ client.ts         # Client HTTP
β”‚   β”‚   └── endpoints.ts      # Endpoint API (reverse-engineered)
β”‚   β”œβ”€β”€ security/
β”‚   β”‚   β”œβ”€β”€ audit.ts          # Logging audit
β”‚   β”‚   β”œβ”€β”€ credentials.ts    # Gestione credenziali
β”‚   β”‚   β”œβ”€β”€ encryption.ts     # Crittografia AES-256-GCM
β”‚   β”‚   └── keyring.ts        # Integrazione keyring sistema
β”‚   β”œβ”€β”€ cache/
β”‚   β”‚   └── encrypted-cache.ts # Cache criptata
β”‚   β”œβ”€β”€ tools/
β”‚   β”‚   β”œβ”€β”€ setup-credentials.ts
β”‚   β”‚   β”œβ”€β”€ get-logbook-entries.ts
β”‚   β”‚   β”œβ”€β”€ get-glucose-statistics.ts
β”‚   β”‚   β”œβ”€β”€ get-insulin-analysis.ts
β”‚   β”‚   β”œβ”€β”€ get-iob.ts         # Calcolo IOB (Insulin on Board)
β”‚   β”‚   β”œβ”€β”€ get-ic-ratios.ts   # Rapporti IC e ISF per fascia oraria
β”‚   β”‚   β”œβ”€β”€ get-personal-metrics.ts
β”‚   β”‚   β”œβ”€β”€ search-foods.ts    # Cerca in API + voci diario
β”‚   β”‚   └── generate-health-report.ts
β”‚   └── types/
β”‚       β”œβ”€β”€ api.ts            # Tipi API
β”‚       β”œβ”€β”€ security.ts       # Tipi sicurezza
β”‚       └── tools.ts          # Schemi strumenti
β”œβ”€β”€ package.json
β”œβ”€β”€ tsconfig.json
└── README.md

πŸ§ͺ Test

Il progetto include una suite di test completa per verificare il funzionamento di tutti gli strumenti MCP con dati reali.

Eseguire i Test

npm test

Prerequisiti

  • Le credenziali devono essere configurate (npm run setup-encryption)

  • Il progetto deve essere compilato (npm run build)

Strumenti Testati

Test

Descrizione

check_credentials

Verifica configurazione credenziali

get_logbook_entries (today)

Voci diario di oggi

get_logbook_entries (7days)

Voci diario ultimi 7 giorni

get_logbook_entries (date)

Voci diario per data specifica

get_glucose_statistics (7 days)

Statistiche glicemia 7 giorni

get_glucose_statistics (30 days)

Statistiche glicemia 30 giorni

get_insulin_analysis

Analisi insulina e rapporti

get_iob

Calcolo Insulina Attiva (IOB)

get_ic_ratios

Rapporti IC e ISF per fascia oraria

get_personal_metrics

Metriche personali

search_foods

Ricerca cibi (database + diario)

generate_health_report

Generazione report salute

Output Esempio

═══════════════════════════════════════════════════════════
  Diabetes:M MCP Server - Test Suite
═══════════════════════════════════════════════════════════

β–Έ Prerequisites
  βœ“ Credentials configured

β–Έ Credential Tools
  βœ“ check_credentials (5ms)

β–Έ Data Tools
  βœ“ get_logbook_entries (today) (2279ms)
  βœ“ get_logbook_entries (7days) (147ms)
  βœ“ get_glucose_statistics (7 days) (175ms)
  βœ“ get_insulin_analysis (7 days) (1116ms)
  βœ“ get_personal_metrics (105ms)
  βœ“ search_foods ("pasta") (1265ms)
  βœ“ generate_health_report (7 days) (1083ms)

═══════════════════════════════════════════════════════════
  Test Summary
═══════════════════════════════════════════════════════════

  Passed:  13
  Failed:  0

All tests passed! βœ“

πŸ” Risoluzione Problemi

Errore "No credentials configured"

Esegui lo strumento setup_credentials:

"Configura le mie credenziali Diabetes:M"

Autenticazione Fallita

  1. Verifica che email/username e password siano corretti

  2. Prova ad accedere manualmente a analytics.diabetes-m.com

  3. Riesegui setup_credentials con le credenziali corrette

Problemi Keyring

Se il keyring di sistema non Γ¨ disponibile:

  • Il server usa automaticamente lo storage file criptato come fallback

  • Le chiavi sono memorizzate in <config-dir>/master.key.enc

  • La sicurezza Γ¨ mantenuta attraverso crittografia specifica per macchina

Rate Limiting

Il server implementa rate limiting (1 richiesta/secondo). Se vedi errori di rate limit:

  • Attendi qualche secondo e riprova

  • Evita chiamate successive rapide

Ricerca Cibi Non Trova Risultati

La ricerca cibi dell'API Diabetes:M restituisce solo cibi dal database pubblico. Se cerchi i tuoi cibi personalizzati:

  • Lo strumento cerca automaticamente nelle voci del tuo diario per i cibi personalizzati

  • Assicurati di aver usato il cibo in una voce pasto negli ultimi 90 giorni

πŸ” Privacy Policy

Raccolta Dati

Questo server MCP raccoglie e tratta i seguenti dati:

  • Credenziali Diabetes:M (username/password): Memorizzate localmente solo in forma criptata

  • Dati salute: Letture glucosio, dosi insulina, log alimentari e metriche personali recuperate dal tuo account Diabetes:M

  • Log audit: Log operazioni hashati per monitoraggio sicurezza (nessun dato salute grezzo)

Archiviazione Dati

  • Tutti i dati sono memorizzati localmente sul tuo dispositivo nella directory specifica del SO:

    • Windows: %LOCALAPPDATA%\diabetes-m-mcp\

    • macOS: ~/Library/Application Support/diabetes-m-mcp/

    • Linux: ~/.config/diabetes-m-mcp/

  • Le credenziali sono criptate con crittografia AES-256-GCM

  • La chiave master di crittografia Γ¨ memorizzata nel tuo keyring del SO (Windows Credential Vault, macOS Keychain, o Linux Secret Service)

  • Nessun dato memorizzato in file di configurazione o testo semplice

Trasmissione Dati

  • I dati sono trasmessi solo ai server Diabetes:M (analytics.diabetes-m.com)

  • Tutte le connessioni usano crittografia HTTPS/TLS

  • Nessun dato inviato ad Anthropic, terze parti o altri server

Conservazione Dati

  • I dati in cache scadono automaticamente (TTL 5 minuti per dati sensibili)

  • I log audit sono conservati per 90 giorni di default

  • Puoi eliminare tutti i dati memorizzati in qualsiasi momento usando lo strumento clear_credentials

I Tuoi Diritti

  • Hai pieno controllo sui tuoi dati

  • Usa clear_credentials per rimuovere tutte le credenziali e token memorizzati

  • Elimina la directory di configurazione del SO per rimuovere tutti i dati locali

Servizi di Terze Parti

Questo server interagisce solo con:

  • Diabetes:M (analytics.diabetes-m.com): Il tuo fornitore dati salute

πŸ“œ Licenza

MIT License - Vedi file LICENSE

⚠️ Disclaimer

Questo strumento Γ¨ solo per gestione personale della salute e scopi informativi. Non fornisce consigli medici. Consulta sempre il tuo medico per decisioni mediche.

Non affiliato, approvato o connesso a Diabetes:M o Sirma Medical Systems.

πŸ™ Crediti

β˜• Supporto

Se trovi questo progetto utile, considera di supportare lo sviluppo:

PayPal

Available Tools

11 tools
check_credentialsA
Read-onlyIdempotent

Check if Diabetes:M credentials are configured and show security status. Does not reveal any credential information.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true. The description goes beyond by explicitly stating that it does not reveal credential information, which is a critical behavioral trait for security awareness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The key information is front-loaded: the purpose and the important caveat about not revealing credentials.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description completely covers what the tool does. It explains the check, security status, and privacy assurance. No gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so schema coverage is 100%. The description adds no parameter-specific info, which is appropriate. Baseline for 0 parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'check' and resource 'credentials', and distinguishes from siblings by specifying it does not reveal credential information. It also mentions 'security status', adding context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking credentials, but does not explicitly state when to use vs alternatives like setup_credentials or clear_credentials. Some guidance on when to check vs set up would be helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

clear_credentialsA
DestructiveIdempotent

Remove all stored Diabetes:M credentials and tokens from secure storage.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmYesMust be true to confirm deletion

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and idempotentHint=true. The description adds specificity about the resource ('Diabetes:M credentials and tokens from secure storage') but does not disclose the requirement for the 'confirm' parameter or the consequence of losing authentication.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is direct and free of unnecessary words, fitting the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description is mostly complete. Minor gap: it could explicitly mention the irreversibility, but annotations compensate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with the 'confirm' parameter fully described as 'Must be true to confirm deletion'. The description does not add any extra meaning about parameters beyond what is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Remove all stored... credentials and tokens') and the specific resource ('secure storage'), which directly distinguishes it from sibling tools like 'check_credentials' and 'setup_credentials'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no explicit warning about its destructive nature despite the destructiveHint annotation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_health_reportA
Read-onlyIdempotent

Generate a comprehensive health report suitable for medical professionals. Includes HbA1c analysis, glucose trends, insulin/carb analysis, and warnings.

ParametersJSON Schema
NameRequiredDescriptionDefault
periodYesPeriod for the health report
formatYesReport format type

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint, idempotentHint, and openWorldHint, so the behavioral safety is already covered. The description adds relevant context about the report's contents (warnings, trends) beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, contains no fluff, and immediately conveys the tool's purpose and content. Every sentence is necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While annotations cover safety, the description does not specify the return format (e.g., JSON, text) or provide enough detail about output structure for a tool with no output schema. It adequately lists included analyses but leaves some gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both period and format. The description does not add additional semantic details about how these parameters affect the report output, so it meets the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Generate' and the resource 'comprehensive health report'. It lists specific analyses (HbA1c, glucose trends, insulin/carb) that distinguish it from sibling tools like get_glucose_statistics or get_insulin_analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is for a high-level report for medical professionals, but it does not explicitly state when to use this vs siblings that return raw data. No alternative guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_glucose_statisticsA
Read-onlyIdempotent

Get glucose statistics including distribution (hypo/low/normal/high/hyper), average, min/max values, and estimated HbA1c for a specified period.

ParametersJSON Schema
NameRequiredDescriptionDefault
periodYesPeriod in days for statistics calculation

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly and idempotent behavior. The description adds value by detailing the specific statistics returned (distribution, average, etc.) and the period parameter, providing context beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is concise, front-loaded with the main purpose, and contains no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given only one parameter with full schema coverage, annotations covering safety, and no output schema required, the description sufficiently describes the tool's functionality and outputs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and already describes the period parameter with an enum. The description does not add significant new meaning beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'get', the resource 'glucose statistics', and lists specific outputs (distribution, average, min/max, HbA1c). It distinguishes from sibling tools like get_logbook_entries or get_insulin_analysis by focusing on aggregated statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for obtaining aggregated glucose statistics but does not explicitly state when to use this tool versus alternatives or provide exclusions. Without such guidance, an AI agent must infer from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_ic_ratiosA
Read-onlyIdempotent

Get the configured Insulin-to-Carb (IC) ratios and Insulin Sensitivity Factors (ISF) from your Diabetes:M profile. Returns values organized by meal time (breakfast, lunch, dinner, night). IC ratio indicates how many grams of carbs are covered by 1 unit of insulin. ISF indicates how much 1 unit of insulin lowers blood glucose (in mg/dL).

ParametersJSON Schema
NameRequiredDescriptionDefault
includeRawDataNoInclude the full 48-value arrays (every 30 minutes) in the response. Default is false.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint and idempotentHint. The description adds valuable behavioral context by explaining the return format (organized by meal time) and defining IC ratio and ISF, enhancing transparency beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences with no wasted words. The main purpose is front-loaded, followed by concise definitions. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides definitions of key values but lacks full response structure details. It is mostly complete for a simple read-only tool but could be improved with an example or more precise structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a well-described optional boolean parameter. The description does not add extra meaning beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets IC ratios and ISF from the Diabetes:M profile, organized by meal time. The verb 'Get' and resource are specific and the structure is mentioned, making it distinct from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like get_glucose_statistics or get_insulin_analysis. The description lacks context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_insulin_analysisA
Read-onlyIdempotent

Analyze insulin usage including daily totals (bolus/basal/correction), carbohydrate totals, and insulin-to-carb ratio analysis.

ParametersJSON Schema
NameRequiredDescriptionDefault
periodYesPeriod in days for insulin analysis

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds no behavioral context beyond what is inferred from the name and annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is concise and covers the main purpose, though slightly wordy. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one parameter and no output schema, the description adequately explains what the tool outputs. It is complete enough for a simple read-only analysis tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description does not add meaning beyond what the schema provides (enum values and description for 'period').

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool analyzes insulin usage, listing specific data points (daily totals, carbs, insulin-to-carb ratio). This distinguishes it from siblings like get_glucose_statistics or get_ic_ratios.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. It does not mention when not to use it or direct to sibling tools for other analyses.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_iobA
Read-onlyIdempotent

Calculate the current Insulin on Board (IOB) - the amount of active insulin still working in the body. Uses recent insulin doses from the logbook and calculates decay based on Duration of Insulin Action (DIA). Useful for dosing decisions and understanding current insulin activity.

ParametersJSON Schema
NameRequiredDescriptionDefault
diaNoDuration of Insulin Action in hours (how long insulin remains active). Default is 4 hours. Typical range: 3-5 hours depending on insulin type.
includeBasalNoWhether to include basal insulin in IOB calculation. Default is false (only bolus/correction insulin).

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint. Description adds non-obvious behavioral context: uses logbook data and DIA for decay calculation. Does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences that are front-loaded and contain no fluff. Every sentence adds value: definition and usage context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with good annotations and full schema coverage, the description is fairly complete. Missing only an indication of return format (a single number or structured object), but still adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with detailed descriptions for both parameters. Description reiterates DIA but adds no new semantics beyond schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb 'calculate' and the resource 'Insulin on Board (IOB)'. Distinguishes itself from sibling tools like get_insulin_analysis by specifically focusing on active insulin decay.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides context for use ('useful for dosing decisions') but does not explicitly state when not to use or compare with alternatives like get_insulin_analysis. Lacks explicit guidance on exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_logbook_entriesA
Read-onlyIdempotent

Retrieve logbook entries from Diabetes:M including glucose readings, insulin doses, carbs, and notes. You can specify either a predefined date range OR a specific date OR a custom date range with startDate and endDate. Returns data grouped by day with summaries optimized for analysis.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateRangeNoPredefined time range for logbook entries (use this OR date OR startDate+endDate)
dateNoSpecific date in YYYY-MM-DD format (e.g., 2025-12-25). Use this OR dateRange OR startDate+endDate.
startDateNoStart date in YYYY-MM-DD format for custom date range (must be used together with endDate)
endDateNoEnd date in YYYY-MM-DD format for custom date range (must be used together with startDate)
categoryNoOptional category filter (e.g., breakfast, lunch, dinner)

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint, idempotentHint, and openWorldHint, so the description adds value by stating the return structure ('grouped by day with summaries optimized for analysis'). No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no unnecessary words. The content is front-loaded with the core purpose, and the OR condition is clearly structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides a reasonable summary of the return structure (grouped by day). It adequately covers the date filtering options and optional category filter. Could mention more about pagination or limits, but overall sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds meaning by explaining the exclusive relationship between dateRange, date, and startDate+endDate, and that dateRange uses predefined strings. It also hints at the output format, going beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Retrieve' and the resource 'logbook entries', listing specific data types included. It distinguishes from sibling tools like get_glucose_statistics and get_insulin_analysis, which focus on analysis rather than raw entries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the three mutually exclusive date filtering options (predefined range, specific date, custom range) with clear OR conditions. However, it does not explicitly state when to use this tool versus siblings (e.g., for raw data vs. analysis) or provide when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_personal_metricsA
Read-onlyIdempotent

Retrieve personal health metrics including weight, BMI, BMR, daily calorie needs, insulin sensitivity, blood pressure, and latest HbA1c. This tool accesses sensitive personal health data.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint. The description adds that the tool accesses sensitive data, which is useful context beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first defines purpose and scope, second alerts about sensitivity. No redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description lists the metrics returned, which is sufficient. Could possibly detail output structure, but overall adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters, the baseline is 4. The description lists the returned metrics, adding meaning beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves personal health metrics and lists specific examples, but does not explicitly differentiate from sibling tools like get_glucose_statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., get_glucose_statistics for glucose data). Only a sensitivity warning is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_foodsA
Read-onlyIdempotent

Search the Diabetes:M food database for nutritional information. Returns foods with nutrition per 100g, serving sizes, and source.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query for food items
filterNoOptional filter for food source
languageNoLanguage for resultsEN

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, but the description adds behavioral context by detailing what is returned (nutrition per 100g, serving sizes, source). This goes beyond annotations and provides useful information for the agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the tool's purpose and return value. No unnecessary words, and it is front-loaded with the key action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool is a read-only search with good annotations and complete parameter schemas, the description adequately explains what the tool returns (nutrition per 100g, serving sizes, source) without needing an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all three parameters (query, filter, language). The description does not add additional semantic detail beyond what the schema already provides, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches the Diabetes:M food database for nutritional information, specifying the verb 'Search' and the resource 'food database'. It lists return details like nutrition per 100g, serving sizes, and source, distinguishing it from sibling tools that handle glucose, insulin, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for searching food nutritional data. While it does not explicitly state when not to use or provide alternatives, the context of sibling tools makes it clear this is the only food search tool, so the implied usage is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

setup_credentialsA
DestructiveIdempotent

Configure Diabetes:M login credentials. Credentials are encrypted and stored securely in your user profile - never in plain text or config files.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesYour Diabetes:M account email or username
passwordYesYour Diabetes:M account password

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide destructiveHint, idempotentHint, and openWorldHint. The description adds value by mentioning encryption and secure storage, and explicitly states credentials are never stored in plain text or config files. However, it does not disclose what happens on existing credentials or potential side effects of the openWorldHint, so transparency is only moderately improved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise: two sentences, no wasted words. The critical information (what the tool does and a key security guarantee) is front-loaded and easy to parse. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple credentials setup tool with two parameters and no output schema, the description covers the basic action and security. However, it lacks details on success/error behavior (e.g., confirmation, error messages) and does not mention how the openWorldHint affects external systems. Completeness is adequate but not thorough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%β€”both parameters (email, password) are already well-described in the input schema. The description adds no additional semantic information beyond what the schema provides. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Configure' and clearly identifies the resource 'Diabetes:M login credentials' and the action. It distinguishes from sibling tools like check_credentials (verify) and clear_credentials (remove), making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. For example, it doesn't mention that credentials should be set before using other tools, nor does it clarify behavior when credentials already exist (e.g., overwrite or error). The idempotentHint implies safe reuse, but the description does not convey this.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4/5.0
Disambiguation5/5

Each tool targets a distinct function: credential management, various data retrieval (glucose, insulin, IOB, logbook, metrics, food search), and report generation. There is no overlap in purpose.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern (e.g., get_glucose_statistics, setup_credentials, search_foods), making them predictable and easy for an agent to navigate.

Tool Count5/5

With 11 tools, the server covers the key aspects of diabetes management (credentials, glucose, insulin, food, reports) without being overloaded or too sparse.

Completeness4/5

The tool surface provides comprehensive read access and report generation, but lacks write operations for logging new entries (e.g., adding glucose readings or insulin doses), which may be a minor gap for some workflows.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables reading real-time continuous glucose monitor data from Dexcom sensors via the Share API, allowing Claude to access glucose levels, trends, and statistics.
  • F
    license
    A
    quality
    D
    maintenance
    Enables Claude Desktop to securely access FreeStyle LibreLink continuous glucose monitoring data, providing real-time readings, historical analysis, and health insights through natural language queries.
    8
    13

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sedoglia/diabetes-m-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server