mcpField
E
eight-sleep-mcp

eight-sleep-mcp

ローカル
wellness.delx.aiヘルスケア63 週間前に更新

eight-sleep-mcp について

Eight Sleep の利用者向けに、睡眠傾向、温度プログラム、アラーム、可動ベースの情報を取得するローカル MCP サーバーです。書き込み操作は既定で無効で、明示的な有効化が必要です。認証情報はローカルに保存され、機密項目は既定で削除されます。

主な機能

  1. 01睡眠傾向、温度プログラム、アラームの取得
  2. 02ユーザー、デバイス、可動ベース情報の取得
  3. 03複数夜の睡眠サマリー生成
  4. 04温度、左右、アラーム操作の任意有効化
  5. 05認証情報のローカル保存と機密項目の削除
  6. 06STDIO とセッションレス HTTP に対応

活用シーン

  1. 01最近の睡眠を要約し、良い夜と悪い夜を比較
  2. 02現在のスマート温度スケジュールを確認
  3. 03変更機能を有効にして温度やアラームを調整

MCP 対応

Eight Sleep モバイルアプリ API のデータと任意の書き込み操作を、MCP クライアント向けツールとして公開します。既定の STDIO に加え、ループバック限定のステートレス Streamable HTTP に対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"davidmosiah-eight-sleep": {
"command": "npx",
"args": [
"-y",
"eight-sleep-mcp-unofficial"
],
"env": {
"EIGHT_SLEEP_EMAIL": "<EIGHT_SLEEP_EMAIL>",
"EIGHT_SLEEP_PASSWORD": "<EIGHT_SLEEP_PASSWORD>",
"EIGHT_SLEEP_ALLOW_MUTATIONS": "<EIGHT_SLEEP_ALLOW_MUTATIONS>",
"EIGHT_SLEEP_PRIVACY_MODE": "<EIGHT_SLEEP_PRIVACY_MODE>",
"EIGHT_SLEEP_CACHE": "<EIGHT_SLEEP_CACHE>",
"EIGHT_SLEEP_TOKEN_PATH": "<EIGHT_SLEEP_TOKEN_PATH>",
"EIGHT_SLEEP_CLIENT_ID": "<EIGHT_SLEEP_CLIENT_ID>",
"EIGHT_SLEEP_CLIENT_SECRET": "<EIGHT_SLEEP_CLIENT_SECRET>"
}
}
}
}
起動コマンドnpx -y eight-sleep-mcp-unofficial
設定が必要な環境変数
EIGHT_SLEEP_EMAILEight Sleep account email. Optional when configured with eight-sleep-mcp-server setup.
EIGHT_SLEEP_PASSWORDシークレット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.
EIGHT_SLEEP_ALLOW_MUTATIONSSet to true to enable write tools (set_temperature, set_side, set_away_mode, snooze/dismiss alarm). Default false (read-only).
EIGHT_SLEEP_PRIVACY_MODEOptional payload mode: summary, structured, or raw. Defaults to structured.
EIGHT_SLEEP_CACHEOptional SQLite cache toggle. Set to true or sqlite to enable.
EIGHT_SLEEP_TOKEN_PATHシークレットOptional local token path. Defaults to ~/.eight-sleep-mcp/tokens.json.
EIGHT_SLEEP_CLIENT_IDOptional override for the Android-app client_id default.
EIGHT_SLEEP_CLIENT_SECRETシークレットOptional override for the Android-app client_secret default.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmeight-sleep-mcp-unofficial0.2.5

ツール

26

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
response_formatenumいいえmarkdown | json

詳細

Eight Sleep MCP

Eight Sleep の睡眠トレンド、温度プログラム、アラームを AI エージェントに共有し、必要に応じて夜間にポッドを調整できるようにします。
ローカルファーストの MCP サーバーです。認証情報がマシンの外に出ることはありません。

npm バージョン npm ダウンロード数 MIT ライセンス サイト

GitHub スター数 MCP 向けに構築 Hermes のワンコマンドセットアップ Eight Sleep

⚡ Delx Wellness for Hermes を使えば、ワンコマンドでインストールできます。 npx -y delx-wellness-hermes setup — ウェルネスカタログ内の他の項目と合わせて、このコネクターも事前設定します。

または、Claude Desktop/Cursor/OpenClaw/任意の MCP クライアントに単体で接続することもできます。以下のインストールセクションをご覧ください。


HTTP(v2 ステートレス)

