oura-ring-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Port for HTTP server. Automatically set by Railway. | |
| NODE_ENV | No | Set to 'production' for remote deployment. | |
| MCP_SECRET | No | Optional static bearer token for remote MCP server authentication. | |
| OURA_CLIENT_ID | No | Oura OAuth client ID. Required for OAuth authentication. | |
| OURA_ACCESS_TOKEN | No | Personal Access Token from Oura cloud. Alternative to OAuth. | |
| OURA_CLIENT_SECRET | No | Oura OAuth client secret. Required for OAuth authentication. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_sleepA | Get detailed sleep data for a date range. Returns sleep duration, stages (deep/REM/light), efficiency, heart rate, and HRV. Use this for analyzing sleep patterns and quality. |
| get_readinessA | Get daily readiness scores and contributors (HRV balance, resting heart rate, body temperature, recovery). Use this to understand recovery and readiness to perform. |
| get_activityA | Get daily activity data including steps, calories, and activity breakdown (high/medium/low intensity). Use this to analyze movement and exercise patterns. |
| get_stressA | Get daily stress levels and recovery time. Shows time spent in high stress vs high recovery zones, plus overall day summary (restored/normal/stressful). Use this to understand stress patterns and recovery balance. |
| get_daily_sleepA | Get daily sleep scores and contributors (efficiency, deep sleep, REM sleep, latency, timing, etc.). Different from get_sleep - this provides a single daily score with breakdown of what contributed to it. Use this for understanding sleep quality scoring. |
| get_heart_rateA | Get individual heart rate readings throughout the day with timestamps and source (awake, rest, sleep, workout, etc.). Returns detailed time-series data. Use this for analyzing heart rate patterns, variability throughout the day, or correlating HR with activities. |
| get_workoutsB | Get workout sessions with activity type, duration, intensity, calories burned, and distance. Use this to analyze exercise patterns, workout frequency, and training load. |
| get_spo2B | Get daily SpO2 (blood oxygen saturation) percentage and breathing disturbance index. Use this to monitor respiratory health, detect sleep apnea patterns, or understand overnight oxygen levels. |
| get_vo2_maxA | Get VO2 max measurements (cardiorespiratory fitness). VO2 max indicates the maximum amount of oxygen your body can use during intense exercise. Higher values indicate better cardiovascular fitness. Use this to track fitness improvements over time. |
| get_resilienceA | Get daily resilience scores showing your body's capacity to recover from stress. Includes sleep recovery, daytime recovery, and stress contributors. Resilience levels range from limited to exceptional. |
| get_cardiovascular_ageC | Get your estimated cardiovascular (vascular) age based on heart health metrics. Compare your vascular age to your actual age to understand your cardiovascular health. |
| get_tagsB | Get user-created tags and notes. Tags help track lifestyle factors like caffeine, alcohol, meals, or custom notes that may affect sleep and recovery. |
| get_enhanced_tagsA | Get enhanced tags with rich data including custom tags, timestamps, and durations. Enhanced tags include predefined categories (sleep_aid, caffeine, alcohol, etc.) and custom user-created tags with names like medications, supplements, or lifestyle factors. |
| get_sessionsA | Get meditation, breathing, and relaxation sessions recorded with Oura. Includes session type, duration, and biometrics like heart rate and HRV during the session. |
| detect_anomaliesA | Detect unusual readings in your health data over a time period. Uses statistical methods (IQR and Z-score) to flag outliers in sleep, HRV, heart rate, and activity. Useful for identifying nights with unusually poor sleep, stress spikes, or other anomalies. |
| analyze_sleep_qualityA | Comprehensive sleep quality analysis over a time period. Shows trends, patterns by day of week, sleep debt, regularity score, and identifies your best/worst sleep days. Great for understanding what affects your sleep. |
| correlate_metricsA | Find correlations between two health metrics. For example, see if your HRV correlates with sleep duration, or if activity affects your readiness. Returns correlation strength, direction, and statistical significance. |
| compare_periodsA | Compare health metrics between two time periods. Great for answering questions like 'How did I sleep this week vs last week?' or 'Was my HRV better last month?'. Returns side-by-side comparison with percentage changes. |
| compare_conditionsA | Compare a health metric across different conditions. Supports manual tags (alcohol, caffeine) AND auto-tracked conditions: 'workout' (workout days vs rest days), 'high_activity' (high step days), 'meditation' (session days). |
| best_sleep_conditionsA | Analyze what conditions are associated with your best sleep nights. Looks at activity levels, workouts, meditation sessions, tags, and day-of-week patterns to identify what predicts good vs poor sleep. |
| analyze_hrv_trendA | Analyze your HRV (Heart Rate Variability) trend over time. HRV is a key indicator of recovery and stress. Shows trend direction, rolling averages, and identifies recovery patterns. |
| analyze_adherenceA | Analyze how consistently you wear your Oura ring. Shows daily non-wear time, identifies gaps in data, and calculates adherence percentage. Useful for understanding data quality. |
| get_sleep_timeA | Get Oura's personalized bedtime recommendations. Shows your ideal bedtime window based on your sleep patterns and circadian rhythm. |
| get_rest_modeA | Get rest mode periods when you've enabled rest mode in the Oura app (typically during illness or recovery). Shows when rest mode was active and any notes. |
| get_ring_infoA | Get information about your Oura ring hardware including model, color, firmware version, and configuration. |
| get_personal_infoA | Get your Oura profile information including age, weight, height, and biological sex. This data is used by Oura to personalize insights. |
| analyze_temperatureB | Analyze body temperature patterns from readiness data. Temperature deviations can indicate illness, menstrual cycle phases, or environmental factors. Shows trends and flags unusual readings. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| weekly-review | Get a comprehensive review of your sleep, readiness, and activity from the past week with insights and recommendations. |
| sleep-optimization | Analyze your sleep patterns over the past 30 days to identify what conditions lead to your best sleep. |
| recovery-check | Check your current recovery status and get guidance on whether to push hard or take it easy today. |
| compare-weeks | Compare your health metrics from this week to last week to see if you're improving or declining. |
| tag-analysis | Analyze how a specific tag or condition affects your health metrics. |
| monthly-trends | Analyze your health trends over the past 30 days to identify long-term patterns. |
| quick-status | Get a quick summary of today's health status. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| today | Today's health summary including sleep, readiness, activity, and stress scores |
| weekly-summary | Weekly health summary with averages and trends for the past 7 days |
| baseline | Your personal health baseline: 30-day averages and normal ranges for sleep, HRV, heart rate, and activity. Use this to understand what's normal for you. |
| monthly-insights | Comprehensive 30-day health insights including trends, patterns, anomalies, and actionable observations about your sleep, recovery, and activity. |
| tag-summary | Summary of your tags and their usage over the past 90 days. Use this to see what tags are available for analysis with compare_conditions tool. |
| streaks | Your current and best streaks for sleep, readiness, and activity goals. Track consecutive days of good health metrics. |
| weekly-report | Comprehensive weekly health report with data analysis, highlights, concerns, and actionable recommendations. More detailed than weekly-summary. |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mitchhankins01/oura-ring-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server