Marrow Health
DA
Hent

Forbind en agent til Marrow

Marrow leverer dine Apple Health-data over Model Context Protocol, fra din egen iPhone eller din egen server. Syv skrivebeskyttede værktøjer på telefonen, tretten på din egen server (fire af dem svarer i appens egne vendinger, vurderet op imod dit eget normale), godkendelse med bearer-token, ingen konto nogen steder. Denne side er hele opsætningen.

Agent på en anden maskine, eller har du brug for svar, mens telefonen sover? Par det selvhostede spejl (pip install marrow-mcp): det svarer døgnet rundt til Claude Code, Cursor og OpenClaw. Hvis du kom hertil fra den indbyggede connector i Claude eller ChatGPT, så er her det, den kan, som de ikke kan.

Opsætning for én app ad gangen, Claude Code, Cursor, Codex og flere, står på sin egen side under forbindelser.

Lad din agent gøre det

Jeg vil forbinde mine egne Apple Health-data til dig. Marrow er en gratis iOS-app, der leverer dem over MCP, uden konto og uden at der kræves et abonnement til dette. Den findes i App Store: https://apps.apple.com/app/id6800819435. Gennemgå hele forløbet med mig: installation af appen, at slå serveren til under Eksporter og derefter Lokal MCP, og at føje den URL og det bearer-token, den viser mig, til din MCP-konfiguration som en Streamable HTTP-server. Hvis du ikke selv kan redigere den konfiguration, så fortæl mig den præcise fil og hvad jeg skal indsætte. Dokumentation om opsætning: https://marrowhealthapp.com/mcp. Når den er forbundet, så kald health_summary for de seneste 7 dage, og fortæl mig, hvad der skiller sig ud.

1. Slå serveren til

Den leveres slået fra. I appen: Eksporter → Lokal MCP, og slå så serveren til. Du får en URL, et token og en QR-kode. Serveren binder sig kun til dit lokale netværk, og appen viser den præcise adresse, den lytter på.

2. Peg din klient på den

Erstat <phone-ip> og <token> med det, appen viser dig.

Claude Code

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

Claude Desktop, ét klik

Hent marrow.mcpb på din computer, og dobbeltklik på den. Claude Desktop installerer udvidelsen og spørger om URL'en og tokenet ovenfor. Ingen terminal involveret.

Claude Desktop (manuelt), Cursor eller en hvilken som helst klient med en mcp.json

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

Tjek det i hånden

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"}'

Værktøjerne

Læsning er der altid. Skrivning er en anden kontakt. Fra Marrow 1.5 viser telefonens server de samme tolv skriveværktøjer som Cloud-MCP (log_meal, log_water, log_weight, log_workout, log_strength, log_sleep, log_symptom, log_mood, edit_entry, delete_entry, set_targets, undo_entry), når du slår Tillad AI at skrive til under Lokal MCP. De udføres med det samme på telefonen og skrives til Apple Health, og hver eneste kan fortrydes. Slået fra er serveren skrivebeskyttet.

VærktøjReturnerer
health_summarySeneste dage på tværs af aktivitet, hjerte, søvn og ernæring
list_metricsHver måling, der følges, med enheder og dækning
metric_dailyDaglige værdier for en hvilken som helst måling, op til 400 dage
metric_samplesRå poster med tidsstempler og kildeenheder
workoutsTræninger fra alle kilder. På telefonen også Marrows styrkesessioner sæt for sæt
nutrition_logKostdagbog med den fulde fordeling af næringsstoffer
strength_logHvert løftesæt med dets sættype, skønnet 1RM pr. øvelse, volumen pr. muskelgruppe. Opvarmning tæller aldrig med i volumen eller rekorder
sleep_logÉn nat pr. opvågningsdag: sengetid, opvågningstidspunkt, timers søvn, minutter pr. fase (selvhostet spejl)
symptoms_and_moodSymptomer med deres sværhedsgrad og State of Mind-poster med følelser og hvad de handlede om (selvhostet spejl)

Fire mere på det selvhostede spejl og på Cloud-MCP. De starter, hvor de rå læsninger stopper: hver værdi vurderes op imod dit eget løbende normale med samme matematik som på appens Hjem-side (selve dagen er udeladt), så en agent starter fra en aflæsning, der allerede er sand for dig, i stedet for at bedømme et tal op imod befolkningen.

