Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
EIGHT_SLEEP_CACHENosqlite to enable on-disk response cache.
EIGHT_SLEEP_EMAILNoAccount email.
EIGHT_SLEEP_PASSWORDNoAccount password.
EIGHT_SLEEP_CLIENT_IDNoOverride Android-app credential defaults (advanced).
EIGHT_SLEEP_TOKEN_PATHNoOverride token storage path.
EIGHT_SLEEP_PRIVACY_MODENosummary / structured / raw.
EIGHT_SLEEP_CLIENT_SECRETNoOverride Android-app credential defaults (advanced).
EIGHT_SLEEP_ALLOW_MUTATIONSNotrue 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

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
eight_sleep_profile_getA

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_updateA

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_onboardingA

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_inventoryA

Inventory supported Eight Sleep domains, mutation tools, and recommended first calls. Does not call Eight Sleep APIs.

eight_sleep_capabilitiesA

Explain supported Eight Sleep data, mutation gate, privacy modes, and project links. Does not call Eight Sleep or expose secrets.

eight_sleep_agent_manifestB

Machine-readable install, runtime and client guidance for AI agents operating the Eight Sleep MCP.

eight_sleep_connection_statusA

Check env, local config, token file, Node version, privacy mode and mutation gate. Does not call Eight Sleep or expose secrets.

eight_sleep_cache_statusA

Show optional local SQLite cache status. Enable with EIGHT_SLEEP_CACHE=sqlite or EIGHT_SLEEP_CACHE=true.

eight_sleep_privacy_auditA

Return local privacy, cache, token-path, env-presence, mutation gate and redaction posture without revealing secret values.

eight_sleep_logoutA

Delete the local Eight Sleep token file. Gated by explicit_user_intent: true (requires explicit user intent / consent). Destructive local-only mutation — clears tokens on disk; not gated by EIGHT_SLEEP_ALLOW_MUTATIONS.

eight_sleep_get_meB

Return the authenticated user's Eight Sleep profile and assigned devices.

eight_sleep_get_userA

Return Eight Sleep profile data for a specific user_id (defaults to authenticated user).

eight_sleep_get_current_deviceA

Return the bed side currently assigned to the user (solo/left/right).

eight_sleep_get_temperatureA

Return current heating level, smart-schedule levels and side on/off state.

eight_sleep_get_alarmsA

Return the list of configured alarms and the recommended next alarm.

eight_sleep_get_baseA

Return adjustable-base state: leg angle, torso angle and preset.

eight_sleep_get_trendsB

Return nightly sleep sessions and scores for a date range.

eight_sleep_wellness_contextA

Build a normalized delx-wellness-context/v1 payload from recent Eight Sleep trends so other Delx Wellness tools (nourish, exercise catalog, Telegram coaches) can read sleep context without knowing the Eight Sleep API.

eight_sleep_nightly_summaryA

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 get_trends.

eight_sleep_temperature_trendA

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_efficiencyA

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_temperatureA

Set the heating level (-100 .. 100). Optionally set a duration in seconds. Gated by explicit_user_intent: true and EIGHT_SLEEP_ALLOW_MUTATIONS=true.

eight_sleep_set_sideA

Turn the user's bed side on or off. Gated by explicit_user_intent: true and EIGHT_SLEEP_ALLOW_MUTATIONS=true.

eight_sleep_set_away_modeA

Toggle away mode. Gated by explicit_user_intent: true and EIGHT_SLEEP_ALLOW_MUTATIONS=true.

eight_sleep_snooze_alarmA

Snooze an actively ringing alarm. Gated by explicit_user_intent: true and EIGHT_SLEEP_ALLOW_MUTATIONS=true.

eight_sleep_dismiss_alarmA

Dismiss an actively ringing alarm. Gated by explicit_user_intent: true and EIGHT_SLEEP_ALLOW_MUTATIONS=true.

Prompts

Interactive templates invoked by user choice

NameDescription
eight_sleep_nightly_reviewUse Eight Sleep trend + alarm data to produce a non-medical recap of last night's sleep.
eight_sleep_bedtime_temperature_planInspect the current temperature program and propose a small experiment for the next 3 nights.
eight_sleep_morning_alarm_checkShow the next configured alarm and whether thermal/vibration are enabled.

Resources

Contextual data attached and managed by the client

NameDescription
eight_sleep_data_inventoryStatic inventory of supported Eight Sleep domains, mutation tools and privacy modes.
eight_sleep_agent_manifestMachine-readable install and operating instructions for AI agents.
eight_sleep_capabilities_resourceStatic capabilities, data boundary, privacy modes, mutation tools and recommended flow.

TDQS

B3.4/5.0

Scored across 26 tools

Disambiguation3/5

Most tools are clearly distinct, but several meta/status tools (capabilities, connection_status, privacy_audit) all report mutation-gate and privacymode info, creating some overlap. Descriptions help differentiate them, but an agent could still be unsure which status tool to call.

Naming Consistency4/5

All tools share the eight_sleep_ prefix and use snake_case consistently. The majority follow get_*/set_* patterns, though a few deviate (profile_get/update instead of get_profile/update_profile) and several noun-only tools (nightly_summary, capabilities, connection_status) are not verb-first.

Tool Count2/5

26 tools is over the heavy threshold, and many are overlapping meta/status helpers (capabilities, connection_status, cache_status, privacy_audit, data_inventory, agent_manifest) that could be consolidated. Several analytic tools (nightly_summary, temperature_trend, efficiency) also overlap in purpose, inflating the count.

Completeness3/5

The surface covers key read/write operations: temperature, side, away, alarms (dismiss/snooze), trends, profile, and basic base get. However, there is no tool to create or update alarms, adjust smart schedules, or set base presets, which are notable gaps for a sleep-device control server.

Maintenance

ActivityMaintained
ResponsivenessSlow