apple-health-semantic-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OSCAR_DATA_DIR | No | Folder containing oscar.db | |
| HEALTH_DATA_DIR | Yes | Directory produced by convert | |
| HEALTH_MAX_MEMORY | No | DuckDB memory ceiling, MB | 2048 |
| HEALTH_WINDOW_DAYS | No | Load only the last N days. '0' loads everything | 0 |
| HEALTH_NIGHT_SPLIT_HOUR | No | Hour separating one night from the next | 12 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| health_schemaA | List every available health table and return the curated semantic layer: what each metric measures, which aggregate function is valid for it, and the known traps in the data. Call this before writing any query. |
| health_queryA | Run a read-only DuckDB SQL query against the health tables. Call health_schema first so you know the columns and the correct aggregate function for each metric. |
| health_reportA | Generate a summary across heart rate, sleep, activity, blood oxygen, workouts and CPAP therapy for a period. The window is either a named relative period or explicit dates; the reply states which window was used and why, so check period.start and period.end against what you asked for. Use health_query for anything more specific. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
Each tool has a distinct role: health_schema provides metadata, health_query executes arbitrary SQL, and health_report generates a curated summary. The cross-references between them clarify when to use which, leaving no ambiguity.
All tools follow the consistent health_<noun> pattern: health_schema, health_query, health_report. This uniform convention makes the toolset predictable and easy to navigate.
With only three tools, the set is tightly scoped for a semantic layer: schema discovery, query execution, and report generation. Each tool is essential and the count is appropriate for the purpose.
The domain is read-only exploration of Apple Health data, and the three tools cover the full workflow: understanding the schema, running specific queries, and generating high-level summaries. There are no obvious gaps or dead ends.