VærktøjReturnerer
daily_briefÉn dag: hver nøglemåling med sin værdi og appens egen vending (normalt for dig, over dit normale, langt under dit normale), mad og vand mod dine mål, nattens søvn, udført træning, humør og symptomer og markeringer, der er værd at nævne
baselinesDit eget normale pr. måling: gennemsnit og spredning over vinduet, den seneste værdis z og vending, 7-dages gennemsnittet og 90-dages tendensen pr. måned
what_changedDen seneste uge mod de fire før: hvad der flyttede sig, og hvor bemærkelsesværdigt det er for dig, mad, træning, forskydninger i søvn og sengetid, strømme der begyndte eller holdt op med at komme
data_qualityHvad spejlet rummer, og hvor friskt det er: pr. måling den seneste dag, dækning, takt, kilder og om den er blevet forældet, så en agent aldrig forveksler et hul med et faktum

Serveren på enheden leverer de første syv rå værktøjer plus daily_brief og baselines (ni læsninger). Det selvhostede spejl leverer alle tretten, og det gør den hostede kopi i Cloud-MCP også. Hver læsning på spejlet tager dage tilbage eller fra og til på telefonens kalender, og spejlet tilbyder også fire prompter (how_am_i_doing, weekly_review, doctor_prep, log_from_text) og fire ressourcer til klienter, der viser dem. Rå prøver rummer søvnfaser og sværhedsgrader af symptomer.

Der er 172 Apple Health-målinger bag list_metrics plus Marrows egne data om dagbog og styrke bag nutrition_log og strength_log, der dækker aktivitet, hjerte, søvn, krop, åndedræt, bevægelighed, hørelse, ernæring, sind, symptomer, cyklus og vaner. Maskinlæsbar version af denne side: tools.json.

Hold det kørende, når telefonen ikke er

Serveren på enheden svarer, mens appen kører. Til adgang døgnet rundt kan du parre et selvhostet spejl: én Python-stdlib-fil på en Pi, en NAS eller en gammel bærbar. Telefonens afsendelser i baggrunden holder det opdateret, og det taler den samme MCP-overflade på http://<server-ip>:8800/mcp med sit eget token. Telefonens værktøjer bruger appens målingsnøgler (active_energy, heart_rate_variability). Serveren accepterer både dem og Apples korte navne (active_energy_burned), så en agent kan skifte mellem dem uden at lære om. Den har åben kildekode og kan installeres:

pip install marrow-mcp
marrow-server

Kilde: github.com/MarrowHealth/marrow-mcp. Opført i det officielle MCP-register som tech.skeletonarmy/marrow.

Åbn ikke porte til nogen af serverne ud til det åbne internet. Begge er lavet til et LAN eller et tailnet. Hvis du har brug for fjernadgang, så sæt tailscale serve eller noget tilsvarende foran, så transporten er HTTPS, og enheden er godkendt, før bearer-tokenet overhovedet ses.

Fejlfinding

Start med testen nedenfor, kørt fra den computer, din AI kører på. Den fortæller dig, hvilken side problemet er på. Brug adressen og tokenet fra forbindelsens side i Marrow, med Marrow åben på telefonen.

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"}'
Det, du fårHvad det betyder
HTTP/1.1 200 OK og en liste over værktøjerTelefonen virker. Problemet ligger i din apps indstillinger: adressen, tokenet eller en servertype, der ikke er HTTP (Streamable HTTP). Ret konfigurationen, og genstart appen.
401 UnauthorizedTokenet er forkert, eller denne forbindelse er slået fra i Marrow. Hver forbindelse under Dine forbindelser har sit eget token, og når du slår en fra, låses den app ude, mens de andre bliver ved med at virke. Slå den til, eller kopier dens token igen.
404 Not Found med use POST /mcpStien er forkert. Adressen ender på /mcp.
Forbindelse afvist eller intet svar, indtil den får timeoutComputeren kan ikke nå telefonen. Gennemgå listen nedenfor.

Opsætning og løsninger for én app ad gangen, Claude Code, Cursor, VS Code og flere, står under forbindelser.

Hvad det koster

Ingenting. Agentadgang er med i det gratis niveau sammen med synkronisering i baggrunden, automatisk eksport, eksport som CSV og JSON og stregkodescanning. Health Auto Export udgav en MCP-server før Marrow, og den er god, men deres kræver et Premium-abonnement. Den forskel, ikke at være først, er den påstand, der er værd at fremsætte.

Krav