---
title: Fitbit MCP server for AI agents
description: Fitbit MCP server for activity, sleep stages, intraday heart and HRV data.
canonical: https://wellness.delx.ai/connectors/fitbit
content_signal: ai-train=no, search=yes, ai-input=yes
---

# Fitbit MCP server for AI agents

The Fitbit MCP server uses the official Fitbit Web API so agents can work with sleep, heart, movement, body and nutrition context through user-authorized OAuth.

## Short answer

The Fitbit MCP server for AI agents is a local connector provided by fitbit-mcp-unofficial. It uses the official Fitbit Web API and user-authorized OAuth to expose activity, sleep, heart, HRV, body and nutrition context to Claude, Cursor and other MCP-compatible clients. For a new integration, use the Google Health MCP path because Google describes Google Health API as the next generation of Fitbit Web API and schedules the legacy API to stop syncing Fitbit data in September 2026; Fitbit Air workflows follow that same Google Health path. OAuth tokens stay local and Delx does not host a copy of the data.

## Install

```bash
npx -y fitbit-mcp-unofficial setup
npx -y fitbit-mcp-unofficial doctor
```

## Agent client config

```json
{
  "mcpServers": {
    "fitbit": {
      "command": "npx",
      "args": ["-y", "fitbit-mcp-unofficial"]
    }
  }
}
```

## Signals

- Activity
- Sleep
- Heart Rate
- HRV
- SpO2
- Weight

## Data availability

- Daily activity: available. Steps, calories, distance and zones.
- Activity logs: available. Logged workouts.
- Sleep and sleep stages: available. When Fitbit returns stage data.
- Resting heart rate and daily zones: available. Available on scored days.
- Intraday heart-rate samples: conditional. Only when app/API access permits intraday data.
- HRV, SpO2 and breathing rate: conditional. Depends on supported device/account.
- Food, water, weight and body composition: available. When logged.
- Continuous device telemetry: not_available. Not exposed by Fitbit's public API.

## MCP tools

### Profile and onboarding

- `fitbit_profile_get`
- `fitbit_profile_update`
- `fitbit_onboarding`

### Start here

- `fitbit_connection_status`
- `fitbit_daily_summary`
- `fitbit_weekly_summary`

### Auth and diagnostics

- `fitbit_capabilities`
- `fitbit_agent_manifest`
- `fitbit_privacy_audit`
- `fitbit_cache_status`
- `fitbit_get_auth_url`
- `fitbit_exchange_code`
- `fitbit_revoke_access`

### Profile and devices

- `fitbit_get_profile`
- `fitbit_list_devices`

### Activity and sleep

- `fitbit_get_activity_day`
- `fitbit_list_activities`
- `fitbit_get_activity`
- `fitbit_get_sleep_day`
- `fitbit_list_sleep`

### Heart, body and nutrition

- `fitbit_get_heart_day`
- `fitbit_get_heart_intraday`
- `fitbit_get_hrv_day`
- `fitbit_get_spo2_day`
- `fitbit_get_breathing_rate_day`
- `fitbit_get_weight_day`
- `fitbit_get_food_day`
- `fitbit_get_water_day`

## Prompts

- `fitbit_daily_checkin`
- `fitbit_weekly_review`
- `fitbit_intraday_investigation`

## Resources

- `fitbit://capabilities`
- `fitbit://agent-manifest`
- `fitbit://summary/daily`
- `fitbit://summary/weekly`

## Privacy

- OAuth tokens stay local.
- The connector only accesses granted Fitbit scopes.
- Intraday data is conditional and should be requested deliberately.
- Raw means upstream Fitbit JSON, not raw device sensor streams.
- Profile and goals persist locally to ~/.delx-wellness/profile.json (mode 0600); shared with all 14 Delx Wellness connectors and never uploaded.

## Best for

- Daily activity check-in
- Sleep and heart review
- Weight and nutrition context
- Intraday heart investigation

## Known limits

- Intraday access can be limited.
- No continuous telemetry.
- Data depends on Fitbit device/account support.

## Links

- GitHub: https://github.com/davidmosiah/fitbit-mcp
- npm: https://www.npmjs.com/package/fitbit-mcp-unofficial
- Legacy docs: https://fitbitmcp.vercel.app/
- Provider docs: https://dev.fitbit.com/build/reference/web-api/
