io.github.davidmosiah/withingsmcp
Privacy-first, unofficial Withings MCP server for AI health, sleep, activity and heart-rate agents.
Versions
0.4.11latest0.4.100.4.90.4.80.4.7+ show 12 moreshow less
0.4.60.4.50.4.40.4.30.4.20.4.10.4.00.3.00.2.10.2.00.1.10.1.0Tools 17
withings_data_inventory Inventory supported Withings data domains, auth scope requirements, privacy boundary and recommended first calls. Does not call Withings APIs or expose user data.
withings_agent_manifest Machine-readable install, runtime and client guidance for AI agents. Does not call Withings or expose secrets.
withings_capabilities Explain supported Withings data, privacy boundaries, recommended agent workflow and project links.
withings_quickstart 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?'
withings_demo 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.
withings_get_auth_url Generate a Withings OAuth authorization URL. Use this first when no local token exists.
withings_exchange_code 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).
withings_connection_status Check local Withings config, token file, Node version, privacy mode, cache readiness and optional MCP client readiness without calling Withings or exposing secrets.
withings_cache_status Show optional local SQLite cache status. Enable with WITHINGS_CACHE=sqlite or WITHINGS_CACHE=true.
withings_privacy_audit Return local privacy, cache, token-path and env-presence posture without revealing secret values.
withings_revoke_access 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).
withings_daily_summary Build a practical daily summary from Withings activity, sleep and body/heart data when available. Read-only and non-medical.
withings_weekly_summary Build a weekly Withings scorecard with sleep, activity, body measures, bottlenecks and actions. Read-only and non-medical.
withings_wellness_context Normalize Withings sleep and activity load into the shared wellness_context shape for recommendation engines.
withings_profile_get 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.
withings_profile_update 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.
withings_onboarding 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).
Permissions 3
network medium shell high env_vars low