This server enables AI assistants to access and analyze your Oura Ring data through the Model Controller Protocol (MCP). It provides a structured way to fetch and understand your health metrics.
- Secure access to your Oura Ring data
- Pre-defined prompts for common health analysis tasks
- Customizable queries for specific health insights
- Support for analyzing correlations between different metrics
- Proper handling of time units and calculation guidelines
- Visualization capabilities for health metrics
- Node.js v18 or higher
- An Oura Ring account with Personal Access Token
-
Clone the repository:
git clone https://github.com/yourusername/oura-mcp-server.git cd oura-mcp-server
-
Install dependencies:
npm install
-
Create a
.env
file in the root directory with your Oura API token:OURA_TOKEN=your_personal_access_token_here
-
Build the project:
npm run build
-
Start the server:
npm start
- Go to the Oura Developer website
- Log in with your Oura account
- Create a new Personal Access Token
- Copy the token to your
.env
file
You can ask Claude things like:
- "Show me my sleep data for the last week and explain what it means"
- "Analyze how my meals affect my readiness scores"
- "Compare my stress levels on workdays versus weekends"
- "Show me my heart rate during sleep for nights when I had alcohol"
- "Visualize my sleep efficiency trends for the past month" (Claude will generate charts!)
- "Create a visualization comparing my readiness scores after different meals"
Claude can create visual charts to help you understand your health data. Simply ask Claude to "visualize" or "create a chart" of specific metrics. For example:
- "Visualize my sleep stages over the past week"
- "Create a chart showing the correlation between HRV and sleep quality"
- "Make a bar graph comparing my activity scores by day of week"
- "Plot my resting heart rate against stress levels"
This server follows these key guidelines:
- All duration fields are in seconds and converted to hours/minutes for display
- Sleep percentages are calculated using total_sleep_duration as denominator
- Sleep efficiency is calculated as (total_sleep_duration / time_in_bed * 100)
- Custom tags contain meal information in the comment field
Contributions are welcome! Please feel free to submit a Pull Request.