MCP.so
Sign In

Withings Mcp Unofficial

@davidmosiah

About Withings Mcp Unofficial

Unofficial local-first Withings MCP server for AI health, sleep and activity agents.

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "withings": {
      "command": "npx",
      "args": [
        "-y",
        "withings-mcp-unofficial"
      ]
    }
  }
}

Tools

23

Inventory supported Withings data domains, auth scope requirements, privacy boundary and recommended first calls. Does not call Withings APIs or expose user data.

Machine-readable install, runtime and client guidance for AI agents. Does not call Withings or expose secrets.

Explain supported Withings data, privacy boundaries, recommended agent workflow and project links.

Personalized 3-step setup walkthrough for the human user. Adapts to current state (env vars set? token present? what's next?). Call this first when the user asks 'how do I connect Withings?'

Returns realistic example payloads of withings_daily_summary, withings_wellness_context, and withings_list_body_measures so agents see the contract before calling real Withings APIs.

Generate a Withings OAuth authorization URL. Use this first when no local token exists.

Exchange a Withings OAuth authorization code for local tokens using Withings signed request flow. Tokens are stored locally and never returned. Requires explicit user action: the user must complete browser OAuth and supply the authorization code (agents must not invent codes).

List Withings punctual measurements such as weight and body composition. Requires user.metrics scope. Not medical advice.

List Withings daily activity summaries. Requires user.activity scope.

List Withings workouts. Requires user.activity scope.

List Withings sleep summaries with common sleep fields. Requires user.activity scope. Not medical advice.

List detailed Withings sleep data where available. Requires user.activity scope. Not medical advice.

List Withings heart records where available. Requires user.metrics scope. Not medical advice.

Check local Withings config, token file, Node version, privacy mode, cache readiness and optional MCP client readiness without calling Withings or exposing secrets.

Show optional local SQLite cache status. Enable with WITHINGS_CACHE=sqlite or WITHINGS_CACHE=true.

Return local privacy, cache, token-path and env-presence posture without revealing secret values.

Delete the local Withings token file. Withings token revocation support varies by app/API plan, so this tool only clears local access. Gated by explicit_user_intent: true (requires explicit user intent).

Build a practical daily summary from Withings activity, sleep and body/heart data when available. Read-only and non-medical.

Build a weekly Withings scorecard with sleep, activity, body measures, bottlenecks and actions. Read-only and non-medical.

Normalize Withings sleep and activity load into the shared wellness_context shape for recommendation engines.

Read the shared Delx Wellness profile from ~/.delx-wellness/profile.json. Returns preferred name, goals, devices, training/nutrition/exercise/agent preferences and safety flags. NEVER contains OAuth tokens or API secrets. Read-only.

Persist a partial patch to ~/.delx-wellness/profile.json. Requires explicit_user_intent=true (otherwise returns USER_ACTION_REQUIRED). Rejects secret-like fields (oauth, token, secret, password, cookie, refresh, api_key, session) at write time. Use to record preferred name, goals, devices, training context, nutrition context, exercise preferences, agent preferences, and safety flags.

Return the 11-question onboarding flow plus the current profile state and missing fields. Read-only — does NOT persist anything. Pair with withings_profile_update once the user answers. Cross-connector: the same profile is shared by every Delx Wellness MCP (whoop, garmin, oura, fitbit, strava, polar, withings, apple-health, samsung-health, google-health, nourish, cycle-coach, cgm, air).

Overview

What is Withings Mcp Unofficial?

A local-first MCP server that connects AI agents to your Withings body measures, sleep, activity and heart data. It handles Withings’ signed OAuth flow, normalizes responses, and exposes the data through the Model Context Protocol. Tokens never leave your machine.

How to use Withings Mcp Unofficial?

Run npx -y withings-mcp-unofficial setup (interactive, paste client ID and secret), then npx -y withings-mcp-unofficial auth (opens browser to capture OAuth code), then npx -y withings-mcp-unofficial doctor to verify readiness. Add the server to your MCP client config as shown in the README.

Key features of Withings Mcp Unofficial

  • Local-first: OAuth tokens never leave your machine.
  • Supports body, sleep, activity, and heart data.
  • Offers diagnostic, summary, and privacy tools.
  • Privacy mode defaults to structured (raw JSON opt‑in).
  • Includes a built‑in cache (SQLite).
  • One‑command setup with Delx Wellness for Hermes.

Use cases of Withings Mcp Unofficial

  • Get a daily wellness brief combining body, sleep, activity, and heart data.
  • Investigate body composition and sleep changes over a date range.
  • Generate a weekly scorecard with next‑week plans.

FAQ from Withings Mcp Unofficial

What data domains does Withings Mcp Unofficial support?

Body measures (weight, fat %, muscle, bone, water), daily activity (steps, calories, distance), workouts, sleep summaries and details, and heart records (ECG, BP, etc.) when device/plan allow. Continuous sensor telemetry is not exposed by the Withings Public API.

What are the runtime requirements?

Node.js 20+ and a Withings app registered at the Withings partner dashboard with redirect URI http://127.0.0.1:3000/callback. Scopes user.activity user.metrics are recommended.

Where are OAuth tokens stored?

Tokens are stored in ~/.withings-mcp/tokens.json with 0600 permissions and are never returned by tools. The server never prints access or refresh tokens.

How does authentication work?

The package handles the signed‑request OAuth flow locally; client secrets never reach the MCP client. The OAuth code is short‑lived (a few minutes). After authorizing, the token is exchanged and stored.

Is this project affiliated with Withings?

No. This is an unofficial project, not affiliated with, endorsed by, or supported by Withings. Use it only with your own Withings account and in line with the Withings Public API terms.

Frequently asked questions

What data domains does Withings Mcp Unofficial support?

Body measures (weight, fat %, muscle, bone, water), daily activity (steps, calories, distance), workouts, sleep summaries and details, and heart records (ECG, BP, etc.) when device/plan allow. Continuous sensor telemetry is not exposed by the Withings Public API.

What are the runtime requirements?

Node.js 20+ and a Withings app registered at the Withings partner dashboard with redirect URI `http://127.0.0.1:3000/callback`. Scopes `user.activity user.metrics` are recommended.

Where are OAuth tokens stored?

Tokens are stored in `~/.withings-mcp/tokens.json` with `0600` permissions and are never returned by tools. The server never prints access or refresh tokens.

How does authentication work?

The package handles the signed‑request OAuth flow locally; client secrets never reach the MCP client. The OAuth code is short‑lived (a few minutes). After authorizing, the token is exchanged and stored.

Is this project affiliated with Withings?

No. This is an unofficial project, not affiliated with, endorsed by, or supported by Withings. Use it only with your own Withings account and in line with the Withings Public API terms.

Comments

More Other MCP servers