デフォルトは stdio です。オプションで Streamable HTTP を使用できます。セッション ID は不要で、JSON レスポンスを返し、ループバック接続のみを受け付けます。

npx -y eight-sleep-mcp-unofficial --http
# GET  http://127.0.0.1:3000/health
# POST http://127.0.0.1:3000/mcp   (sessionless)

環境変数:EIGHT_SLEEP_MCP_HOST、EIGHT_SLEEP_MCP_PORT、EIGHT_SLEEP_MCP_TRANSPORT=http。

AI エージェントを Eight Sleep ポッドに接続するローカルファーストの MCP サーバーです。睡眠セッション、温度プログラム、アラーム、調整可能なベースにアクセスでき、書き込み操作には明示的な変更ゲートを設けています。

非公式プロジェクトです。 Eight Sleep, Inc. とは提携しておらず、同社による推奨やサポートも受けていません。Eight Sleep は各所有者の商標です。ご自身の Eight Sleep アカウントでのみご利用ください。

Eight Sleep は、安定した公開 API を提供していません。このパッケージは、モバイルアプリが使用するものと同じプライベートエンドポイント(auth-api.8slp.net、client-api.8slp.net、app-api.8slp.net)と通信します。上流のコミュニティプロジェクト(lukas-clarke/eight_sleep、mezz64/pyEight、steipete/eightctl)で十分に文書化されている手法に従っています。

Delx Wellness の一部です。ローカルファーストのウェルネス MCP コネクターのレジストリです。

このコネクターがエージェントのワークフローに役立った場合は、リポジトリにスターを付けてください。スターが増えると、ほかの AI 開発者がこのプロジェクトを見つけやすくなり、Delx がローカルファーストのウェルネス基盤を提供し続ける助けになります。

これが必要な理由

Eight Sleep は、毎晩のスコア、在床時間、tnt、スマート温度スケジュールなど、優れた睡眠データを提供しています。しかし、公開 API のないクローズドな iOS/Android アプリの中に閉じ込められています。現在、エージェントに取り込むには、OAuth のリバースエンジニアリング、トークン更新の管理、エンドポイント形式の正規化、タイムゾーンの癖への対処が必要です。

このパッケージは、これらすべてをローカルで処理し、Model Context Protocol を通じて Eight Sleep を利用できるようにします。設定を 1 つ追加するだけで、MCP 対応のエージェントが睡眠コンテキストを読み取れるようになり(オプトインした場合はポッドへのコマンドも書き込めます)。認証情報とトークンはお使いのマシンに保存されます。

60 秒でセットアップ

npx -y eight-sleep-mcp-unofficial setup   # interactive: email + password
npx -y eight-sleep-mcp-unofficial login   # persists the auth token
npx -y eight-sleep-mcp-unofficial doctor  # verifies you're ready

次に、これを MCP クライアントの設定に追加します。

{
  "mcpServers": {
    "eight_sleep": {
      "command": "npx",
      "args": ["-y", "eight-sleep-mcp-unofficial"]
    }
  }
}

Claude Desktop の場合は、setup --client claude を実行すると、設定が書き込まれます。

エージェントで試す

まずは次の 3 つを尋ねてみてください。

Use eight_sleep_connection_status to check setup, then run eight_sleep_get_me.
Tell me what device you find.
Call eight_sleep_get_trends for the last 7 days, response_format=json.
What's my best night and worst night, and why?
Call eight_sleep_get_temperature. Summarize the current smart schedule
(bedtime, initial sleep, final sleep) and tell me if I should tune it.

データの利用可否

このパッケージは Eight Sleep のモバイルアプリ API と通信します。連続的な生体センサーデータのストリームや BLE にはアクセスしません。

データツールソース
ユーザーとデバイスeight_sleep_get_me、eight_sleep_get_user、eight_sleep_get_current_deviceclient-api.8slp.net /users/...
温度プログラムeight_sleep_get_temperatureapp-api.8slp.net /v1/users/{id}/temperature
睡眠の傾向eight_sleep_get_trendsclient-api.8slp.net /users/{id}/trends
アラームeight_sleep_get_alarmsapp-api.8slp.net /v2/users/{id}/alarms
調整可能なベースeight_sleep_get_baseapp-api.8slp.net /v1/users/{id}/base
ワークフローツール
ツール内容
eight_sleep_nightly_summary複数夜の概要を返します。最高の夜、最低の夜、平均スコア、スコアが 70 未満/85 超の夜をまとめて取得でき、生の get_trends を後処理する必要はありません。
eight_sleep_wellness_context正規化された delx-wellness-context/v1 ペイロードを返します。他の Delx Wellness ツール(Nourish、Exercise Catalog、Telegram coaches)が Eight Sleep API の詳細を知らなくても、睡眠コンテキストを読み取れるようになります。

変更ツール(書き込みゲート)

デフォルトでは無効です。有効にするには、--allow-mutations を付けてセットアップを再実行するか、EIGHT_SLEEP_ALLOW_MUTATIONS を有効にします。デフォルトの MCP スニペットには、この設定を記述しないでください。

操作ツール
加熱レベルを設定eight_sleep_set_temperature
側をオン/オフにするeight_sleep_set_side
おやすみモードを切り替えるeight_sleep_set_away_mode
アラームをスヌーズするeight_sleep_snooze_alarm
アラームを停止するeight_sleep_dismiss_alarm

ゲートがオフの場合、変更ツールは mutations disabled という明示的なエラーを返すため、エージェントは無効になっていることを検知し、ユーザーにオプトインを求められます。

プライバシー

  • 認証情報は ~/.eight-sleep-mcp/config.json に保存され、パーミッションは chmod 600 に設定されます。
  • 認証トークンは ~/.eight-sleep-mcp/tokens.json に保存され、パーミッションは chmod 600 に設定されます。
  • メールアドレス、デバイスのシリアル番号、配送先住所、決済カード番号の末尾 4 桁などの機密フィールドは、デフォルトでツールの応答から削除されます。
  • EIGHT_SLEEP_PRIVACY_MODE:
    • summary — 最小限のフィールドのみを返します。
    • structured(デフォルト)— 識別情報を削除しつつ、ネストされた睡眠フィールド全体と、今後追加される上流フィールドを保持します。
    • raw — 上流のペイロード全体を返します(デバッグ専用)。

トレンドのリクエストでは、ネットワーク通信の前に、実在する YYYY-MM-DD 形式の日付、期間の順序、IANA タイムゾーン名が検証されます。

いつでも eight_sleep_privacy_audit を呼び出して、機密情報を公開することなく、現在のプライバシー設定を確認できます。

環境変数

変数用途
EIGHT_SLEEP_EMAILアカウントのメールアドレス。
EIGHT_SLEEP_PASSWORDアカウントのパスワード。
EIGHT_SLEEP_ALLOW_MUTATIONS書き込みツールを有効にします(デフォルトのスニペットでは未設定のままにしてください)。
EIGHT_SLEEP_PRIVACY_MODEsummary / structured / raw。
EIGHT_SLEEP_CACHEディスク上の応答キャッシュを有効にする場合は sqlite。
EIGHT_SLEEP_TOKEN_PATHトークンの保存先を上書きします。
EIGHT_SLEEP_CLIENT_ID / EIGHT_SLEEP_CLIENT_SECRETAndroid アプリの認証情報のデフォルト値を上書きします(上級者向け)。

安定性

Eight Sleep はモバイルアプリのエンドポイントを予告なく変更します。このコネクターでは、変更による不具合の兆候を把握するため、上流のコミュニティプロジェクト(lukas-clarke/eight_sleep、steipete/eightctl、mezz64/pyEight)を追跡しています。ツールが予期せず 4xx を返すようになった場合は、各リポジトリとプロジェクトのイシューで、最新の正常動作が確認された仕様を確認してください。

クレジット

  • lukas-clarke/eight_sleep — Home Assistant の統合。V2 エンドポイントに関する最新の参考情報です。
  • mezz64/pyEight — オリジナルの Python ライブラリ。認証とエンドポイントの検出に関する情報を提供します。
  • steipete/eightctl — 抽出済みのクライアント認証情報を使用する CLI 版です。
  • LiamSnow/opensleep — オープンソースのファームウェア全体を公開しています(この MCP が扱う範囲よりも詳細です)。

📧 お問い合わせとサポート

ライセンス

MIT — LICENSE を参照してください。

スキルまたは MCP

同じパッケージを、2 つの方法で利用できます。MCP は stdio/HTTP 上でツールを登録します。スキルを使えば、クライアントに MCP がない場合でも、CLI を通じて同じツールを操作できます。

npx -y eight-sleep-mcp-unofficial call eight_sleep_connection_status --json '{}'

skill/SKILL.md をエージェントのスキルディレクトリにコピーしてください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。