Skip to main content
Glama
vgmakeev
by vgmakeev
README.md
# Nightscout MCP Server

Access your CGM data from [Nightscout](https://nightscout.github.io/) in AI assistants like Claude, Cursor, etc.

## Quick Start

```bash
uvx --from git+https://github.com/vgmakeev/nightscout-mcp nightscout-mcp
```

## Setup

Add to your MCP config (e.g. `~/.cursor/mcp.json`):

```json
{
  "mcpServers": {
    "nightscout": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/vgmakeev/nightscout-mcp", "nightscout-mcp"],
      "env": {
        "NIGHTSCOUT_URL": "https://YOUR_TOKEN@your-site.nightscout.com"
      }
    }
  }
}
```

## Configuration

| Variable | Description | Default |
|----------|-------------|---------|
| `NIGHTSCOUT_URL` | Nightscout URL (can include token: `https://token@site.com`) | Required |
| `NIGHTSCOUT_API_SECRET` | API secret (optional if using token in URL) | - |
| `GLUCOSE_UNITS` | Display units: `mmol` or `mgdl` | `mmol` |
| `GLUCOSE_LOW` | TIR lower bound (auto-detects units: <30 = mmol) | `3.9` (70 mg/dL) |
| `GLUCOSE_HIGH` | TIR upper bound (auto-detects units: <30 = mmol) | `7.8` (140 mg/dL) |

### Example with custom TIR range

```json
{
  "nightscout": {
    "command": "uvx",
    "args": ["--from", "git+https://github.com/vgmakeev/nightscout-mcp", "nightscout-mcp"],
    "env": {
      "NIGHTSCOUT_URL": "https://TOKEN@your-site.nightscout.com",
      "GLUCOSE_UNITS": "mmol",
      "GLUCOSE_LOW": "4.0",
      "GLUCOSE_HIGH": "10.0"
    }
  }
}
```

## Tools

| Tool | Description |
|------|-------------|
| `glucose_current` | Current glucose reading |
| `glucose_history` | History for last N hours |
| `analyze` | TIR, CV, HbA1c for any date range |
| `analyze_monthly` | Monthly breakdown for a year |
| `treatments` | Insulin and carbs log |
| `status` | Nightscout server status |
| `devices` | Pump, CGM, uploader status |

## Examples

Ask your AI assistant:
- "What's my current glucose?"
- "Show my glucose history for the last 6 hours"
- "Analyze my glucose control for December 2025"
- "Give me a monthly breakdown for 2025"

## License

MIT

TDQS

B3.4/5.0

Scored across 7 tools

Disambiguation4/5

Tools are mostly distinct, but 'glucose_history' and 'analyze' both support time ranges, which could cause misselection. However, descriptions clarify that one returns raw data and the other analyzes patterns.

Naming Consistency3/5

Tool names mix noun-based (glucose_current, treatments) and verb-based (analyze) conventions. There's no consistent verb_noun pattern, though names are still readable and predictable.

Tool Count5/5

7 tools is a well-scoped set for a Nightscout server, covering monitoring, analysis, and status without bloat.

Completeness4/5

The surface covers current glucose, history, analysis, treatments, devices, and status—core Nightscout interactions. Minor gaps like write operations or detailed alerts exist, but the read-only monitoring workflow is complete.

Maintenance

ActivityInactive
ResponsivenessNo issues