← The evidence ledger
Evidence row 35924
Observed , by baseline/1.
- Kind
- listing
- About
- source_record mcp_registry:io.github.davidmosiah/whoop-mcp
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- f7da93f14526cbf22c63f54c0a24de9c14bf40ee7aa880ecfd6659588dbf2d29
- Leaf
- 0x163ed5b6bdb12850c2981b2b77e5c20cba53b50ccda9447b5b601bf849552514
What was observed
{
"endpoints": [
[
"web",
"https://wellness.delx.ai/connectors/whoop"
]
],
"name": "io.github.davidmosiah/whoop-mcp",
"owner_address": null,
"raw": {
"_meta": {
"io.modelcontextprotocol.registry/official": {
"isLatest": true,
"publishedAt": "2026-07-03T11:20:41.299549Z",
"status": "active",
"statusChangedAt": "2026-07-03T11:20:41.299549Z",
"updatedAt": "2026-07-03T11:20:41.299549Z"
}
},
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"description": "Privacy-first, unofficial WHOOP MCP server for AI health, sleep, recovery, and performance agents.",
"name": "io.github.davidmosiah/whoop-mcp",
"packages": [
{
"environmentVariables": [
{
"description": "WHOOP OAuth client ID. Optional when configured with whoop-mcp-server setup.",
"format": "string",
"name": "WHOOP_CLIENT_ID"
},
{
"description": "WHOOP OAuth client secret. Prefer whoop-mcp-server setup so this secret is stored in ~/.whoop-mcp/config.json instead of MCP client config.",
"format": "string",
"isSecret": true,
"name": "WHOOP_CLIENT_SECRET"
},
{
"description": "Redirect URI configured in the WHOOP Developer Dashboard. Optional when configured with whoop-mcp-server setup.",
"format": "string",
"name": "WHOOP_REDIRECT_URI"
},
{
"description": "Optional local path for OAuth tokens. Defaults to ~/.whoop-mcp/tokens.json.",
"format": "string",
"name": "WHOOP_TOKEN_PATH"
},
{
"description": "Optional payload mode: summary, structured, or raw. Defaults to structured. raw means full WHOOP API payloads, not raw device sensor streams.",
"format": "string",
"name": "WHOOP_PRIVACY_MODE"
},
{
"description": "Optional SQLite cache toggle. Set to true or sqlite to enable.",
"format": "string",
"name": "WHOOP_CACHE"
},
{
"description": "Optional local SQLite cache path. Defaults to ~/.whoop-mcp/cache.sqlite.",
"format": "string",
"name": "WHOOP_CACHE_PATH"
},
{
"description": "Set to true to bypass the in-memory HTTP response cache (60s TTL for GET only). POST/PUT/DELETE and 4xx/5xx responses are never cached regardless.",
"format": "string",
"name": "WHOOP_NO_CACHE"
}
],
"identifier": "whoop-mcp-unofficial",
"registryType": "npm",
"transport": {
"type": "stdio"
},
"version": "0.5.3"
}
],
"repository": {
"source": "github",
"url": "https://github.com/davidmosiah/whoop-mcp"
},
"version": "0.5.3",
"websiteUrl": "https://wellness.delx.ai/connectors/whoop"
}
},
"source": "mcp_registry",
"summary": "Privacy-first, unofficial WHOOP MCP server for AI health, sleep, recovery, and performance agents."
}What the leaf hashes
{"body":"f7da93f14526cbf22c63f54c0a24de9c14bf40ee7aa880ecfd6659588dbf2d29","id":35924,"kind":"listing","method":"baseline/1","observed_us":1793025374815548,"prev":null,"subject":"mcp_registry:io.github.davidmosiah/whoop-mcp","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0x163df0c8b53e4038bd46cbc8ba34d0a206400be144db1b0dcbee2aaf0d8cd0cd
- 0x7ac8ee9f3d2aab876ee94324c99d762ec7d4d849920fddb75b92c986bdbb8a6a
- 0x5b4343ef9da39cec6651084588880f8c9ec02407babe1504d519f5a408d14be5
- 0x02f76a1ee2028b7954839a1d6c325a1595cc754b79f514d4c7df459aa37161b0
- 0x0df212f2a9a51da8aa956dd3e299628a816fcbe430950189f98346582f35cb1c
- 0x58cbf56e566e062d54d23b2e6474ea58589024cb788532ad2257101a23047c97
- 0xcf53ce263c9d5f53af6a2940a11d04f480b1334b97d9c2ffe64d6c9dee5afe7c
- 0x2bff58401d520d6ae8841ffd0959f08117245a742d4e6fdfd81d489fc501554e
- 0x4353f9765dc35ef405c74366e0d045e048fd321b985e9cd73a26be88ce05f264
- 0xd3388b2b4c7f521364d933c4432002eaf85765d15a09631fb8cf2491679dccc1
- 0xed7aa4f0a0c93f40e8bb99589e49cbc6da4d8144091eb55a8707245d7bf94039
- 0x856fd0d049baa5f07cd2d5d524b40c994bed22cb46ea15af4cc075b3f3f3d444
- 0x32f46c5f73ecbfd4f770f7f760a79bee2afed4b3e7572fa882b3e7dce8df4356
- 0x770e4376196188c7fc9ec40f8e218dc0d1cb92bba5fe0425a0edce27ca9a997f
- 0x60582ab4b41e72eb70eb0bce07fbf0fb4d2b62a8bad5be50f5d16d511adc746c
- 0xc6a4d7899a0f442958e26505011190b7cff2483611c1b94eba9043e0ba9ac36e
- 0x8c756542e482157df0c36464d75c937b845e4423dbbcfad08f0cf8d5a16b9a13
- 0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae