# marrow

A self-hosted companion server that keeps a copy of your Apple Health data on your own machine and hands it to an agent over MCP. Useful when you want to ask an AI about sleep and workouts.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 4
- Author: MarrowHealth
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/MarrowHealth/marrow-mcp
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/mcp/marrow

## What it does

The server builds a SQLite mirror of your Marrow data on hardware you control and answers an agent through MCP. Nothing leaves for a cloud: the phone pushes straight to your machine. Marrow itself is a free iOS app covering 178 series — 172 Apple Health types plus a meal diary and a set-by-set lifting log.

The server is a single Python file using only the standard library. Start it with `pip install "marrow-mcp[qr]"` then `marrow-server --port 8800 --data ./data`, from a clone, or with `docker compose up -d`. First run prints a pairing link and a token. Open that link on any screen, then in the app go to “Export, Server MCP, Pair with a server” and scan. After that the app's background pushes keep the mirror fresh while the app stays closed.

Pairing over plain http only works inside your own networks: a private or tailnet IPv4 address, a `.local` or `.ts.net` name, a short LAN name. A public address requires https via `--url https://...`. Skip the `[qr]` extra and the pairing page shows JSON instead of a code. Agents connect over Streamable HTTP with a bearer token; Claude has a ready `claude mcp add` line.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add marrow -- uvx marrow-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from marrow-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add marrow -- uvx marrow-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from marrow-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "marrow": {
            "command": "uvx",
            "args": [
                "marrow-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from marrow-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "marrow": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "marrow-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from marrow-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add marrow uvx marrow-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from marrow-mcp <command>

## When to use it
- ask an agent how sleep shifted after morning training started
- pull one day's food, water, sleep and training into a single brief
- compare recent days against the stretch before them
- spot metrics that stopped arriving from the phone
- list lifting sets with estimated 1RM per exercise

## Example prompts
- Show me what changed in my data over the last two weeks
- How did last night go, and how much time did I spend in each sleep stage?
- Give me a daily brief: food, water, workout, mood

## Similar
- [health-data](https://affpapa.org/en/nevibecode/skills/health-data.md) — skill · 393 installs
- [MetricBridge Apple Health](https://affpapa.org/en/nevibecode/mcp/metricbridge-apple-health.md) — MCP server · ★ 9
- [healthkit](https://affpapa.org/en/nevibecode/skills/healthkit.md) — skill · 3900 installs
- [Apple Health](https://affpapa.org/en/nevibecode/mcp/apple-health.md) — MCP server · ★ 576
- [wellally-tech](https://affpapa.org/en/nevibecode/skills/wellally-tech.md) — skill · ★ 964
- [axiom-data](https://affpapa.org/en/nevibecode/skills/axiom-data.md) — skill · 1300 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
