Best Apple Health MCP Servers Compared 2026: Zero-Dep vs DuckDB vs Health Auto Export

You want your AI agent reading your real Apple Health data, read-only, with nothing to host. More than a dozen MCP servers on GitHub promise that. We compared the four with the most use in depth: one needs zero dependencies and syncs itself from an iPhone, one needs Docker, Python and a database, one runs inside an existing export app, and one is a DuckDB package on npm. Facts are dated so you can check them.

By MetricBridge · Published 3 August 2026 · Updated 29 October 2026 · ~10 min read

AI-assisted, human reviewed. How we use AI

Disclosure. MetricBridge makes one of the products compared. Third-party facts come from their own pages and repositories, read on 27 October 2026.

Quick answer: which Apple Health MCP server should you use?

If you own an iPhone and want the least friction, choose health-export-mcp. Install the companion iOS app once, it auto-syncs your 194 Apple Health metrics (189 HealthKit types plus 5 derived glucose metrics) as clean JSON to iCloud. Point the MCP server at that folder. No Docker, no Python, no DuckDB, no manual XML export, no environment variables beyond a folder path. Your AI agents have live access to your health data in about two minutes.

If you would rather not install a companion app, or you already run DuckDB and want raw SQL over your health data, the-momentum (281 ★ on GitHub, read 27 October 2026) works. It parses Apple's export.xml into DuckDB (or Elasticsearch or ClickHouse) and exposes fixed summary, search, statistics and trend tools. Bigger setup cost, but you get every raw sample in a database. Its README now points to the team's Open Wearables platform, and its last commit was on 9 July 2026.

If you already use Health Auto Export and want an MCP server inside that app, it has one (423 ratings on the US App Store, averaging 4.3, read 27 October 2026). The app serves Streamable HTTP MCP on your LAN with a bearer token, and an open-source Node bridge speaks stdio for clients that need it. The trade: the server needs Premium, and the app must stay in the foreground while clients are connected.

If you want a lightweight npm DuckDB option, neiltron/apple-health-mcp (576 ★ on GitHub, read 27 October 2026, the most-starred project in this list) is the one to look at. Same DuckDB paradigm as the-momentum but packaged as an npm module instead of a Docker or Python setup, and it reads a CSV export rather than export.xml.

Side-by-side comparison table

Feature health-export-mcp the-momentum Health Auto Export neiltron
Runtime Node.js (zero-dep) Python + Docker / uv iOS app, built-in HTTP MCP server Node 22+ + DuckDB (npm)
Dependencies None beyond Node Docker, Python, DuckDB The app on iPhone, Premium DuckDB via npm
Data source Auto-synced JSON from iOS Manual export.xml → DuckDB HealthKit read by the app, served live Manual CSV export → DuckDB
Setup time ~2 minutes ~15 minutes ~8 minutes ~10 minutes
Historical depth Full history, backfilled on first run Full export.xml history What the app has read from HealthKit Whatever the CSV export covers
Data freshness Auto-sync (background, roughly hourly when iOS allows) Manual re-export required Live while the app is in the foreground Manual re-export required
MCP transport stdio (standard) stdio (standard) Streamable HTTP on the LAN (TCP legacy); stdio via the Node bridge stdio (standard)
Tools exposed 22 tools (20 read-only) 3 XML tools + 5 query tools per backend 8 tools (Node bridge) 3 query tools
iOS companion app Yes (MetricBridge) No Yes (Health Auto Export) No
On-device AI chat Yes (Ask + Weekly Brief) No No No
GitHub stars 6 ★ 281 ★ 68 ★ (Node bridge) 576 ★
License MIT MIT App closed source; bridge MIT MIT

Data note: Star counts and the App Store rating count were re-read on 27 October 2026 from the GitHub API and the US App Store; npm downloads are from the npm downloads API for the week of 3 to 9 October 2026. Setup times are from hands-on testing in August 2026. The MCP ecosystem moves fast, so check the live pages before you rely on any figure here.

1. health-export-mcp: zero-dependency Node with companion iOS app

health-export-mcp is an open-source MCP server by MetricBridge. It reads a JSON file written by the companion iOS app, MetricBridge, which reads 189 HealthKit types (194 metrics with the 5 derived glucose metrics) through Apple's native APIs and writes structured JSON with metric names, values, units, dates, and metadata already cleanly organized.

The server itself is pure Node.js with zero npm dependencies. It ships twenty-two purpose-built MCP tools, twenty of them deterministic and read-only: get_mcp_status, get_freshness, list_metrics, get_health_metrics, get_trends, compare_periods, get_structured_export, get_intraday, query_health_data, list_events, get_profile, get_workouts, get_sleep_sessions, get_cycle_context, correlate_metrics, and resolve_metric, plus add_event and remove_event, which write only an events file beside the export. It has 6 ★ on GitHub and 144 npm downloads in the week of 3 to 9 October 2026, so it is the smallest project here by community size.

Setup: Install the iOS app → grant HealthKit read access → turn on export to iCloud. The app syncs automatically. Then npx -y health-export-mcp on your computer. Add one JSON config block to any MCP client.

