Eight Sleep MCP logo

Eight Sleep MCP

by elizabethtrykin

The Eight Sleep MCP server allows you to access and control your Eight Sleep Pod data. It provides an interface to retrieve sleep data, manage device settings, and control temperature.

View on GitHub

Last updated: N/A

What is Eight Sleep MCP?

The Eight Sleep MCP server is a Model Context Protocol server designed to interface with the Eight Sleep Pod, providing access to user data and device controls. It allows you to retrieve sleep data, manage device settings, and control temperature through a programmatic interface.

How to use Eight Sleep MCP?

To use the server, you need to clone the repository, install the dependencies using npm install, and build the project using npm run build. Configure your .env file with your Eight Sleep credentials, including your user ID (obtained through the provided methods). Then, you can integrate it with applications like Claude Desktop by adding the server configuration to its settings.

Key features of Eight Sleep MCP

  • Access to detailed sleep data (sleep stages, HRV, heart rate, respiratory rate)

  • Temperature control (setting immediate temperature and managing schedules)

  • Device control (turning device on/off, checking device status)

  • Alarm management (creating, updating, and deleting alarms)

  • User information retrieval (profile, preferences)

Use cases of Eight Sleep MCP

  • Integrating Eight Sleep data with other health and fitness platforms

  • Creating custom sleep analysis dashboards

  • Automating temperature adjustments based on sleep stages

  • Building smart home integrations that respond to sleep data

FAQ from Eight Sleep MCP

How do I get my Eight Sleep user ID?

You can obtain your user ID by either making a direct API call using curl or by running the MCP client once with your email and password configured in the .env file.

Why is the user ID required?

Adding your user ID to the configuration is required to avoid having to authenticate with email/password on every request, improving performance and security.

What data can I access with this server?

You can access a wide range of data, including sleep stages, heart rate variability (HRV), heart rate, respiratory rate, temperature settings, and alarm configurations.

How do I set the temperature?

You can set the temperature using the setTemperature function, specifying the desired level (between -100 and 100) and an optional duration in seconds.

Can I create temperature schedules?

Yes, you can create, update, and delete temperature schedules using the setTemperatureSchedule, updateTemperatureSchedule, and deleteTemperatureSchedule functions, respectively.