mcpbeat Sign in

Oura Ring MCP Server

local only

Oura Ring MCP Server runs on your own machine — the client starts it, so there is no endpoint to ping. 242 installs a week from npm. Last commit 17 Oct 2026.

Oura Ring MCP server for the Oura API v2: sleep, readiness, activity, heart rate, and more.

Installs per day peak 63 · avg 25 · +66% w/w
a month agotoday
242
Installs / week
npm · oura-ring-mcp-server
1
Stars
0 open issues
17 Oct 2026
Last commit
no releases in 90 days
MIT
License
TypeScript

What the code does

We read the source, 2 d ago · rules 995398eba69f

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Runs an external command src/login.ts:27
    spawn(cmd, args, { stdio: "ignore", detached: true })

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.

run in your terminal
claude mcp add oura-ring-mcp-server -e 'OURA_CLIENT_ID=<OURA_CLIENT_ID>' -e 'OURA_CLIENT_SECRET=<OURA_CLIENT_SECRET>' -- npx -y oura-ring-mcp-server
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "oura-ring-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "oura-ring-mcp-server"
      ],
      "env": {
        "OURA_CLIENT_ID": "<OURA_CLIENT_ID>",
        "OURA_CLIENT_SECRET": "<OURA_CLIENT_SECRET>"
      }
    }
  }
}
~/.codex/config.toml
[mcp_servers.oura-ring-mcp-server]
command = "npx"
args = ["-y", "oura-ring-mcp-server"]
env = { OURA_CLIENT_ID = "<OURA_CLIENT_ID>", OURA_CLIENT_SECRET = "<OURA_CLIENT_SECRET>" }
.cursor/mcp.json
{
  "mcpServers": {
    "oura-ring-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "oura-ring-mcp-server"
      ],
      "env": {
        "OURA_CLIENT_ID": "<OURA_CLIENT_ID>",
        "OURA_CLIENT_SECRET": "<OURA_CLIENT_SECRET>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "oura-ring-mcp-server": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "oura-ring-mcp-server"
      ],
      "env": {
        "OURA_CLIENT_ID": "<OURA_CLIENT_ID>",
        "OURA_CLIENT_SECRET": "<OURA_CLIENT_SECRET>"
      }
    }
  }
}

Put your own values in place of <OURA_CLIENT_ID> (Oura OAuth2 client ID (register an app at https://cloud.ouraring.com/oauth/applications, then run `oura-ring-mcp-server login` once to authorize)), <OURA_CLIENT_SECRET> (Oura OAuth2 client secret from the same application). The author’s registry entry marks them as required.

Optional settings from the registry entry, left out of the block above: OURA_SANDBOX (Use Oura's /sandbox/ demo data instead of real data (true/false, default false)), TRANSPORT_TYPE (Transport: 'stdio' (default) or 'httpStream' for remote/Docker deployments), PORT (HTTP port for httpStream transport (default 3000)), HOST (HTTP host for httpStream transport (default 0.0.0.0)), OURA_TELEMETRY_FILE (Write NDJSON telemetry events to this file path (safe under any transport)), OURA_TELEMETRY_CONSOLE (Console telemetry under httpStream transport: true (default) or false).

Alternatives to Oura Ring MCP Server

same job, measured the same way
Oura Ring
by yasuakiomokawa

MCP server for Oura Ring API v2 (sleep, activity, readiness, heart rate, workouts).

185 installs/wk local only
Oura MCP by usefulapi
by usefulapi

Read sleep, readiness, activity, stress, heart rate and workouts from the Oura Ring.

10 tools answering
Oura Ring
by antvsl

Sleep, readiness, HRV, resting heart rate, activity and stress from your Oura Ring

170 installs/wk local only
Oura Ring
by osjayaprakash

Read-only Oura Ring sleep, readiness, activity, stress and heart rate data (OAuth2)

90 installs/wk local only
Oura Ring (read-only)
by royreznik

Read-only access to your Oura Ring readiness, sleep, activity, HRV, heart rate and trends.

89 installs/wk local only
Ouramcp
by davidmosiah

Privacy-first, unofficial Oura MCP server for AI health, sleep, activity and heart-rate agents.

125 installs/wk local only
Withings Health Data
by akutishevsky

MCP server for Withings health data — sleep, activity, heart, and body metrics.

answering
Fitbitmcp
by davidmosiah

Privacy-first, unofficial Fitbit MCP server for AI health, sleep, activity and heart-rate agents.

92 installs/wk local only

Oura Ring MCP Server — questions

Answers built from our own checks of this server.

Why is there no uptime for Oura Ring MCP Server?
Oura Ring MCP Server runs on your own machine over stdio — there is no network address to reach, so uptime cannot be measured for it by anyone. What can be measured is adoption: the npm package oura-ring-mcp-server was installed 242 times last week.
How do I connect Oura Ring MCP Server?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It runs locally, so the command pulls oura-ring-mcp-server straight from npm; nothing to host, nothing to sign up for.
How many people use Oura Ring MCP Server?
The npm package oura-ring-mcp-server was installed 242 times in the last week. Week over week that is +66%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Oura Ring MCP Server open source?
Yes — it is published under the MIT licence, written in TypeScript and 1 stars on GitHub. The source link is on this page, so you can read exactly what it does with your data before you connect it.