Local-first MCP server that connects AI agents to Fitbit account data, including activity, sleep, heart rate, HRV, SpO2, weight, food, and water logs. It handles OAuth locally and exposes Fitbit data and summaries through MCP tools without sending tokens off the machine.
From the registry: Privacy-first, unofficial Fitbit MCP server for AI health, sleep, activity and heart-rate agents.

$ npx -y fitbit-mcp-unofficial setup$ npx -y fitbit-mcp-unofficial auth$ npx -y fitbit-mcp-unofficial doctorPlease install the `fitbitmcp` MCP server into my current AI client (that's you).
Required prerequisites (do these first if not already done):
- **Install Node.js 20+** — Node.js version 20 or higher is required to run the MCP server via npx.
- **Create a Fitbit app** — Create a Fitbit developer app and configure its redirect URI to http://127.0.0.1:3000/callback. (https://dev.fitbit.com/apps)
- **Run interactive setup** — Initialize local Fitbit MCP configuration and provide your Fitbit client ID and client secret. This writes configuration to ~/.fitbit-mcp/config.json. Run: `npx -y fitbit-mcp-unofficial setup`
- **Authorize with Fitbit OAuth** — Open the browser and complete OAuth authorization so local tokens are stored on your machine. Run: `npx -y fitbit-mcp-unofficial auth`
Optional prerequisites:
- Verify installation — Run the diagnostic check to confirm the server is ready. Run: `npx -y fitbit-mcp-unofficial doctor`
Canonical MCP server config (stdio transport):
- command: `npx`
- args: ["-y","fitbit-mcp-unofficial"]
- required environment variables:
- `FITBIT_CLIENT_ID`: Fitbit app client ID. Usually written by the setup command to local config, but can be provided as an environment override. (example: `<your-fitbit-client-id>`)
- `FITBIT_CLIENT_SECRET`: Fitbit app client secret. Usually written by the setup command to local config, but can be provided as an environment override. (example: `<your-fitbit-client-secret>`)
- `FITBIT_REDIRECT_URI`: OAuth redirect URI configured in your Fitbit app. The README uses the local callback URI below. (example: `<your-redirect-uri>`)
- optional environment variables:
- `FITBIT_SCOPES`: Space-separated Fitbit OAuth scopes to request. Recommended scopes are activity heartrate profile settings sleep weight nutrition. (example: `<your-fitbit-scopes>`)
- `FITBIT_PRIVACY_MODE`: Privacy mode for responses. Supported values: summary, structured, raw. Defaults to structured. (example: `<privacy-mode>`)
- `FITBIT_CACHE`: Optional cache backend. The README mentions sqlite as an option. (example: `<cache-backend>`)
Note: Preferred install path is the published npm package via npx. The MCP server itself runs over stdio. Most credentials are typically stored by the setup command in ~/.fitbit-mcp/config.json, so env vars are manual overrides rather than always-required config entries. The README's canonical MCP launch shape is command `npx` with args `-y fitbit-mcp-unofficial`.
Add this MCP server to my current client's config in the correct format for you. If you need secrets or credentials I haven't provided, ASK me — do not invent values or leave raw placeholders. After adding it, tell me how to verify the server is connected.FITBIT_CLIENT_IDrequiredFitbit app client ID used for OAuth setupFITBIT_CLIENT_SECRETrequiredFitbit app client secret used for OAuth setupFITBIT_REDIRECT_URIrequiredOAuth redirect URI for the Fitbit app callbackFITBIT_SCOPESOAuth scopes requested from FitbitFITBIT_PRIVACY_MODEcontrols output mode: summary, structured, or rawFITBIT_CACHEoptional read-through cache backendAI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.
Persistent codebase knowledge graph. Survives session restarts and context compaction.
A powerful toolkit for coding, providing semantic retrieval and editing capabilities.