Fitbit MCP Unofficial MCP Server
by davidmosiahio.github.davidmosiah/fitbitmcpv0.4.5
Privacy-first, unofficial Fitbit MCP server for AI health, sleep, activity and heart-rate agents.
context tax
queued
security
queued
cold start
queued
freshness
Active2d ago
Install Fitbit MCP Unofficial MCP server
Install in Claude Code
claude mcp add fitbit-mcp-unofficial -e FITBIT_CLIENT_SECRET='<fitbit-client-secret>' -- npx -y fitbit-mcp-unofficialInstall in Cursor
{
"mcpServers": {
"fitbit-mcp-unofficial": {
"command": "npx",
"args": [
"-y",
"fitbit-mcp-unofficial"
],
"env": {
"FITBIT_CLIENT_SECRET": "<fitbit-client-secret>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"fitbit-mcp-unofficial": {
"command": "npx",
"args": [
"-y",
"fitbit-mcp-unofficial"
],
"env": {
"FITBIT_CLIENT_SECRET": "<fitbit-client-secret>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"fitbit-mcp-unofficial": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"fitbit-mcp-unofficial"
],
"env": {
"FITBIT_CLIENT_SECRET": "<fitbit-client-secret>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"fitbit-mcp-unofficial": {
"command": "npx",
"args": [
"-y",
"fitbit-mcp-unofficial"
],
"env": {
"FITBIT_CLIENT_SECRET": "<fitbit-client-secret>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| FITBIT_CLIENT_ID | — | — | Fitbit OAuth client ID. Optional when configured with fitbit-mcp-server setup. |
| FITBIT_CLIENT_SECRET | — | yes | Fitbit OAuth client secret. Prefer fitbit-mcp-server setup so this secret is stored in ~/.fitbit-mcp/config.json instead of MCP client config. |
| FITBIT_REDIRECT_URI | — | — | Redirect URI configured in the Fitbit Developer Dashboard. Optional when configured with fitbit-mcp-server setup. |
| FITBIT_TOKEN_PATH | — | — | Optional local path for OAuth tokens. Defaults to ~/.fitbit-mcp/tokens.json. |
| FITBIT_PRIVACY_MODE | — | — | Optional payload mode: summary, structured, or raw. Defaults to structured. raw means full Fitbit API payloads, not continuous 24/7 raw sensor telemetry. |
| FITBIT_CACHE | — | — | Optional SQLite cache toggle. Set to true or sqlite to enable. |
| FITBIT_CACHE_PATH | — | — | Optional local SQLite cache path. Defaults to ~/.fitbit-mcp/cache.sqlite. |
| FITBIT_NO_CACHE | — | — | Set to true to bypass the in-memory HTTP response cache (60s TTL for GET only). POST/PUT/DELETE and 4xx/5xx responses are never cached regardless. |
Freshness
Active — last maintenance signal 2d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-10-08 · 2d ago · GitHub
Latest release
2026-08-29 · 42d ago · GitHub · v0.6.3
Package published
no data · npm/PyPI
Registry entry updated
2026-05-29 · 4mo ago · official registry · v0.4.5
FAQ
›How do I install the Fitbit MCP Unofficial MCP server in Claude Code?
Run: claude mcp add fitbit-mcp-unofficial -e FITBIT_CLIENT_SECRET='<fitbit-client-secret>' -- npx -y fitbit-mcp-unofficial. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Fitbit MCP Unofficial require an API key?
Yes. It expects FITBIT_CLIENT_SECRET, of which 1 is a secret.
›Can I use Fitbit MCP Unofficial as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is Fitbit MCP Unofficial in the official MCP registry?
Yes, as io.github.davidmosiah/fitbitmcp.
Alternatives to Fitbit MCP Unofficial
Other science & research MCP servers.