PluginBench
MCP Server
Active
MIT

io.github.davidmosiah/eight-sleep-mcp MCP Server

io.github.davidmosiah/eight-sleep-mcp

What is the io.github.davidmosiah/eight-sleep-mcp MCP server?

Unofficial Eight Sleep MCP server: read sleep trends, temperature, alarms; gated pod control.

How to install io.github.davidmosiah/eight-sleep-mcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • EIGHT_SLEEP_EMAIL

    Eight Sleep account email. Optional when configured with eight-sleep-mcp-server setup.

  • EIGHT_SLEEP_PASSWORD
    secret

    Eight Sleep account password. Prefer the setup command so this secret is stored in ~/.eight-sleep-mcp/config.json (chmod 600) instead of MCP client config.

  • EIGHT_SLEEP_ALLOW_MUTATIONS

    Set to true to enable write tools (set_temperature, set_side, set_away_mode, snooze/dismiss alarm). Default false (read-only).

  • EIGHT_SLEEP_PRIVACY_MODE

    Optional payload mode: summary, structured, or raw. Defaults to structured.

  • EIGHT_SLEEP_CACHE

    Optional SQLite cache toggle. Set to true or sqlite to enable.

  • EIGHT_SLEEP_TOKEN_PATH

    Optional local token path. Defaults to ~/.eight-sleep-mcp/tokens.json.

  • EIGHT_SLEEP_CLIENT_ID

    Optional override for the Android-app client_id default.

  • EIGHT_SLEEP_CLIENT_SECRET
    secret

    Optional override for the Android-app client_secret default.

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "eight-sleep-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "eight-sleep-mcp-unofficial"
      ],
      "env": {
        "EIGHT_SLEEP_EMAIL": "<YOUR_EIGHT_SLEEP_EMAIL>",
        "EIGHT_SLEEP_PASSWORD": "<YOUR_EIGHT_SLEEP_PASSWORD>",
        "EIGHT_SLEEP_ALLOW_MUTATIONS": "<YOUR_EIGHT_SLEEP_ALLOW_MUTATIONS>",
        "EIGHT_SLEEP_PRIVACY_MODE": "<YOUR_EIGHT_SLEEP_PRIVACY_MODE>",
        "EIGHT_SLEEP_CACHE": "<YOUR_EIGHT_SLEEP_CACHE>",
        "EIGHT_SLEEP_TOKEN_PATH": "<YOUR_EIGHT_SLEEP_TOKEN_PATH>",
        "EIGHT_SLEEP_CLIENT_ID": "<YOUR_EIGHT_SLEEP_CLIENT_ID>",
        "EIGHT_SLEEP_CLIENT_SECRET": "<YOUR_EIGHT_SLEEP_CLIENT_SECRET>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "eight-sleep-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "eight-sleep-mcp-unofficial"
      ],
      "env": {
        "EIGHT_SLEEP_EMAIL": "<YOUR_EIGHT_SLEEP_EMAIL>",
        "EIGHT_SLEEP_PASSWORD": "<YOUR_EIGHT_SLEEP_PASSWORD>",
        "EIGHT_SLEEP_ALLOW_MUTATIONS": "<YOUR_EIGHT_SLEEP_ALLOW_MUTATIONS>",
        "EIGHT_SLEEP_PRIVACY_MODE": "<YOUR_EIGHT_SLEEP_PRIVACY_MODE>",
        "EIGHT_SLEEP_CACHE": "<YOUR_EIGHT_SLEEP_CACHE>",
        "EIGHT_SLEEP_TOKEN_PATH": "<YOUR_EIGHT_SLEEP_TOKEN_PATH>",
        "EIGHT_SLEEP_CLIENT_ID": "<YOUR_EIGHT_SLEEP_CLIENT_ID>",
        "EIGHT_SLEEP_CLIENT_SECRET": "<YOUR_EIGHT_SLEEP_CLIENT_SECRET>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "eight-sleep-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "eight-sleep-mcp-unofficial"
      ],
      "env": {
        "EIGHT_SLEEP_EMAIL": "<YOUR_EIGHT_SLEEP_EMAIL>",
        "EIGHT_SLEEP_PASSWORD": "<YOUR_EIGHT_SLEEP_PASSWORD>",
        "EIGHT_SLEEP_ALLOW_MUTATIONS": "<YOUR_EIGHT_SLEEP_ALLOW_MUTATIONS>",
        "EIGHT_SLEEP_PRIVACY_MODE": "<YOUR_EIGHT_SLEEP_PRIVACY_MODE>",
        "EIGHT_SLEEP_CACHE": "<YOUR_EIGHT_SLEEP_CACHE>",
        "EIGHT_SLEEP_TOKEN_PATH": "<YOUR_EIGHT_SLEEP_TOKEN_PATH>",
        "EIGHT_SLEEP_CLIENT_ID": "<YOUR_EIGHT_SLEEP_CLIENT_ID>",
        "EIGHT_SLEEP_CLIENT_SECRET": "<YOUR_EIGHT_SLEEP_CLIENT_SECRET>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "eight-sleep-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "eight-sleep-mcp-unofficial"
      ],
      "env": {
        "EIGHT_SLEEP_EMAIL": "<YOUR_EIGHT_SLEEP_EMAIL>",
        "EIGHT_SLEEP_PASSWORD": "<YOUR_EIGHT_SLEEP_PASSWORD>",
        "EIGHT_SLEEP_ALLOW_MUTATIONS": "<YOUR_EIGHT_SLEEP_ALLOW_MUTATIONS>",
        "EIGHT_SLEEP_PRIVACY_MODE": "<YOUR_EIGHT_SLEEP_PRIVACY_MODE>",
        "EIGHT_SLEEP_CACHE": "<YOUR_EIGHT_SLEEP_CACHE>",
        "EIGHT_SLEEP_TOKEN_PATH": "<YOUR_EIGHT_SLEEP_TOKEN_PATH>",
        "EIGHT_SLEEP_CLIENT_ID": "<YOUR_EIGHT_SLEEP_CLIENT_ID>",
        "EIGHT_SLEEP_CLIENT_SECRET": "<YOUR_EIGHT_SLEEP_CLIENT_SECRET>"
      }
    }
  }
}
Claude Code
claude mcp add eight-sleep-mcp --env EIGHT_SLEEP_EMAIL=<YOUR_EIGHT_SLEEP_EMAIL> --env EIGHT_SLEEP_PASSWORD=<YOUR_EIGHT_SLEEP_PASSWORD> --env EIGHT_SLEEP_ALLOW_MUTATIONS=<YOUR_EIGHT_SLEEP_ALLOW_MUTATIONS> --env EIGHT_SLEEP_PRIVACY_MODE=<YOUR_EIGHT_SLEEP_PRIVACY_MODE> --env EIGHT_SLEEP_CACHE=<YOUR_EIGHT_SLEEP_CACHE> --env EIGHT_SLEEP_TOKEN_PATH=<YOUR_EIGHT_SLEEP_TOKEN_PATH> --env EIGHT_SLEEP_CLIENT_ID=<YOUR_EIGHT_SLEEP_CLIENT_ID> --env EIGHT_SLEEP_CLIENT_SECRET=<YOUR_EIGHT_SLEEP_CLIENT_SECRET> -- npx -y eight-sleep-mcp-unofficial

Related MCP servers

Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents

18
TypeScript
MIT
View repository →

Local-first nutrition MCP for AI agents: food, barcode, photo, intake, hydration, goals.

7
TypeScript
MIT
View repository →

Privacy-first, unofficial WHOOP MCP server for AI health, sleep, recovery, and performance agents.

5
TypeScript
MIT
View repository →

Privacy-first unofficial Garmin Connect MCP for AI health, sleep, activity & recovery agents.

4
TypeScript
MIT
View repository →

Unofficial local-first MCP server for Samsung Health personal-data CSV/ZIP exports.

3
TypeScript
MIT
View repository →

Unofficial local-first MCP server for Apple Health export data.

1
TypeScript
MIT
View repository →