delx-living-body について
delx-living-bodyは、ローカルにインストールされたウェルネスコネクターを統合する、エージェント向けのメタMCPサーバーです。コネクターを自動検出し、LLMを呼び出さずに決定論的なルールで回答を生成します。
主な機能
- 0115種類のウェルネスコネクターを自動検出
- 02検出したコネクターを並列呼び出し
- 03ウェルネスコンテキストと日次ブリーフの統合
- 04ルールベースの回答と推論トレース
- 05StdioとオプションのStreamable HTTPに対応
活用シーン
- 01当日のトレーニング適性の評価
- 02睡眠・回復・栄養データの集約
- 03利用可能なコネクターと導入ヒントの確認
MCP 対応
ステータス、質問、日次ブリーフ、コンテキスト統合、ヘルスチェック、機能照会の6つのMCPツールを提供します。検出した子MCPサーバーを起動し、その結果を統合します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y delx-living-bodyDELX_LIVING_BODY_DETECT_TTLDetection cache TTL in seconds. Defaults to 60.DELX_LIVING_BODY_NO_CACHESet to true/1/yes to disable the SQLite response cache.DELX_LIVING_BODY_CACHE_PATHOverride the default cache path (~/.delx-living-body/cache.sqlite).DELX_LIVING_BODY_NPM_RUNNEROverride the npm runner binary used to spawn child connectors (default: npx).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
6掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| response_format | enum | いいえ | markdown | json |
詳細
delx-living-body
15 個のウェルネス MCP を、AI エージェント向けの統合された身体データレイヤーにまとめる Meta-MCP です。
「今日はハードにトレーニングすべき?」という問いに答えるには、これまでエージェントが WHOOP の回復指標、Garmin Body Battery、Oura の睡眠、Nourish の栄養情報、そして月経周期の段階を、5 つの別々の MCP サーバーで連携させる必要がありました。これはユーザーにとって不安定で、エージェントにとっても複雑です。
delx-living-body は、次の機能を備えた 単一の MCP サーバーです。
- ローカルにすでにインストールされている 15 個の Delx Wellness コネクターのうち、どれがあるかを 自動検出 します。手動設定は不要です。
- 適切な対象に対する並列呼び出しを 組み合わせます。
- ルールベースの推論を使って、自然言語の回答に加え、構造化された推論トレースとソースごとの信頼度を 統合します。LLM の呼び出しはありません。
一度インストールするだけで、統合された身体データレイヤーが利用できます。すでに使っているウェルネス MCP と組み合わせて動作します。
Compose マトリクス(*_series に対応する子と、要約のみの子):docs/compose-matrix.md。
ピンのずれ:docs/pin-drift.md。
エージェントのワークフローに役立ったら、リポジトリにスターを付けてください。スターが増えると、Delx Wellness の単一エントリーパスがほかの AI 開発者にも見つけやすくなります。
HTTP(v2 ステートレス)
デフォルトは stdio です。オプションの Streamable HTTP は、セッション ID なし、JSON レスポンス、ループバックのみです。
npx -y delx-living-body --http
# GET http://127.0.0.1:3030/health
# POST http://127.0.0.1:3030/mcp (sessionless)
環境変数:LIVING_BODY_MCP_HOST、LIVING_BODY_MCP_PORT、LIVING_BODY_MCP_TRANSPORT=http。
- アカウントなしですぐに試せます —
npx -y delx-living-body demo(「今日はハードにトレーニングすべき?」) - Claude · Cursor · ChatGPT · Hermes · OpenClaw で 実行できます — エージェント設定例を参照してください。
- ローカル優先 —
delx-living-bodyがトークンを読み取ることはありません。各子コネクターが独自の認証情報を読み取ります(プライバシーとセキュリティ)。 - どのコネクターを使えばよいですか? — Delx Wellness の案内ページから始めてください。
このサーバーが連携する主な 3 つのコネクターは、google-health-mcp(google-health-mcp-unofficial)、garmin-mcp(garmin-mcp-unofficial)、wellness-nourish(wellness-nourish)です。
インストール
npx -y delx-living-body
インストールはこれだけです。OAuth フローも API キーも不要です。delx-living-body 自体は認証機能を持ちません。各子コネクターがそれぞれの認証情報を処理します。
エージェントのデモ全編を見る →「今日はハードにトレーニングすべき?」(アカウント不要)
npx -y delx-living-body demo
クローン不要で、コマンドを1つ実行するだけです。このデモは実際のMCP サーバーを起動し、インストール済みコネクター3つ(WHOOP + Oura + Garmin)を模擬します(合成された身体データを含むバンドル済みのスタブ子プロセスを使用)。そして、エージェントが実行するのとまったく同じ方法で、stdio 経由で操作します。実際のアカウント、API キー、ネットワークは不要です。--scenario=red を追加すると、準備状況が低い場合(「今日は控える」)の経路を確認できます。オプションは demo --help で確認できます。出力の記録は
examples/demo-what-should-i-do-today.txt にあります。
2) living_body_ask question="What should I do today?"
────────────────────────────────────────────────────────────────
Recommendation:
Today at a glance: recovery 74, sleep 83, body battery 68.
Confidence: high Sources: whoop, oura, garmin
3) living_body_ask question="Should I train hard today?"
────────────────────────────────────────────────────────────────
Recommendation:
Green light for a hard session. Recovery and sleep both support high intensity.
Confidence: high Sources: whoop, oura, garmin
Reasoning trace (rule-based, no LLM):
Intent classified as: training_readiness
- (rec_high) Recovery 74 supports a high-intensity day.
- (sleep_good) Sleep score 83 is supporting recovery.
質問を1つ入力すると、3つすべてのコネクターから情報をまとめた回答が1つ返ります。推論トレースは安定しており、LLM 呼び出しは一切ありません。これが Body 分野のエントリーポイントです。一度インストールすれば、自然な言葉で質問するだけで、統合された回答を得られます。
ツール(6)
| ツール | 用途 |
|---|---|
living_body_status | どのコネクターが検出されているかを確認します。安全で、サブプロセスを起動しません。 |
living_body_ask | メインツールです。検出された子プロセスを並列で起動し、統合された回答を返します。explicit_user_intent: true が必要です。 |
living_body_daily_brief | 各コネクターの daily_summary から作成される Markdown のブリーフです。 |
living_body_compose_context | ソース全体を統合した、正規化済みの delx-wellness-context/v1 形式です。 |
living_body_health_check | 既知のコネクター15個すべてを確認し、見つからないものにはインストール方法を提示します。 |
living_body_capabilities | 自己説明と、コネクターごとの利用可能状況を示すマトリックスです。 |
検出の仕組み
既知の各コネクターについて、delx-living-body は次を確認します。
~/.<vendor>-mcp/tokens.jsonが存在する~/.<vendor>-mcp/config.jsonが存在する(Eight Sleep のようなパスワードベースのコネクター)- ベンダーの環境変数で指定されたパスにエクスポートファイルがある(Apple Health、Samsung Health)
~/.delx-wellness/profile.jsonにデバイスが記載されている
いずれかの確認に通ると → detected になります。どれにも該当しない場合は → missing となり、インストール方法が提示されます。ステートレスなコネクター(Cycle Coach)は常に利用可能とみなされます。
検出結果は60秒間キャッシュされます(DELX_LIVING_BODY_DETECT_TTL)。
既知のコネクター(15)
| ID | パッケージ | カテゴリー |
|---|---|---|
whoop | whoop-mcp-unofficial | リカバリー |
oura | oura-mcp-unofficial | 睡眠 |
garmin | garmin-mcp-unofficial | リカバリー |
strava | strava-mcp-unofficial | トレーニング |
fitbit | fitbit-mcp-unofficial | リカバリー |
google_health | google-health-mcp-unofficial | 複数分野 |
withings | withings-mcp-unofficial | 複数分野 |
apple_health | apple-health-mcp-unofficial | 複数分野 |
samsung_health | samsung-health-mcp-unofficial | 複数分野 |
polar | polar-mcp-unofficial | トレーニング |
eight_sleep | eight-sleep-mcp-unofficial | 睡眠 |
nourish | wellness-nourish | 栄養 |
air | wellness-air | 環境 |
cycle_coach | wellness-cycle-coach | サイクル |
cgm | wellness-cgm-mcp | 血糖値 |
統合の流れ
living_body_ask または living_body_compose_context を実行すると、次の処理が行われます。
- インストール済みのコネクターを検出します。
- 各コネクターを、StdioClientTransport 経由で
npx -y <package>を使って子 MCP として起動します。 - 各子プロセスの
*_wellness_context(または*_daily_summary)ツールを並列で呼び出します。 - 結果を、スコアを統合した
delx-wellness-context/v1形式に正規化します。 - シンセサイザー(ルールベース、オフライン)を実行し、推奨事項と推論トレースを生成します。
重要な点として、delx-living-body は LLM を一切呼び出しません。 シンセシスは決定論的なため、後続のエージェントは安定したトレースに基づいて推論できます。
シンセサイザーのルール
推論トレースに安定した rule_id とともに記録される、14個のヒューリスティックルールがあります。
rec_low/rec_mid/rec_high— リカバリースコアの区分bb_low/bb_high— Garmin Body Battery の区分sleep_poor/sleep_good— 睡眠スコアの区分strain_high— WHOOP のストレイン ≥ 18cycle_luteal/cycle_follicular— 月経周期のフェーズに関するシグナルload_high/load_low— トレーニング負荷の合計no_data— インストール済みのものがない場合。参考情報のみconflict— ソース間で不一致がある場合 → 信頼度が低い
プライバシーとセキュリティ
delx-living-bodyは子コネクターのトークンや設定ファイルを読み取りません。子コネクターはそれぞれ独自に認証情報を読み取ります。- 上流のシークレット環境変数(
*_CLIENT_SECRET、*_ACCESS_TOKEN、*_REFRESH_TOKEN、*_API_KEY、*_PASSWORD)は、子プロセスの起動前に削除されます。 - 子プロセスはデフォルトで
privacy_mode=structuredを指定して起動されます。rawが適用されるのは、呼び出し元がliving_body_askでexplicit_user_intent: trueを設定した場合のみです。 - 子プロセスの応答はそのままログに記録されません。記録されるのは件数と要約フィールドのみです。
- 子プロセスごとの呼び出しタイムアウトは30秒です。応答がない子プロセスは
timeoutとしてマークされ、スキップされます。 - キャッシュは
~/.delx-living-body/cache.sqliteに保存されます(chmod 600)。有効期間は5分です。DELX_LIVING_BODY_NO_CACHE=trueで無効にできます。 delx-living-body自体からの外部への通信はありません。
脅威モデルの詳細は SECURITY.md を参照してください。
環境変数
| 変数 | デフォルト | 用途 |
|---|---|---|
DELX_LIVING_BODY_DETECT_TTL | 60 | 検出キャッシュの有効期間(秒) |
DELX_LIVING_BODY_NO_CACHE | 未設定 | SQLite 応答キャッシュを無効化 |
DELX_LIVING_BODY_CACHE_PATH | ~/.delx-living-body/cache.sqlite | キャッシュパスを上書き |
DELX_LIVING_BODY_NPM_RUNNER | npx | 子プロセス起動に使う npm ランナーを上書き |
DELX_LIVING_BODY_CHILD_OVERRIDE_<ID> | 未設定 | 子プロセスのバイナリパスを上書き(テスト専用) |
LIVING_BODY_MCP_HOST / LIVING_BODY_MCP_PORT | 127.0.0.1 / 3030 | HTTP トランスポートのバインドアドレス |
CLI
living-body-mcp-server # MCP stdio server (default)
living-body-mcp-server --http # Local HTTP transport
living-body-mcp-server doctor # Detect installed connectors
living-body-mcp-server doctor --json # JSON output
living-body-mcp-server setup # Print profile path + install hints
living-body-mcp-server demo # Zero-secret end-to-end demo (--scenario=red, --help)
living-body-mcp-server version
Claude Desktop での使用
{
"mcpServers": {
"living-body": {
"command": "npx",
"args": ["-y", "delx-living-body"]
}
}
}
Cursor での使用
{
"mcpServers": {
"living-body": { "command": "npx", "args": ["-y", "delx-living-body"] }
}
}
医療上のアドバイスではありません
出力は、トレーニング/回復/睡眠/栄養に関するエージェント向けの運用コンテキストです。医療診断や臨床での使用を目的としたものではありません。
ライセンス
MIT — LICENSE を参照してください。David Mosiah によって開発されました。
高密度シリーズ
子コネクターが *_series ツール(agent-safe-series/v1)を公開している場合は、未加工のストリームダンプよりもそちらを優先してください。
スキルまたは MCP
同じパッケージに、2つの利用方法があります。MCP は stdio/HTTP でツールを登録します。スキルは、クライアントに MCP がない場合に CLI 経由で同じツールを操作できます。
npx -y delx-living-body call living_body_connection_status --json '{}'
skill/SKILL.md をエージェントのスキルディレクトリにコピーしてください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。