Pros: Fastest setup, auto-syncing data, zero dependencies, 22 tools (20 read-only), paired with an on-device health AI app (Ask chat + Weekly Brief) that shows provenance cards for every answer.

Cons: Requires an iPhone. The JSON cache is structured aggregates rather than raw individual HealthKit samples: fine for AI queries, unsuitable for research-grade raw sample analysis.

Get started: MetricBridge · health-export-mcp on GitHub · Setup guide for Claude

2. the-momentum/apple-health-mcp-server: DuckDB + Python/Docker

the-momentum/apple-health-mcp-server has 281 ★ on GitHub (read 27 October 2026). It parses Apple's raw export.xml into a database (DuckDB, Elasticsearch or ClickHouse) and exposes fixed tools: three for the import, then a health summary, record search, statistics by type, trend data and value search per backend. The agent picks the tool; there is no English-to-SQL step in the server.

The server requires either Docker (for containerized setup) or uv (for Python environment management). You need to manually export export.xml from your iPhone via the Health app → your profile picture → Export All Health Data, transfer it to your computer, and run the import process.

Pros: Every raw sample in a database you can query with SQL. A choice of three backends. No iPhone app required. Good documentation. MIT licensed.

Cons: Setup friction: manual XML export, Docker or uv plus Python, and a parse step that takes time on multi-gigabyte exports. Manual re-export needed for fresh data. The README now points to the team's Open Wearables platform, and the last commit to this server was on 9 July 2026.

See the full head-to-head: the-momentum vs MetricBridge: DuckDB vs Zero-Dependency Showdown

3. Health Auto Export: an MCP server inside the export app

Health Auto Export is an iOS app (iPhone, iPad, Mac and Apple Vision; there is no Android version) with 423 ratings on the US App Store, averaging 4.3 (read 27 October 2026). It exports health data to many destinations and, since 2026, runs an MCP server inside the app. Its help page recommends Streamable HTTP at http://{LAN_IP}:9000/mcp with a bearer token; TCP is the legacy transport. An open-source Node bridge (HealthyApps/health-auto-export-mcp-server, MIT, 68 ★, 8 tools) speaks stdio for clients such as Claude Desktop.

Pros: Mature export app with 150+ metrics and many destinations. Clients on the same LAN connect straight to the phone, so no computer has to hold a file. The bridge is open source.

Cons: The server needs Premium, and the help page says it stops when the app is backgrounded, so the phone must stay open on the app while clients are connected. It is LAN-only unless you add your own tunnel. The app itself is closed source. No on-device AI chat.

Health Auto Export is the longest-running export app in this list; the foreground requirement is the main thing to weigh. Source: the vendor's Server Connection guide, read 27 October 2026.

4. neiltron/apple-health-mcp: npm DuckDB variant

neiltron/apple-health-mcp is packaged as an npm module (@neiltron/apple-health-mcp). It follows the same DuckDB paradigm as the-momentum but wraps the whole thing in a Node.js package so you don't need Python or Docker, and it reads a CSV export made with a separate iPhone app rather than Apple's export.xml.

At 576 ★ (read 27 October 2026) it is the most-starred project in this comparison. Its npm package had 63 downloads in the week of 3 to 9 October 2026. It needs Node 22 or newer and ships three tools: schema, query and report.

Pros: npm-based, so Node.js developers can install it with one command. DuckDB query engine is fast for SQL-style analysis. MIT licensed.

Cons: It cannot read Apple's export.xml at all (its README says the format is not currently supported), so you need the separate Simple Health Export CSV app, and your history is whatever that CSV covers. Three tools. Every refresh is a manual re-export.

What about healthsync?

healthsync (74 ★, Go/SQLite, read 27 October 2026) deserves a mention even though it isn't an MCP server. It's a Go CLI that reads an Apple Health export.xml and writes a SQLite database, useful for developers who want to query their health data with raw SQL. It doesn't implement MCP natively, but you could wrap it in a custom MCP server. For most people, picking one of the four MCP-native options above will be simpler.

How the data model differs

The table above hides one of the most important differences: what your AI agent actually sees.

health-export-mcp serves pre-structured JSON with human-readable metric names ("Heart Rate Variability SDNN", "Resting Heart Rate"), values with units ("65 ms", "54 bpm"), and daily aggregates. The iOS app does the heavy lifting of reading HealthKit through Apple's native APIs and organizing the data into a clean schema. The MCP server doesn't parse anything: it just serves what the app provides.

the-momentum and neiltron load a manual export into DuckDB (the-momentum parses the raw export.xml, neiltron reads CSV files). The XML format uses Apple's internal HKObjectType identifiers (e.g., HKQuantityTypeIdentifierHeartRateVariabilitySDNN), and the agent has to map your question onto those identifiers through the server's search and statistics tools, or through SQL if you open the database yourself. It works; the mapping step is where a wrong metric identifier, time zone or aggregation can creep in.

