連線 / 自動化操作
n8n 與 Marrow Health
本機 MCP伺服器 MCP自動化
兩種做法:Marrow 依排程把你的資料 POST 到 n8n 的 webhook,或讓 n8n 的 AI 智慧代理透過 MCP Client Tool 節點即時讀取。
「在 Marrow 中打開」適用於 Marrow 1.5 以上版本的 iPhone。
選哪一種?
- 本機 MCP:執行它的電腦與你的手機在同一個 Wi-Fi 或 tailnet 時使用。免費,Marrow 開著時才會回應。
- 伺服器 MCP:你有一台持續執行的小型伺服器時使用。免費,隨時都會回應。
自動化(Webhook 節點)免費
Marrow 依排程把 CSV 或 JSON POST 到一個網址,App 不用開著。你需要:一個你自己執行或代管的 n8n。
- 在 Marrow 中,打開「匯出」並點 n8n。開啟自動化。
- n8n:新增 Webhook 節點(POST),並複製它的 production URL。
- 在 Marrow 中:新增自動化操作。它的頁面會要求:
- 網址:Webhook 節點的 Production URL。Test URL 只在編輯器正在監聽時才會回應。看起來像
https://n8n.example.com/webhook/…. - 標頭:如果節點使用 Header Auth,請在這裡加入相同的 Authorization 標頭。
- 資料和頻率:資料種類、JSON 或 CSV,以及執行的頻率。
- 執行:先在 n8n 發布工作流程(舊版叫 Activate),這樣 Production URL 才會回應。然後點「立即執行」。
- 網址:Webhook 節點的 Production URL。Test URL 只在編輯器正在監聽時才會回應。看起來像
本機 MCP(MCP Client Tool 節點)免費
iPhone 上的一個伺服器。Marrow 開著時,它會回應同一個 Wi-Fi 或 tailnet 上的 App。沒有任何東西離開你的網路。你需要:你網路上自架的 n8n 可以讀取這支手機。n8n Cloud 需要你自己的伺服器。
- 在 Marrow 中,打開「匯出」並點 n8n。選擇本機 MCP。
- 開啟本機 MCP,並把 n8n 加到「你的連線」。Marrow 會顯示位址,以及為這個連線產生的權杖。
- n8n:MCP Client Tool 節點,Server Transport 選 HTTP Streamable,Authentication 選 Bearer,並填入下面的位址和權杖。
http://<phone-ip>:21212/mcp Token: <token>
顯示的是預留位置:Marrow 會填入你手機的位址和權杖。
伺服器 MCP(MCP Client Tool 節點)免費
Marrow 的開放原始碼伺服器,跑在你一直開著的電腦上(Pi、NAS 或舊筆電)。手機會讓它保持最新,而且它隨時都會回應。你需要:你網路上自架的 n8n 可以讀取這支手機。n8n Cloud 需要你自己的伺服器。
- 在一台你一直開著的電腦上執行 Marrow 的伺服器,並與 App 配對 (做法).
- 在 Marrow 中,打開「匯出」,點 n8n 並選擇伺服器 MCP。把它加到「你的連線」。Marrow 會顯示伺服器的位址。權杖就是你的伺服器啟動時印出的 mcp 權杖。
- n8n:MCP Client Tool 節點,Server Transport 選 HTTP Streamable,Authentication 選 Bearer,並填入下面的位址和權杖。
http://<server-ip>:8800/mcp Token: <token>
顯示的是預留位置:Marrow 會填入你伺服器的位址。權杖就是你的伺服器印出的那個。
它能做什麼
- 讀取。拿你自己的常態來評分的每日簡報、你的基準線、這週有什麼變化、逐日的任何指標、體能訓練、逐組的重訓、睡眠階段,以及你的飲食日記。
- 記錄。在 Marrow 中為這個方式開啟允許 AI 寫入後,你的 AI 就能在你要求時記錄餐點、水、體重、體能訓練、睡眠、症狀與心情。每筆記錄都可以復原。
試著這樣問
- 我今天表現如何?
- 這週我的睡眠和平常相比有什麼變化?
- 這個月我的哪些重訓項目進步了?
- 午餐記一份火雞肉三明治和一顆蘋果。
如果沒有用
在 n8n 中
- The requested webhook is not registered。那個位址沒有任何東西在監聽時,n8n 會回應這個 404。Production URL 只有在工作流程已發布時才會回應(新版 n8n 叫 Publish,舊版叫 Activate)。Test URL 只有在點了 Listen for test event 之後才會回應,持續 120 秒,且只能呼叫一次。
- Test URL 還是 Production URL。請把 Production URL 貼到 Marrow,也就是含
/webhook/的那個,不是/webhook-test/。正式執行的結果會顯示在工作流程的 Executions 分頁,不會顯示在畫布上。 - Server answered 403。Webhook 節點啟用 Header Auth 時,缺少或錯誤的標頭會得到 403。請在 Marrow 加入相同的 Authorization 標頭,值也要相同。
- n8n 顯示的網址以 localhost 開頭。在反向代理後面時,請把
N8N_WEBHOOK_URL(舊版是WEBHOOK_URL)設為你的公開位址,n8n 才會顯示正確的。 - MCP Client Tool 節點連不到手機。n8n Cloud 在 n8n 的伺服器上執行,所以連不到本機 MCP。自架在你 Wi-Fi 或 tailnet 上的 n8n 就可以。從 n8n Cloud 請使用公開 HTTPS 位址上的伺服器 MCP。
- 範圍太長會失敗。webhook 預設最多接受 16 MB(
N8N_PAYLOAD_SIZE_MAX)。請選較短的範圍或較少的指標。
本機 MCP 檢查
- 讓 Marrow 保持開啟。手機上的伺服器只有在 Marrow 開在前景時才會回應。你切換 App 或鎖定手機後,iOS 很快就會暫停它。再次打開 Marrow,它就會再次回應。
- 同一個 Wi-Fi 或 tailnet。電腦必須和手機在同一個 Wi-Fi 或 tailnet 上,不能是行動網路。訪客 Wi-Fi 常會讓裝置彼此連不到。透過 Tailscale 時,請使用手機的 tailnet 位址(以 100. 開頭)取代 Wi-Fi 位址,如果路由器配發了新的位址,也請重新檢查 Wi-Fi 位址。
- 401 Unauthorized。權杖不對,或這個連線在 Marrow 中是關閉的。每個連線都有自己的權杖,關閉一個就會把那個 App 擋在外面。請在「你的連線」開啟它,或重新複製權杖。
- 在電腦上測試。本機 MCP 指南中的 curl 指令可以顯示手機有沒有回應,以及出現什麼錯誤。
伺服器 MCP 檢查
- 先確認連得到伺服器。在執行你的 AI 的電腦上,打開
http://<server-ip>:8800/health。它不需要權杖就會回應。如果沒有,表示伺服器沒有在執行,或位址不對。接著試試伺服器 MCP 頁面上的 curl 測試. - 伺服器回應 401。智慧代理要用伺服器啟動時印出的 mcp 權杖。它也在伺服器資料夾的
.mcp-token檔案裡。手機的配對權杖對智慧代理無效。 - 資料舊了,或 Marrow 中顯示「無法傳送」。手機連不到伺服器,無法推送。請檢查伺服器是否在執行,以及 Marrow 中的伺服器位址從手機是否仍可連線。如果是你家中網路上的伺服器,Marrow 需要「本機網路」存取權限:設定、隱私權與安全性、本機網路。
- 讀得到,但無法記錄。在匯出、你的連線中,為這個伺服器開啟「允許 AI 寫入」。項目會在伺服器上等候,並在 Marrow 下次開啟或喚醒時送達。
自動化檢查
- 用「立即執行」測試。「立即執行」下面那一行會說明發生了什麼。任何 2xx 回應都算已送達。其他情況會顯示為 Server answered 加上狀態碼,或網路錯誤。
- 查看活動記錄。在該自動化操作中,更多選項、活動記錄會列出最近 30 次執行及各自的結果。
- 執行延遲。背景執行的時間由 iOS 決定,整天鎖著的手機會在下次解鎖時送出。「自上次跑步以來」會在下一次成功的執行補上進度。
- 家中網路上的接收端。Marrow 需要「本機網路」存取權限才連得到它(設定、隱私權與安全性、本機網路)。請在 Marrow 開著時點一次「立即執行」,iOS 才能詢問你:在背景時,它會直接拒絕,不會詢問。
- 開不起來。每個開啟中的自動化操作都算一個連線。免費方案同一時間可開 1 個連線。Marrow Pro 最多 10 個:AI、伺服器和自動化操作合計。