health4ai

io.github.jefflitt1Published by GitHub account jefflitt1v0.1.0Updated Oct 24, 2026

Query your Apple Health data from your own Supabase/Postgres via local MCP.

VerifiedSTDIODesktop onlyDatabasesLocation & Lifestyle

Overview

AI-generated overview

Local MCP server that lets an assistant query your own Apple Health data stored in your Supabase/Postgres project.

What you can do
  • Query Apple Health records from your own Supabase/Postgres database over stdio.
  • Read HealthKit rows for one specified Supabase Auth user.
  • Bucket results by calendar day using a configurable time zone.
  • No tool list is published; capabilities follow the README's description of querying your HealthKit data.
When to use it
Use it when you already sync Apple Health data into your own Supabase/Postgres project via the health4ai iOS app and want an assistant to answer questions about it locally.
Requirements
Python 3.11+ and the health4ai package installed locally, run over stdio from a desktop MCP client. Requires DATABASE_URL (Postgres connection string for your Supabase project, transaction pooler) and HEALTHKIT_USER_ID (UUID of the Supabase Auth user). Optional HEALTH4AI_TZ for day buckets. Network access to your database.
Before you install
DATABASE_URL is a secret containing your database password; keep it out of shared configs. The server reads health data from your database, so point it only at a project you own. HEALTHKIT_USER_ID must be a real UUID or the server refuses to start.

Installation

In SourceWeft

  1. Open health4ai in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

health4ai MCP server

Local MCP server that queries your Apple Health data from a Supabase/Postgres project you own. Use it with Claude Desktop, Claude Code, Cursor, or any stdio MCP client.

The data gets there from the free health4ai iOS app: download it on the App Store. Setup guide: https://health4.ai/setup/

Install

bash
pip install health4ai

Requires Python 3.11+. From a clone of the repo you can still run the previous path:

bash
pip install -r mcp-server/requirements.txtpython mcp-server/main.py

Configure

The server talks to your database over stdio. Set these environment variables (or a .env file in the working directory):

VariableRequiredSecretDescription
DATABASE_URLyesyesPostgres connection string for your Supabase project (transaction pooler; database password, not the service_role key). SUPABASE_DB_URL is accepted as an alias.
HEALTHKIT_USER_IDyesnoUUID of the Supabase Auth user whose HealthKit rows to query. The server refuses to start if this is unset, not a UUID, or the 00000000-… placeholder.
HEALTH4AI_TZnonoIANA time zone for calendar-day buckets (default UTC).

Full walkthrough: docs/SETUP.md.

Run

After pip install health4ai:

bash
health4ai# orpython -m health4ai

Claude Desktop / Claude Code / Cursor (mcp.json):

json
{  "mcpServers": {    "health4ai": {      "command": "health4ai",      "env": {        "DATABASE_URL": "postgresql://...",        "HEALTHKIT_USER_ID": "<your auth user UID>"      }    }  }}

From a git clone, "command": "python" and "args": ["/path/to/health4ai/mcp-server/main.py"] still work.

License

MIT. See the repository LICENSE.

Source: mcp-server/README.md at commit da0d274

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestSep 19, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts