Personal Health Data Plane & Scoped Model Context Protocol (MCP) Evidence Gateway
Engineered for quantified-self engineers, privacy-conscious longevity researchers, and AI builders who own multi-year archives from Apple Health (export.xml), Garmin (.fit), Oura, and Whoop. Vitalis resolves the dilemma between Vendor Truncation (mobile apps locking your data inside opaque 7-day readiness scores) and Cloud AI Exfiltration (pasting raw multi-year CSV/XML dumps into cloud LLMs).
Research preview & Non-medical notice: Vitalis is a desktop architecture and local MCP policy-gate demonstration using synthetic data. It is not a medical device and is not for clinical evaluation. Stage 4 → Stage 5 Egress Caveat: when connected to an external cloud AI host, downstream transmission of allowed aggregate outputs is governed by that client’s configuration.
Non-medical notice: Research preview / in-development concept only. All records and waveforms shown on this page are synthetic and must not be used for clinical evaluation.
Interactive browser workbench available below · Zero account required
Primary Job-To-Be-Done
Normalize multi-year Apple Health, Garmin, Oura, and Whoop archives into local SQLite with Dual Baselines (28-day acute vs 90-day chronic) and enforce a fail-closed MCP JSON-RPC policy gate (-32001) against bulk raw table exfiltration.
Key Capabilities
- Solves Vendor Truncation vs. Cloud AI Exfiltration: ingests multi-year wearable exports into a local SQLite schema with Dual Baselines (rolling 28-day acute vs 90-day chronic mean, min, max, IQR) and deterministic Calculation Receipts so the AI never performs unverified mental math.
- MCP Security & Confused-Deputy Threat Defense: enforces pre-execution JSON Schema allowlists on local loopback/stdio transport — permitting bounded aggregates (get_sleep_trend with raw_identifiers_exposed: false) while rejecting unscoped bulk dumps (read_all_raw_records) with JSON-RPC error -32001.
- Explicit Stage 4 → Stage 5 Egress Boundary Caveat: distinguishes LOCAL_ONLY loopback inspection from External AI Host mode, warning clearly whenever an allowed aggregate payload crosses into a downstream cloud AI client.
Privacy & Local Data Boundary
Marketing website never accepts health export files. All sleep and heart-rate trend numbers in the inspector are synthetic illustrative values.
01. INTERACTIVE ARCHITECTURE SIMULATOR (SAMPLE FIXTURE)
Inspect the transformation and boundary handling live
This interactive workbench runs locally in your browser on built-in synthetic fixtures.
Vitalis Health Studio Local MCP Policy & Egress Boundary Inspector
MCP Threat Defense (`-32001` Policy Gate)
Mitigates Confused Deputy, Prompt Injection via tool arguments, and Tool-Description Poisoning using pre-execution JSON Schema allowlists.
Dual Baselines & Calculation Receipts
Computes rolling 28-day acute vs 90-day chronic baselines (mean, min, max, IQR) locally in SQLite so the AI never performs unverified mental arithmetic.
Stage 4 → Stage 5 Egress Boundary (`LOCAL_ONLY`)
Distinguishes LOCAL_ONLY loopback inspection from cloud AI hosts where returned aggregate outputs cross Stage 4 into Stage 5.
Architectural boundary diagram (an example diagram, not running software):
- Stage 1LOCAL SQLITE
User-controlled file (synthetic)
Static synthetic wellness export; site accepts zero user uploads.
- Stage 2SCOPED ADAPTER
Local parser (proposed)
Proposed desktop normalization without remote parsing APIs.
- Stage 328D / 90D BASELINES
Local normalized DB (concept)
Indexed on-device storage; raw identifiers kept inside boundary.
- Stage 4ALLOWLIST PASS
Policy Gate (-32001 Circuit Breaker)
● CIRCUIT CLOSED: Bounded 7-Day Aggregate Permitted
- Stage 5EGRESS BOUNDARY
Local / remote AI client
✓ Receives 7-day summary JSON (0 raw rows exposed) · Local scripted client on loopback/stdio.
Caller is a local script on loopback/stdio. Derived aggregate remains on-device unless exported by the user.
mean_sleep_minutes
442 min mean
min_sleep_minutes
405 min min
max_sleep_minutes
478 min max
raw_identifiers_exposed
false
{
"jsonrpc": "2.0",
"id": "req-synthetic-01",
"method": "tools/call",
"params": {
"name": "get_sleep_trend",
"arguments": {
"window_start": "2026-10-01",
"window_end": "2026-10-07",
"aggregation": "daily_mean_minutes"
}
}
}{
"jsonrpc": "2.0",
"id": "req-synthetic-01",
"result": {
"fixture": true,
"notice": "Illustrative synthetic values — not personal health data or clinical advice.",
"metric": "sleep_duration_summary",
"window_days": 7,
"mean_duration_minutes": 442,
"min_duration_minutes": 405,
"max_duration_minutes": 478,
"raw_identifiers_exposed": false
}
}Static All-States Reference Summary (No-JS & Audit View) — Policy Gate Matrix (get_sleep_trend vs read_all_raw_records -32001)
| tool_name | caller_context | policy_outcome | jsonrpc_result_or_error |
|---|---|---|---|
| get_sleep_trend | local_inspector / external_ai | ALLOWED (bounded aggregate) | Returns 7-day aggregated sleep duration & consistency metrics; warns on external AI egress. |
| read_all_raw_records | local_inspector / external_ai | DENIED (error code -32001) | Policy boundary blocks unscoped bulk SQLite table export (-32001 Policy Violation). |
02. PROBLEM & INTENDED OUTCOME
Vendor Truncation vs. Cloud AI Exfiltration & The MCP Confused-Deputy Threat Model
Self-trackers with multi-year Apple Health, Garmin, Oura, and Whoop archives face two broken choices: vendor mobile apps truncate longitudinal history into opaque 7-day readiness scores, while pasting raw CSV/XML exports into cloud LLMs exfiltrates years of intimate biometric timestamps and overwhelms context windows. Even worse, naive Model Context Protocol (MCP) servers expose raw SQLite query tools vulnerable to Confused Deputy attacks, Prompt Injection via tool arguments, and Tool-Description Poisoning.
Engineered deliverable goal
Vitalis acts as a local Personal Health Data Plane & Scoped MCP Evidence Gateway: it computes deterministic Dual Baselines (28-day acute vs 90-day chronic mean, min, max, IQR) with Calculation Receipts in local SQLite, enforces pre-execution JSON Schema allowlists that block unscoped dumps (read_all_raw_records → JSON-RPC error -32001), and highlights the Stage 4 → Stage 5 egress boundary.
- 01.Blocks unscoped bulk exfiltration (read_all_raw_records) with deterministic JSON-RPC error -32001
- 02.Mitigates Confused Deputy, Prompt Injection, and Tool-Description Poisoning via strict JSON Schema allowlists
- 03.Computes Dual Baselines (28-day acute vs 90-day chronic) + Calculation Receipts with explicit Stage 4 → 5 egress warnings
03 & 04. ARCHITECTURE, PERMISSIONS & KNOWN LIMITATIONS
Inspect Technical Pipeline, Permissions & Known Limitations
03 & 04. ARCHITECTURE, PERMISSIONS & KNOWN LIMITATIONS
Inspect Technical Pipeline, Permissions & Known Limitations
How the pipeline handles structure and unknown states
- Stage 01
User-controlled multi-year archive (Apple Health / Garmin / Oura / Whoop)
Represents a longitudinal wearable export archive selected explicitly by the user on desktop.
Boundary note: This marketing website accepts zero health file uploads and uses static synthetic records. - Stage 02
Local SQLite normalization & Dual Baselines (28d acute vs 90d chronic)
Indexes longitudinal records on device (stdio or 127.0.0.1 loopback; never 0.0.0.0) and pre-computes 28-day acute vs 90-day chronic baselines (mean, min, max, IQR) with Calculation Receipts.
Boundary note: Concept stage; desktop binary is not shipped on this site. - Stage 03
Scoped MCP Policy Gate & JSON Schema Allowlist (-32001 Defense)
Defends against Confused Deputy, Prompt Injection, and Tool-Description Poisoning by allowing only schema-validated bounded aggregates (get_sleep_trend) and blocking raw dumps (read_all_raw_records → -32001).
Boundary note: Every JSON-RPC 2.0 request and response is logged in an inspectable local audit trail. - Stage 04
Stage 4 → Stage 5 Egress Boundary (LOCAL_ONLY vs External AI Client)
Separates LOCAL_ONLY scripted loopback inspection from cloud-connected AI hosts.
Boundary note: Downstream egress depends on the connected AI client configuration once an allowed aggregate crosses Stage 4.
Explicit scope and verification requirements
| Area | Why accessed | On-device handling | Verification note |
|---|---|---|---|
| Health export archive | Never submitted to or accepted by this marketing website. | Static site has no file input; future desktop app proposes local-only parsing. | Desktop build and parser security audit required before release. |
| Synthetic dashboard fixture | Illustrate JSON-RPC 2.0 policy allow/deny behavior in browser. | Static deterministic constants in page memory. | Verified in unit and E2E negative tests. |
| Downstream MCP tool outputs | Return bounded summary statistics to a user-selected client. | Crosses egress boundary if the user connects a cloud-backed AI client. | Must be disclosed per client integration; no blanket zero-cloud guarantee. |
Known Limitations
- Research preview only; no Windows desktop installer or verified wearable archive parser binary is released on this website.
- Not a medical device and not for clinical evaluation or medical care.
- Connecting an external AI client to a local MCP server does not prevent cloud transmission if that client forwards tool outputs remotely.
05. FREQUENTLY ASKED QUESTIONS
Common questions about Vitalis Health Studio
Does this website analyze my personal health records?
No. This website has no file upload capability and processes only built-in synthetic numbers.
Does using a local MCP gateway prevent cloud uploads automatically?
No. Even if an archive is parsed locally, handing a tool response to a cloud-connected AI client means that client may transmit the returned aggregate according to its own privacy policy.
Which export formats are guaranteed to work?
None are guaranteed today. Huawei Health export formats are referenced as research context only until a desktop release is tested against specific archive versions.
Is Vitalis Health Studio a medical device?
No. No clinical interpretation, diagnostic capability, or medical certification is claimed.
Can I download Vitalis for Windows now?
No. Vitalis Health Studio is a research preview without a verified public installer.
Need production AI document exports today? Noxport AI Exporter is Available Now.
While this R&D workbench is in preview/development, our flagship Noxport AI Exporter (v3.0.4.226) is shipping today with 6 Basic Formats Free Forever and 4 Pro Formats (Word .docx, Vector .pdf, Pro .md, Professional Pack .zip).
NOXPORT LABS R&D PORTFOLIO · RELEASE NOTIFICATIONS
Follow R&D workbenches in the Noxport Labs portfolio
Inspect interactive synthetic workbenches in your browser or choose specific R&D projects below to receive release notifications.
AnswerBell AI
Monitors long-running deep-research streams across a 3000ms DOM quiet window so you know when a thread is ready for Noxport AI Exporter compilation.
YouTube → Gemini Gem
Converts long technical lectures into millisecond-anchored Markdown & JSONL corpora with explicit missing-caption gap flags (seg-005 unavailable).
CardioLab Workstation
Pairs raw vs. detrended synthetic ECG/RR signal traces with a 6-event Beat Ledger (BL-01..BL-06) and SHA-256 provenance manifest.
Explore Vitalis Health Studio architecture & documentation
Inspect our demonstration architecture documentation or explore another project in the Noxport Labs portfolio.
Div I · Available
Noxport AI Exporter
Turn 50–150+ turn ChatGPT, Claude, Gemini, Perplexity, Grok, DeepSeek, Copilot, and Qwen sessions into clean, editable Word (.docx), searchable vector PDF, Pro Markdown, and .zip bundles locally in your browser. Engineered for staff/principal engineers, independent technical consultants, AI solution architects, and computational researchers — with zero cloud uploads, no account required, and zero silent truncation.
Div I · In development
AnswerBell AI
AnswerBell AI eliminates the "Babysitting Tax" and context-switch fatigue when running multi-minute reasoning models (o3-pro, Deep Research, Claude Extended Thinking) across 10–30 open browser tabs. Unlike naive notification extensions that trigger false-positive chimes on a single Stop-button flicker, AnswerBell reconciles multi-signal DOM evidence over a 3000ms quiet window to distinguish true completion from mid-run tool pauses.
Div II · Preview
YouTube → Gemini Gem
Engineered for technical researchers, PhD students, and investigative analysts synthesizing multi-video lecture series, conference keynotes, and technical interviews into grounded corpora for Google Gemini Gems and NotebookLM. Unlike 1-click YouTube AI summarizers that emit unverifiable prose, YouTube → Gemini Gem preserves a 1:1 raw_lines audit trail, millisecond timecodes, and fail-closed missingness flags.
Div III · In development
CardioLab Workstation
Engineered for human-performance researchers, sports-science engineers, academic physiology labs, and HRV algorithm developers working with chest-strap RR intervals (Polar H10 .csv / .fit) and raw single-lead ECG waveforms (.edf / .csv). CardioLab eliminates the Black-Box Smoothing Hazard by pairing immutable raw baselines (SHA-256) with a synchronized Raw / Processed / Overlay comparator and a 6-event human-in-the-loop Beat Ledger.