Health Auto Export reads HealthKit on the phone and serves it live over its MCP server; the bridge's eight tools cover metrics, workouts, symptoms, state of mind, medications, cycle tracking, ECG and heart notifications. The payload shape is the app's own; its help pages document the transport more than the schema.

Privacy model comparison

All four servers run locally: none sends your health data to a cloud. But the practical privacy model differs:

  • health-export-mcp: iOS app reads HealthKit read-only (never modifies data). JSON cache goes to iCloud Drive (or a folder you pick). The MCP server is pure stdio with no outbound network calls: no telemetry, no analytics, no phone-home. Fully MIT open-source.
  • the-momentum: Runs locally, MIT open-source. The manual XML export means your raw export.xml (every HealthKit sample ever) sits in multiple locations during the transfer (iPhone, AirDrop/cloud, computer). Once imported into DuckDB, it's local-only.
  • Health Auto Export: The app is closed source; the Node bridge is MIT. The server listens on your local network with a bearer token (HTTPS optional), so nothing leaves your network unless you add a tunnel. Read the app's privacy policy for the rest.
  • neiltron: MIT open-source. Same manual file transfer privacy considerations as the-momentum.

Which one wins, and why

There's no universal winner. It depends on what you need.

If you own an iPhone and want to feed your health data to AI agents with zero friction, health-export-mcp wins. It pairs a zero-dependency server with an iOS app that auto-syncs your data and answers questions on device: you can ask questions directly on your iPhone and also export to Claude, Cursor, or any MCP agent. That's both use cases in one product, over an iPhone-only path with no companion app to keep open and no server of yours.

If you need raw DuckDB SQL access and don't mind the setup cost, the-momentum is the established choice: 281 stars, good docs, a choice of backends. Just plan for the 15-minute initial setup (our run) and remember you'll need to re-export XML for fresh data.

If you already pay for Health Auto Export, its built-in MCP server saves you a second app; plan around the foreground requirement and the LAN-only reach.

If you're an npm-native developer who wants DuckDB without Docker, neiltron is worth a look, with three tools and a CSV export step.

For the full health-export-mcp setup across every MCP client, see the Claude setup guide, the MCP server documentation, or the open-source repo. The metric list shows all 194, and on-device AI explains how the companion app answers questions without the export.

Try the zero-dependency Apple Health MCP server

194 Apple Health metrics as clean JSON. Twenty-two MCP tools, twenty of them read-only. Companion iOS app with auto-sync. Free 7-day trial: no account, nothing on our servers.

No health data reaches us: the app writes JSON to a folder you pick, and the server reads that folder. 194 metrics, 22 tools (20 read-only), 23 prompts. About two minutes to set up. $24.99 one time after a 7-day free trial, not a subscription. Works on any iPhone; Apple Intelligence is not needed for the export or MCP.

Frequently asked questions

How many Apple Health MCP servers are there in 2026?

GitHub search returns more than a dozen Apple Health MCP servers (read 27 October 2026). This guide compares the four with the most use in depth: health-export-mcp (zero-dependency Node.js with companion iOS app), the-momentum/apple-health-mcp-server (281 ★, DuckDB + Python/Docker), Health Auto Export (an MCP server built into the export app), and neiltron/apple-health-mcp (576 ★, DuckDB via npm, reads a CSV). A fifth tool, healthsync (74 ★, Go/SQLite), does not implement MCP natively but can be wrapped.

Which Apple Health MCP server is easiest to set up?

health-export-mcp is the easiest. Install the companion iOS app (auto-syncs to iCloud via HealthKit), then point the MCP server at that folder. No Docker, no Python, no manual XML export. Total setup is roughly 2 minutes. The other servers each add steps: the-momentum needs Docker or uv with Python plus a manual export.xml transfer, neiltron needs Node 22, DuckDB and a CSV export from a separate app, and Health Auto Export needs its Premium plan with the app kept in the foreground.

Which Apple Health MCP server has zero dependencies?

health-export-mcp ships zero npm dependencies: pure Node.js, with no companion app to keep open and no server of yours. the-momentum requires Docker (or uv) + Python + DuckDB. neiltron requires DuckDB via npm. Health Auto Export requires the app open in the foreground, a Premium plan, and a client on the same network.

Does any MCP server automatically keep my Apple Health data up to date?

health-export-mcp syncs automatically: the companion iOS app reads HealthKit on a schedule and writes fresh JSON to iCloud Drive (or your chosen destination), and the MCP server reads whatever is on disk, so there's no manual export step. MCP servers without an auto-syncing companion app require you to manually re-export export.xml from your iPhone and re-import it every time you want fresh data.

Which Apple Health MCP server has a companion iOS app?

Two MCP servers have companion mobile apps: health-export-mcp (paired with the MetricBridge iOS app, which also includes on-device AI chat with provenance cards) and Health Auto Export (the MCP server runs inside the iOS app itself). the-momentum and neiltron have no companion apps of their own: the-momentum relies on a manual export.xml from the built-in Apple Health export, and neiltron on a CSV made with a separate iPhone app.