Doop
Provides read-only MCP tools for independently decoded WHOOP 4.0 health data, with confidence gates and minimum-disclosure safety for coaching agents.
README
Doop: method and evidence
Doop is a local-first engineering case study and experimental reference implementation built from an independently validated and extended reverse-engineered WHOOP 4.0 BLE pipeline. The source shows raw-first packet capture, HR/RR decoding, RTC-aware buffered-history recovery, independent proxy metrics, confidence-gated MCP tools, confirmed workout/plan boundaries, and BROC's minimum-disclosure safety-gated agent path.
View the evidence-first project overview at doop-showcase.vercel.app.
This is not a turnkey or production health product. The narrow, owner-controlled Gen4 workflow is documented in Using this code, including configuration, hardware cautions, supported boundaries, and a no-hardware smoke path. The repository contains no owner database, exports, captured health packets, device identifiers, credentials, personal athlete profile, or private Git history. Test packets, plans, preferences, and health inputs are synthetic.
Start with the reverse-engineering case study. Its one-page static trace follows a generated packet through parsing, daily computation, MCP JSON, and BROC's visible answer. The hardware results ledger separates recorded owned-device evidence from checks reproducible in this data-free repository.
If you have ten minutes, use the claim → evidence → command checklist. It points each headline claim to one file and one focused verification command.
The evidence manifest is the release index: it ties headline claims and résumé language to the corresponding evidence and checks.
Architecture
flowchart LR
W[Owned WHOOP 4.0] -->|BLE notifications| C[Capture + CRC validation]
C --> R[(Raw packets)]
C --> T[(Typed HR / RR)]
R -. re-derive .-> T
T --> M[Independent daily metrics]
M --> G{D39 actionable?}
G -->|yes| Q[Read-only MCP queries]
G -->|no: withhold + reasons| Q
Q --> L[Minimum-disclosure today / week relays]
S[Pre-model safety + offline gate] --> B[BROC via OpenClaw]
L --> B
P[Plan + canonical logbook] --> Q
D[D47 prepare → review → confirm] -->|explicit local write| P
Capture preserves evidence before interpretation. Compute retains audit values; D39 decides whether they may influence coaching. The accepted agent sees two preformatted relays, while safety/offline handling occurs before model inference. Canonical writes remain outside MCP behind explicit local review.
What this does and does not claim
- It demonstrates empirical protocol investigation, negative results, raw-first storage, replay-safe decoding, and testable domain-agent controls.
- Recovery, strain, and sleep are independent proxies. They are not WHOOP parity, medical outputs, or ground truth.
- OpenClaw supplies generic agent runtime and Telegram transport. Doop supplies the domain data model, bounded tools, confidence/confirmation policy, minimum-disclosure relays, deterministic safety handling, and evaluator.
- The protocol work extends cited prior art and independently verifies the shipped wire facts; it was not invented from nothing.
Verify the evidence
Requires Python 3.11+ and uv.
uv sync --all-extras --locked
python3 tools/privacy_check.py
uv run pytest -q
node --test integrations/openclaw/plugins/doop-safety-gate/test/*.test.js
The sanitized suite contains Python and OpenClaw safety-plugin tests that run
without a database, band, credentials, or private runtime. Exact release-gate
counts are recorded in RELEASE_NOTES.md after the final clean-clone run.
For demonstration-video recording only, create the isolated minimal seed. It refuses to overwrite an existing file, stores synthetic raw packets, and computes derived metrics through the production path:
uv run python -m tools.create_film_seed \
--output tmp/film-seed.db --film-date 2037-07-06
Focused entry points:
src/whoop_local/capture/proprietary_protocol.pyandtests/test_proprietary_protocol.py: framing, CRCs, HR/RR and four-slot RR behavior;src/whoop_local/capture/history_sync.pyandtests/test_history_sync.py: RTC-first, commit-before-ACK, replay-safe history recovery;src/whoop_local/compute/andtests/test_metrics.py: independent metrics;src/whoop_local/mcp_server/queries.pyandtests/test_training_insights.py: D39 confidence gates and minimized relays;src/whoop_local/integrations/openclaw_acceptance.pyand the OpenClaw safety plugin tests: strict outputs, offline refusal, and pre-model safety handling.
The sanitized agent acceptance record publishes the scenario matrix, visible outputs, and both promotion revocations. The separate D47 confirmation record shows why draft preparation and review cannot silently become a logged workout.
The demonstration storyboard defines the four required agent beats, exact narration, Mac recording setup, and frame-by-frame privacy review for the v1.0 video.
Privacy and licensing
tools/privacy_check.py checks the working tree and every reachable Git blob,
path, commit identity/message, and annotated-tag identity/message for generic
private-artifact, PII-shape, captured-frame, and secret patterns. It reports
only safe identifiers and categories, never matched content. Third-party
contributions and their status are recorded in THIRD_PARTY_NOTICES.md. The
project is released under Apache-2.0; see LICENSE.
Release evidence and traceable résumé language are recorded in
EVIDENCE_MANIFEST.md, RELEASE_NOTES.md, and RESUME_BULLETS.md.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。