{"id":300912,"recorded_at":"2026-10-26T22:28:42.309908Z","observed_at":"2026-10-26T22:28:42.309855Z","subject_kind":"endpoint","subject":"3ea3925c-dfad-4f23-a541-a3721790c46c","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":10,"tools":[{"description":"Register a webhook so Oura notifies your callback URL when data changes. Oura verifies the URL before activating it, and the subscription EXPIRES — renew it with oura_renew_webhook_subscription. Oura: POST /v2/webhook/subscription.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"callback_url":{"description":"The HTTPS URL Oura should call.","type":"string"},"data_type":{"description":"Which collection to watch, e.g. daily_sleep or workout.","type":"string"},"event_type":{"description":"Which change to be notified about.","enum":["create","update","delete"],"type":"string"},"verification_token":{"description":"A secret Oura echoes back so you can verify the callback.","type":"string"}},"required":["callback_url","verification_token","event_type","data_type"],"type":"object"},"name":"oura_create_webhook_subscription"},{"description":"Remove a webhook subscription. Notifications stop immediately. Oura: DELETE /v2/webhook/subscription/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"subscription_id":{"description":"The subscription to delete.","type":"string"}},"required":["subscription_id"],"type":"object"},"name":"oura_delete_webhook_subscription"},{"description":"Fetch a single document by id from one collection. Ids come from oura_list_documents. Oura: GET /v2/usercollection/{collection}/{document_id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"collection":{"description":"Which collection the document belongs to.","enum":["daily_activity","daily_cardiovascular_age","daily_readiness","daily_resilience","daily_sleep","daily_spo2","daily_stress","enhanced_tag","rest_mode_period","ring_configuration","session","sleep","sleep_time","tag","vO2_max","workout"],"type":"string"},"document_id":{"description":"The document's id.","type":"string"},"sandbox":{"description":"Read Oura's synthetic sandbox data instead of the wearer's real data. Use this to learn a response shape without a ring.","type":"boolean"}},"required":["collection","document_id"],"type":"object"},"name":"oura_get_document"},{"description":"Fetch individual heart-rate samples over a DATETIME range. This collection is sampled continuously, so it uses start_datetime/end_datetime rather than dates, and can return a great many points — narrow the window or pass latest. Oura: GET /v2/usercollection/heartrate.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"end_datetime":{"description":"ISO-8601 end.","type":"string"},"latest":{"description":"Return only the most recent sample.","type":"boolean"},"next_token":{"description":"Cursor from the previous page's next_token. Omit for the first page.","type":"string"},"sandbox":{"description":"Read Oura's synthetic sandbox data instead of the wearer's real data. Use this to learn a response shape without a ring.","type":"boolean"},"start_datetime":{"description":"ISO-8601 start, e.g. 2026-08-01T00:00:00Z.","type":"string"}},"type":"object"},"name":"oura_get_heartrate"},{"description":"Fetch the wearer's profile — age, weight, height, biological sex and email. Oura: GET /v2/usercollection/personal_info.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"sandbox":{"description":"Read Oura's synthetic sandbox data instead of the wearer's real data. Use this to learn a response shape without a ring.","type":"boolean"}},"type":"object"},"name":"oura_get_personal_info"},{"description":"Fetch ring battery readings over a DATETIME range, or just the latest. Oura: GET /v2/usercollection/ring_battery_level.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"end_datetime":{"description":"ISO-8601 end.","type":"string"},"latest":{"description":"Return only the most recent reading.","type":"boolean"},"next_token":{"description":"Cursor from the previous page's next_token. Omit for the first page.","type":"string"},"sandbox":{"description":"Read Oura's synthetic sandbox data instead of the wearer's real data. Use this to learn a response shape without a ring.","type":"boolean"},"start_datetime":{"description":"ISO-8601 start.","type":"string"}},"type":"object"},"name":"oura_get_ring_battery_level"},{"description":"Fetch a single webhook subscription with its callback URL, event type and expiry. Oura: GET /v2/webhook/subscription/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"subscription_id":{"description":"The subscription's id.","type":"string"}},"required":["subscription_id"],"type":"object"},"name":"oura_get_webhook_subscription"},{"description":"List documents from one Oura collection over a date range. This is the main read: pick `collection` for what you want — daily_sleep and sleep for sleep, daily_readiness for recovery, daily_activity for movement, daily_stress and daily_resilience for load, workout and session for exercise, daily_spo2, daily_cardiovascular_age and vO2_max for cardiovascular measures, tag and enhanced_tag for the wearer's own annotations, rest_mode_period and ring_configuration for device state. Oura: GET /v2/usercollection/{collection}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"collection":{"description":"Which document collection to read.","enum":["daily_activity","daily_cardiovascular_age","daily_readiness","daily_resilience","daily_sleep","daily_spo2","daily_stress","enhanced_tag","rest_mode_period","ring_configuration","session","sleep","sleep_time","tag","vO2_max","workout"],"type":"string"},"end_date":{"description":"End of the range, YYYY-MM-DD.","type":"string"},"next_token":{"description":"Cursor from the previous page's next_token. Omit for the first page.","type":"string"},"sandbox":{"description":"Read Oura's synthetic sandbox data instead of the wearer's real data. Use this to learn a response shape without a ring.","type":"boolean"},"start_date":{"description":"Start of the range, YYYY-MM-DD. Defaults to a recent window.","type":"string"}},"required":["collection"],"type":"object"},"name":"oura_list_documents"},{"description":"List the webhook subscriptions registered for the application. Oura: GET /v2/webhook/subscription.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{},"type":"object"},"name":"oura_list_webhook_subscriptions"},{"description":"Extend a webhook subscription's expiry. Oura subscriptions lapse if not renewed, so this is the tool that keeps a live integration alive. Oura: PUT /v2/webhook/subscription/renew/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"subscription_id":{"description":"The subscription to renew.","type":"string"}},"required":["subscription_id"],"type":"object"},"name":"oura_renew_webhook_subscription"}]},"body_sha256":"d9d1bf3c17430170d4486bcae30f4010383949a9c19998ed07ad5f2df42cb8ca","prev_id":null,"leaf":"0x2ccc278f2a7ba34ac0bd0281229b63c63c04cfd905ee1b200c4e9925b7ed2d4c","leaf_text":"{\"body\":\"d9d1bf3c17430170d4486bcae30f4010383949a9c19998ed07ad5f2df42cb8ca\",\"id\":300912,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793053722309855,\"prev\":null,\"subject\":\"3ea3925c-dfad-4f23-a541-a3721790c46c\",\"subject_kind\":\"endpoint\"}","day":{"day":"2026-10-26","leaves":296695,"root":"0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8","chained":"0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a","anchor_chain":"eip155:5042002","anchor_tx":"0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae","anchor_block":69251483},"proof":["0x2ccbc854d2768640ee3e1cde81aa734676f95ad02ca1fbc75950e1584190dd99","0x11b45ef2855923ac9d099fe233576df213f8eeb704608e358a2fff835539a7ee","0x59ee28064ba16d728cf17b52beeba24f16d2e0594dea60a3a7e813a9a4df39b0","0xffa81388327eb25d34be2132433be48c9dedb73950d342ebcf13844e10dbc573","0xb92fcc4c013fb2d99b2a1ccffe53c21a1f6989305f6c38b50a10999331456551","0x6c8e86ce9d0ab72188ae53bcf3e25ab015a70c9d8751e8263958eaca8f5b8fc7","0xfa66536cf73a2cf406195168e1cbaf30da31556b3bcebdeaca115a88a7e28e8e","0x77e219a1ec47d7a67038790942570dddabbeb63f85292e369aec6b7eff228a63","0x39cf12493c25bd9e76484bc5beae16c8e1ce53107efd9ba3a98a8a4e59d2d502","0x92ae512ac303ebf33e234dd8900de38bc100cacd7e3e6d4585dab96308c421ca","0x9f7d3cc11f13fc54c5221c4babc2273f69d77c4b805c79df41df74cfb0975d6c","0xf89d9951e0a8e08b9cf11177a1f4e0fd86d9facc5dfecaabbfe564675ebefef7","0xb87e8b32cda179c9e632e227bbd8a6d1f6f61d9d81bb92dbd4dd835d2b3b5caa","0x683955a5b2250ad50568d022a6580d8739b6aff1356779d72a773b088e7c289c","0x610738e0c43687aded83c613c73de8b5226c73c375858a167436461c522ea213","0x06d71bfa7d8b41d62c8836efc2c601e1cc3772d9453596b2ae4950887f3310ca","0x8c756542e482157df0c36464d75c937b845e4423dbbcfad08f0cf8d5a16b9a13","0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}