Eight Sleep MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| EIGHT_SLEEP_CACHE | No | sqlite to enable on-disk response cache. | |
| EIGHT_SLEEP_EMAIL | No | Account email. | |
| EIGHT_SLEEP_PASSWORD | No | Account password. | |
| EIGHT_SLEEP_CLIENT_ID | No | Override Android-app credential defaults (advanced). | |
| EIGHT_SLEEP_TOKEN_PATH | No | Override token storage path. | |
| EIGHT_SLEEP_PRIVACY_MODE | No | summary / structured / raw. | |
| EIGHT_SLEEP_CLIENT_SECRET | No | Override Android-app credential defaults (advanced). | |
| EIGHT_SLEEP_ALLOW_MUTATIONS | No | true to enable write tools. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| eight_sleep_profile_get | Returns the shared Delx Wellness profile (~/.delx-wellness/profile.json). Read-only. Surfaces preferred sleep window, age, goals, and devices so eight_sleep_nightly_summary and bedtime experiments can personalize recommendations. |
| eight_sleep_profile_update | Persist a partial patch to the shared Delx Wellness profile (~/.delx-wellness/profile.json). Requires explicit_user_intent: true. Rejects any field whose key looks like a credential (oauth/token/secret/password/cookie/refresh/api_key/bearer/credential/session_id) or whose value matches credential-shaped patterns (JWT, Bearer token, sk_live_, sk-proj-, xoxb-, github_pat_). |
| eight_sleep_onboarding | Returns the 11-question onboarding flow for the shared Delx Wellness profile (en or pt-BR). The agent should ask these questions next so Eight Sleep (and the rest of the wellness stack) can personalize responses — non-secret data only, stored at ~/.delx-wellness/profile.json. |
| eight_sleep_data_inventory | Inventory supported Eight Sleep domains, mutation tools, and recommended first calls. Does not call Eight Sleep APIs. |
| eight_sleep_capabilities | Explain supported Eight Sleep data, mutation gate, privacy modes, and project links. Does not call Eight Sleep or expose secrets. |
| eight_sleep_agent_manifest | Machine-readable install, runtime and client guidance for AI agents operating the Eight Sleep MCP. |
| eight_sleep_connection_status | Check env, local config, token file, Node version, privacy mode and mutation gate. Does not call Eight Sleep or expose secrets. |
| eight_sleep_cache_status | Show optional local SQLite cache status. Enable with EIGHT_SLEEP_CACHE=sqlite or EIGHT_SLEEP_CACHE=true. |
| eight_sleep_privacy_audit | Return local privacy, cache, token-path, env-presence, mutation gate and redaction posture without revealing secret values. |
| eight_sleep_logout | Delete the local Eight Sleep token file. Use when the user explicitly wants to disconnect. |
| eight_sleep_get_me | Return the authenticated user's Eight Sleep profile and assigned devices. |
| eight_sleep_get_user | Return Eight Sleep profile data for a specific user_id (defaults to authenticated user). |
| eight_sleep_get_current_device | Return the bed side currently assigned to the user (solo/left/right). |
| eight_sleep_get_temperature | Return current heating level, smart-schedule levels and side on/off state. |
| eight_sleep_get_alarms | Return the list of configured alarms and the recommended next alarm. |
| eight_sleep_get_base | Return adjustable-base state: leg angle, torso angle and preset. |
| eight_sleep_get_trends | Return nightly sleep sessions and scores for a date range. |
| eight_sleep_wellness_context | Build a normalized |
| eight_sleep_nightly_summary | Compute a multi-night sleep summary (best night, worst night, mean score, nights under 70 / over 85) from Eight Sleep trend data. One call replaces post-processing raw |
| eight_sleep_temperature_trend | Workflow tool: returns the current smart-temperature schedule (bedtime/initial/final level), per-night sleep scores for the last N nights, mean/median/range/most-common for bedtime AND wake temperature settings when the trends payload exposes them, and a correlation note (e.g. 'colder bedtime → higher sleep score') ONLY when 3+ paired nights support |r| >= 0.5. Reuses get_temperature + get_trends data — no extra API calls. |
| eight_sleep_efficiency | v0.2.2 — Sleep efficiency calculator. For each of the last N nights (default 7), computes time_in_bed_minutes (from presenceDuration), time_asleep_minutes (from sleepDuration), efficiency_pct = (asleep / in_bed) * 100, and efficiency_band (excellent ≥85, good 75-84, fair 65-74, poor <65). Returns nights_analyzed, mean / median / min-night / max-night efficiency, a nights_by_band breakdown, per_night array, and natural-language observations (mid-week drop, all-nights-same-band, single-night dip > 15 points below mean) ONLY when supported by the data. Reuses the existing /v1/users/{id}/trends payload — no extra API calls. Graceful degradation when upstream omits presenceDuration / sleepDuration (returns nights_analyzed: 0 with a clarifying note). |
| eight_sleep_set_temperature | Set the heating level (-100 .. 100). Optionally set a duration in seconds. Requires EIGHT_SLEEP_ALLOW_MUTATIONS=true. |
| eight_sleep_set_sideB | Turn the user's bed side on or off. Requires EIGHT_SLEEP_ALLOW_MUTATIONS=true. |
| eight_sleep_set_away_mode | Toggle away mode. Requires EIGHT_SLEEP_ALLOW_MUTATIONS=true. |
| eight_sleep_snooze_alarm | Snooze an actively ringing alarm. Requires EIGHT_SLEEP_ALLOW_MUTATIONS=true. |
| eight_sleep_dismiss_alarm | Dismiss an actively ringing alarm. Requires EIGHT_SLEEP_ALLOW_MUTATIONS=true. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| eight_sleep_nightly_review | Use Eight Sleep trend + alarm data to produce a non-medical recap of last night's sleep. |
| eight_sleep_bedtime_temperature_plan | Inspect the current temperature program and propose a small experiment for the next 3 nights. |
| eight_sleep_morning_alarm_check | Show the next configured alarm and whether thermal/vibration are enabled. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| eight_sleep_data_inventory | Static inventory of supported Eight Sleep domains, mutation tools and privacy modes. |
| eight_sleep_agent_manifest | Machine-readable install and operating instructions for AI agents. |
| eight_sleep_capabilities_resource | Static capabilities, data boundary, privacy modes, mutation tools and recommended flow. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/davidmosiah/eight-sleep-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server