Marrow Health
JA
ダウンロード

エージェントをMarrowに接続する

Marrowは、Apple Healthのデータを、あなた自身のiPhoneまたはあなた自身のサーバーから、Model Context Protocolで提供します。iPhone上では読み取りツールが9つ、自分のサーバーでは13個(そのうち4つは、アプリ自身の言葉で、あなた自身の普段の値と比べて答えます)、スイッチの裏に書き込みツールが12個あり、認証はベアラートークン、アカウントはどこにも不要です。このページに、セットアップのすべてがあります。

別のマシンのエージェントを使う場合や、iPhoneがスリープ中も答えが必要な場合は、セルフホスト版ミラー(pip install marrow-mcp)とペアリングしてください。Claude Code、Cursor、OpenClaw向けに24時間365日答えます。内蔵のClaudeやChatGPTのコネクタからここに来た方は、ミラーならではの点をご覧ください.

Claude Code、Cursorなど、アプリごとのセットアップは、接続の中の専用ページにあります.

エージェントにやってもらう

私のApple Healthのデータを、あなたに接続したいです。Marrowは、アカウントも、この用途のためのサブスクリプションも要らない無料のiOSアプリで、MCPでデータを提供します。App Storeにあります:https://apps.apple.com/app/id6800819435。最初から最後まで案内してください。アプリのインストール、エクスポートからローカルMCPでサーバーをオンにすること、そして表示されるURLとベアラートークンを、Streamable HTTPサーバーとしてあなたのMCP設定に追加することです。その設定をあなた自身で編集できない場合は、どのファイルに何を貼り付けるかを正確に教えてください。セットアップのドキュメント:https://marrowhealthapp.com/mcp。接続できたら、直近7日間でhealth_summaryを呼び出して、目立つ点を教えてください。

1. サーバーをオンにする

初期状態ではオフです。アプリでエクスポート → ローカルMCPを開き、サーバーを有効にします。URL、トークン、QRコードが表示されます。サーバーはローカルネットワークの中だけで待ち受け、アプリは待ち受けている正確なアドレスを表示します。

2. クライアントに接続先を設定する

<phone-ip>と<token>を、アプリに表示された値に置き換えてください。

Claude Code

claude mcp add --transport http marrow \
  http://<phone-ip>:21212/mcp \
  --header "Authorization: Bearer <token>"

Claude Desktop、ワンクリック

パソコンでmarrow.mcpbをダウンロードして、ダブルクリックします。Claude Desktopが拡張機能をインストールし、上のURLとトークンを尋ねます。ターミナルは使いません。

Claude Desktop(手動)、Cursor、またはmcp.jsonを使うクライアント

{
  "mcpServers": {
    "marrow": {
      "type": "http",
      "url": "http://<phone-ip>:21212/mcp",
      "headers": { "Authorization": "Bearer <token>" }
    }
  }
}

手動で確認する

curl -s http://<phone-ip>:21212/mcp \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

ツール

読み取りは常に使えます。書き込みは2つ目のスイッチです。ローカルMCPでAIの書き込みを許可をオンにすると、iPhone上のサーバーに、クラウドMCPと同じ12個の書き込みツール(log_meal、log_water、log_weight、log_workout、log_strength、log_sleep、log_symptom、log_mood、edit_entry、delete_entry、set_targets、undo_entry)が並びます。変更はiPhoneにすぐ反映されてApple Healthにも書き込まれ、どれも元に戻せます。オフのときは、サーバーは読み取り専用です。

ツール返すもの
health_summaryアクティビティ、心臓、睡眠、栄養にわたる直近の日々
list_metrics追跡しているすべての指標。単位とカバー範囲つき
metric_daily任意の指標の日ごとの値。最大400日分
metric_samplesタイムスタンプとソースデバイスつきの生のレコード
workoutsすべてのソースのワークアウト。iPhoneでは、Marrowの筋トレセッションもセットごとに
nutrition_log栄養素の内訳がすべてわかる食事日記
strength_logすべてのトレーニングのセットを、セットの種類つきで。種目ごとの推定1RM、筋群ごとのボリューム。ウォームアップは、ボリュームにも記録にも含まれません
sleep_log起床日ごとに1晩分:就寝時刻、起床時刻、睡眠時間、ステージごとの分数(セルフホスト版ミラー)
symptoms_and_mood重症度つきの症状と、感情とその理由つきのState of Mindの記録(セルフホスト版ミラー)

セルフホスト版ミラーとクラウドMCPには、さらに4つあります。生データの読み取りが終わるところから始まります。各値は、アプリのホームと同じ計算で、あなた自身の直近の普段の値と比べて評価されます(その日自体は除外)。だからエージェントは、数値を一般の人々と比べて判断するのではなく、すでにあなたにとって正しい読みから始められます。

