Eight Sleep MCP 是一个用于访问 Eight Sleep 枕数据的 Model Context Protocol (MCP) 服务器,它能帮助用户便捷地获取和管理相关睡眠数据。
在使用 Eight Sleep MCP 前,您需要完成安装和配置,下面将为您详细介绍。
npm install
npm run build
您需要获取一次 Eight Sleep 的用户 ID 并添加到配置中,这样可以避免客户端在每次请求时都通过电子邮件/密码进行身份验证。您有两种获取方式:
选项 1:直接 API 调用
curl 命令:curl -X POST https://client-api.8slp.net/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"your_email","password":"your_password"}'
选项 2:使用 MCP 客户端
.env 文件:EIGHT_SLEEP_EMAIL=your_email
EIGHT_SLEEP_PASSWORD=your_password
node build/index.js getUsers
响应中将包含您的用户 ID,请保存此值。 3. 将用户 ID 添加到配置中。
创建一个 .env 文件,并按以下格式填写:
# Eight Sleep 身份验证
EIGHT_SLEEP_EMAIL=your_email
EIGHT_SLEEP_PASSWORD=your_password
EIGHT_SLEEP_USER_ID=your_user_id # 必填:使用上述任一方法获取用户 ID
EIGHT_SLEEP_CLIENT_ID=your_client_id
EIGHT_SLEEP_CLIENT_SECRET=your_client_secret
将以下配置添加到 Claude Desktop 的配置(设置 → 开发者 → 编辑配置)中:
{
"mcpServers": {
"eight_sleep": {
"command": "node",
"args": ["/absolute/path/to/eight-sleep-mcp/build/index.js"],
"env": {
"EIGHT_SLEEP_EMAIL": "your_email", // 一旦拥有 userid,电子邮件和密码不需要
"EIGHT_SLEEP_PASSWORD": "your_password", // 一旦拥有 userid,电子邮件和密码不需要
"EIGHT_SLEEP_USER_ID": "your_user_id",
"EIGHT_SLEEP_CLIENT_ID": "your_client_id", // 可选
"EIGHT_SLEEP_CLIENT_SECRET": "your_client_secret" // 可选
}
}
}
}
⚠️ 重要提示
将用户 ID 添加到配置中是必需的,以避免每次请求时都需要通过电子邮件/密码进行身份验证。请确保使用上述任一方法获取用户 ID。保存配置后,重新启动 Claude Desktop。
getUsers - 获取用户个人资料信息getUserPreferences - 获取用户偏好设置(单位,时区,床侧)updateUserPreferences - 更新用户偏好设置getDeviceStatus - 获取设备状态(在线,固件版本,水位)setDevicePower - 关闭/开启设备getPresence - 检查用户是否在床getTemperature - 获取当前温度设置setTemperature - 设置即时温度(-100 到 100)getTemperatureSchedules - 获取温度计划setTemperatureSchedule - 创建温度计划updateTemperatureSchedule - 更新温度计划deleteTemperatureSchedule - 删除温度计划getSleepData - 获取日期范围内的详细睡眠数据getSleepScore - 获取某一天的睡眠分数getSleepStages - 获取睡眠阶段(清醒,轻度,深度,REM)getHrv - 获取心率变异性数据getHeartRate - 获取心率数据getRespiratoryRate - 获取呼吸速率数据getSleepPosition - 获取睡眠姿势setTemperatureSchedule({
startTime: "22:00",
level: -20,
daysOfWeek: [0,1,2,3,4,5,6] // 每天
})