oura-mcp
An MCP server implementation for the Oura v2 API that handles pagination, date range fixes, and missing data warnings. It exposes six tools across 19 collections to retrieve health metrics like heart rate, sleep, and readiness data, ensuring complete data retrieval by following next_token cursors.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Retrieve Oura Ring health metrics via MCP tools
- Paginate through large datasets like heart rate samples
- Fix date range inconsistencies in API responses
- Warn when data is missing from the API
Source and maintenance
- Last repository push
- Latest release
- v0.4.0
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
mcp-oura 0.4.0
{
"version": "0.4.0",
"transport": "stdio",
"identifier": "mcp-oura",
"registryType": "pypi",
"environmentVariables": [
{
"name": "OURA_SANDBOX",
"description": "Set to 1 to use Oura's official synthetic data with no credentials. The recommended way to try the server before authenticating."
},
{
"name": "OURA_CLIENT_ID",
"description": "client_id of your Oura application, for OAuth2. Register one at https://cloud.ouraring.com/oauth/applications with the redirect http://localhost:9876/callback/ (the trailing slash is required)."
},
{
"name": "OURA_CLIENT_SECRET",
"description": "client_secret of your Oura application. Only needed when running `oura-mcp --authorize` and when refreshing the token."
},
{
"name": "OURA_CREDENTIALS",
"description": "Where the OAuth2 credentials file lives. Defaults to ~/.config/oura-mcp/credentials.json, mode 600."
},
{
"name": "OURA_PAT",
"description": "Oura Personal Access Token. Only if you already had one: Oura stopped issuing them in December 2025."
},
{
"name": "OURA_PAT_FILE",
"description": "Path to a file holding the personal token. Preferable to OURA_PAT: an MCP server is registered in a JSON that gets backed up and shared when asking for help; a separate file rotates without touching the config."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"oura-mcp": {
"command": "uvx",
"args": [
"mcp-oura==0.4.0"
],
"env": {
"OURA_SANDBOX": "<YOUR_OURA_SANDBOX>",
"OURA_CLIENT_ID": "<YOUR_OURA_CLIENT_ID>",
"OURA_CLIENT_SECRET": "<YOUR_OURA_CLIENT_SECRET>",
"OURA_CREDENTIALS": "<YOUR_OURA_CREDENTIALS>",
"OURA_PAT": "<YOUR_OURA_PAT>",
"OURA_PAT_FILE": "<YOUR_OURA_PAT_FILE>"
}
}
}
}Cline
{
"mcpServers": {
"oura-mcp": {
"command": "uvx",
"args": [
"mcp-oura==0.4.0"
],
"env": {
"OURA_SANDBOX": "<YOUR_OURA_SANDBOX>",
"OURA_CLIENT_ID": "<YOUR_OURA_CLIENT_ID>",
"OURA_CLIENT_SECRET": "<YOUR_OURA_CLIENT_SECRET>",
"OURA_CREDENTIALS": "<YOUR_OURA_CREDENTIALS>",
"OURA_PAT": "<YOUR_OURA_PAT>",
"OURA_PAT_FILE": "<YOUR_OURA_PAT_FILE>"
}
}
}
}VS Code
{
"servers": {
"oura-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-oura==0.4.0"
],
"env": {
"OURA_SANDBOX": "<YOUR_OURA_SANDBOX>",
"OURA_CLIENT_ID": "<YOUR_OURA_CLIENT_ID>",
"OURA_CLIENT_SECRET": "<YOUR_OURA_CLIENT_SECRET>",
"OURA_CREDENTIALS": "<YOUR_OURA_CREDENTIALS>",
"OURA_PAT": "<YOUR_OURA_PAT>",
"OURA_PAT_FILE": "<YOUR_OURA_PAT_FILE>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"oura-mcp": {
"command": "uvx",
"args": [
"mcp-oura==0.4.0"
],
"env": {
"OURA_SANDBOX": "<YOUR_OURA_SANDBOX>",
"OURA_CLIENT_ID": "<YOUR_OURA_CLIENT_ID>",
"OURA_CLIENT_SECRET": "<YOUR_OURA_CLIENT_SECRET>",
"OURA_CREDENTIALS": "<YOUR_OURA_CREDENTIALS>",
"OURA_PAT": "<YOUR_OURA_PAT>",
"OURA_PAT_FILE": "<YOUR_OURA_PAT_FILE>"
}
}
}
}Let your agent find its tools
Find servers like oura-mcp from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.