ツール返すもの
daily_brief1日分:主要な各指標の値とアプリ自身の言葉(あなたにとって普段どおり、普段より高め、普段をかなり下回る)、目標に対する食事と水分、昨夜の睡眠、行ったトレーニング、気分と症状、触れておく価値のあるフラグ
baselines指標ごとのあなたの普段の値:期間の平均とばらつき、最新の値のzスコアとその言葉、7日間の平均、月ごとの変化で示す90日間の傾向
what_changed直近1週間と、その前の4週間との比較:何が動いたか、それがあなたにとってどれだけ注目に値するか、食事、トレーニング、睡眠と就寝時刻の変化、届き始めた、または届かなくなったデータの流れ
data_qualityミラーが持っているデータと、その新しさ:指標ごとの最新の日、カバー範囲、頻度、ソース、古くなっていないか。エージェントが、欠けた部分を事実と取り違えないようにします

端末上のサーバーが提供するのは、最初の7つの生データのツールに、daily_briefとbaselinesを加えた9個の読み取りです。セルフホスト版ミラーは13個すべてを提供し、ホスト型のクラウドMCPのコピーも同じです。ミラーの読み取りはすべて、iPhoneのカレンダーに沿った、さかのぼる日数、またはfromとtoを受け付けます。また、ミラーは、表示に対応するクライアント向けに、4つのプロンプト(how_am_i_doing、weekly_review、doctor_prep、log_from_text)と4つのリソースも提供します。生のサンプルには、睡眠ステージと症状の重症度が含まれます。

list_metricsの先には172のApple Health指標があり、さらにnutrition_logとstrength_logの先にあるMarrow独自の食事日記と筋トレのデータがあって、アクティビティ、心臓、睡眠、身体、呼吸、モビリティ、聴覚、栄養、心、症状、周期、習慣をカバーしています。このページの機械可読版:tools.json.

iPhoneが使えないときも使い続ける

端末上のサーバーは、アプリが動いている間だけ応答します。24時間365日のアクセスには、セルフホスト版ミラーをペアリングしてください。Raspberry Pi、NAS、古いノートパソコンで動く、Pythonの標準ライブラリだけの1ファイルです。iPhoneのバックグラウンドでのプッシュが最新の状態を保ち、同じMCPの仕様を、独自のトークンでhttp://<server-ip>:8800/mcpに提供します。iPhoneのツールはアプリの指標キー(active_energy、heart_rate_variability)を使います。サーバーはそれらとAppleの短い名前(active_energy_burned)の両方を受け付けるので、エージェントは覚え直さずに行き来できます。オープンソースで、インストールできます:

pip install marrow-mcp
marrow-server

ソース:github.com/MarrowHealth/marrow-mcp。公式MCPレジストリにtech.skeletonarmy/marrowとして掲載されています.

どちらのサーバーも、ポートフォワードでインターネットに公開しないでください。どちらもLANまたはtailnet向けに設計されています。リモートアクセスが必要な場合は、tailscale serveなどを前に置いて、通信をHTTPSにし、ベアラートークンが見える前にデバイスが認証されるようにします。

トラブルシューティング

まず下のテストから始めます。AIが動いているパソコンから実行してください。問題がどちら側にあるかがわかります。Marrowのその接続のページに表示されるアドレスとトークンを使い、iPhoneではMarrowを開いたままにします。

curl -i http://<phone-ip>:21212/mcp \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
結果意味
HTTP/1.1 200 OKとツールの一覧iPhone側は問題ありません。問題はアプリの設定にあります。アドレス、トークン、またはHTTP(Streamable HTTP)以外のサーバータイプです。設定を直して、アプリを再起動してください。
401 Unauthorizedトークンが違うか、Marrowでこの接続がオフになっています。「あなたの接続」の各接続には専用のトークンがあり、1つをオフにすると、そのアプリだけが締め出され、ほかは使い続けられます。オンにするか、トークンをもう一度コピーしてください。
404 Not Foundとuse POST /mcpパスが違います。アドレスの末尾は/mcpです.
接続が拒否される、またはタイムアウトするまで応答がないパソコンがiPhoneに届いていません。下のリストを順に確認してください。

Claude Code、Cursor、VS Codeなど、アプリごとのセットアップと対処は、接続にあります.

費用

かかりません。エージェントからのアクセスは、バックグラウンド同期、自動エクスポート、CSVとJSONのエクスポート、バーコードスキャンとともに、無料のティアに入っています。Health Auto ExportはMarrowより先にMCPサーバーを出していて、出来も良いのですが、あちらはPremiumのサブスクリプションが必要です。言う価値があるのは、先に出したかどうかではなく、この違いです。

必要なもの