Eight Sleep MCP
An unofficial local-first MCP server that connects AI agents to Eight Sleep pods. It allows agents to read sleep trends, temperature schedules, alarms, and adjustable base states. Write operations like setting temperature or side are gated behind explicit environment variables to prevent accidental changes. Credentials remain local.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Review nightly sleep scores and trends
- Adjust bedtime temperature programs
- Check and snooze morning alarms
- Automate away-mode for travel
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
eight-sleep-mcp-unofficial 0.2.5
{
"version": "0.2.5",
"transport": "stdio",
"identifier": "eight-sleep-mcp-unofficial",
"registryType": "npm",
"environmentVariables": [
{
"name": "EIGHT_SLEEP_EMAIL",
"format": "string",
"description": "Eight Sleep account email. Optional when configured with eight-sleep-mcp-server setup."
},
{
"name": "EIGHT_SLEEP_PASSWORD",
"format": "string",
"description": "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."
},
{
"name": "EIGHT_SLEEP_ALLOW_MUTATIONS",
"format": "string",
"description": "Set to true to enable write tools (set_temperature, set_side, set_away_mode, snooze/dismiss alarm). Default false (read-only)."
},
{
"name": "EIGHT_SLEEP_PRIVACY_MODE",
"format": "string",
"description": "Optional payload mode: summary, structured, or raw. Defaults to structured."
},
{
"name": "EIGHT_SLEEP_CACHE",
"format": "string",
"description": "Optional SQLite cache toggle. Set to true or sqlite to enable."
},
{
"name": "EIGHT_SLEEP_TOKEN_PATH",
"format": "string",
"description": "Optional local token path. Defaults to ~/.eight-sleep-mcp/tokens.json."
},
{
"name": "EIGHT_SLEEP_CLIENT_ID",
"format": "string",
"description": "Optional override for the Android-app client_id default."
},
{
"name": "EIGHT_SLEEP_CLIENT_SECRET",
"format": "string",
"description": "Optional override for the Android-app client_secret default."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"eight-sleep-mcp": {
"command": "npx",
"args": [
"-y",
"eight-sleep-mcp-unofficial@0.2.5"
],
"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>"
}
}
}
}Cline
{
"mcpServers": {
"eight-sleep-mcp": {
"command": "npx",
"args": [
"-y",
"eight-sleep-mcp-unofficial@0.2.5"
],
"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
{
"servers": {
"eight-sleep-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"eight-sleep-mcp-unofficial@0.2.5"
],
"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 Desktop
{
"mcpServers": {
"eight-sleep-mcp": {
"command": "npx",
"args": [
"-y",
"eight-sleep-mcp-unofficial@0.2.5"
],
"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>"
}
}
}
}Let your agent find its tools
Find servers like Eight Sleep MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.