Status: live, closed beta, agency-assisted onboarding. 12 read-only MCP tools на Oura API v2. Підключення робиться разом з агенцією Bystrov.
Як це працює
Oura інтеграція використовує Shared App модель: ти просто натискаєш Connect — Brama тримає власний OAuth-застосунок на developer.ouraring.com, нічого створювати самостійно не треба. Після стандартного Oura consent твоя інтеграція переходить у статус Active. Токени зберігаються зашифрованими (ключі поза базою), ізольовано per-tenant. Brama персистить ротовані refresh-токени автоматично — повторний consent при звичайній роботі не потрібен.Oura Membership required для Gen 3 і Ring 4. Для Oura Ring Gen 3 та Ring 4 API доступ потребує активної Oura Membership ($5.99/міс, з 2024). Gen 2 — без обмежень. Якщо Membership неактивна — Brama зберігає токени, але статус інтеграції стане
requires_membership, і tools покажуть friendly повідомлення замість даних. Активуй Membership і натисни Re-check Membership на сторінці інтеграції.Підключення
1. Connect
app.brama.work → Integrations → Oura → натисни Connect Oura.
Brama редіректить тебе на Oura consent screen — підтвердиш доступ. Після згоди ти повертаєшся у Brama; інтеграція стає active (або requires_membership, якщо Membership неактивна — див. Note вище).
2. Запит
У своєму MCP клієнті (Claude Desktop, Gemini CLI — див. Connect a client):Який у мене readiness score сьогодні за Oura?Агент викличе
brama_oura_get_readiness_summary і поверне readiness score, HRV, RHR, temperature deviation, sleep balance.
MCP tools (live)
Усі 12 tools — read-only, на Oura API v2. Нічого не змінюють у Oura.Readiness
brama_oura_get_readiness_summary
Останні readiness-записи tenant’а:
readiness_score (0–100), HRV balance, average HRV (RMSSD ms), resting heart rate, body temperature deviation (°C), sleep balance, дата.Параметри: limit (optional — default 1, max 7) — скільки останніх днів повернути.brama_oura_get_readiness_by_date
Readiness-запис для конкретної дати.Параметри:
date (required, YYYY-MM-DD).Sleep
brama_oura_get_sleep_summary
Останні daily-sleep записи:
sleep_score (0–100) + contributors (restfulness, efficiency, latency, timing, total_sleep).Параметри: limit (optional — default 1, max 7).brama_oura_get_sleep_by_id
Конкретний sleep-period з повним розкладом фаз (light / REM / deep), bedtime_start/end, average heart rate, HRV, breath rate.Параметри:
sleep_id (required, UUID з sleep summary).Activity
brama_oura_get_activity_summary
Останні daily-activity записи:
activity_score (0–100), steps, active_calories, total_calories, target_calories, distance, MET-minutes by zone (low / medium / high).Параметри: limit (optional — default 1, max 7).brama_oura_get_activity_by_date
Activity-запис для конкретної дати.Параметри:
date (required, YYYY-MM-DD).Workouts
brama_oura_get_workouts
Останні tracked workouts: тип активності, intensity (easy/moderate/hard), start/end datetime, calories, distance, source (manual / auto_detected / confirmed).Параметри:
limit (optional — default 3, max 25).brama_oura_get_workout_by_id
Конкретне тренування за UUID.Параметри:
workout_id (required, UUID з get_workouts).Profile
brama_oura_get_profile
Oura personal info tenant’а:
email, age, weight_kg, height_m, biological_sex.Параметри: немає.403 з цього endpoint =
requires_membership стан інтеграції.Stress
brama_oura_get_stress_summary
Daily stress score:
stress_high_minutes, recovery_high_minutes, day_summary (“stressful” / “normal” / “restored” / “recovered”).Параметри: limit (optional — default 1, max 7).SpO2 (Gen 3 / Ring 4)
brama_oura_get_spo2_summary
Daily SpO2 (blood-oxygen saturation) середнє.Параметри:
limit (optional — default 1, max 7).Працює тільки на Oura Ring Gen 3 і Ring 4. На старіших Gen 2 рінгах tool поверне friendly повідомлення «not available», не помилку.
Heart rate
brama_oura_get_heartrate_summary
Hourly heart-rate buckets за requested window: кожен bucket має
hour (ISO datetime), min_bpm, avg_bpm, max_bpm, sample_count.Параметри: start_datetime, end_datetime (optional, ISO 8601). Default window: останні 24h.Oura повертає 5-min interval samples (~288 на день). Brama агрегує до hourly buckets, щоб LLM context залишався читабельним.
Безпека
- Shared App — Brama тримає єдиний OAuth-застосунок; tenant’у НЕ потрібно створювати власний.
- Токени зашифровані at rest (envelope encryption), ключі поза базою; на диск не пишуться, у пам’яті лише на час запиту; у логи не потрапляють.
- Brama персистить ротовані refresh-токени автоматично — повторний consent при звичайній роботі не потрібен.
- Кожен tenant ізольований — твої Oura-дані недосяжні іншим tenant’ам.
- Read-only — tools нічого не змінюють у Oura.
Питання
Підключення проходить разом з агенцією Bystrov. Напишиviktor@brama.work.