Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FITBIT_CACHENoCache backend (e.g., sqlite)
FITBIT_SCOPESNoSpace-separated list of Fitbit API scopesactivity heartrate profile settings sleep weight nutrition
FITBIT_CLIENT_IDYesFitbit application client ID
FITBIT_PRIVACY_MODENoPrivacy mode: summary, structured, or rawstructured
FITBIT_REDIRECT_URINoOAuth redirect URIhttp://127.0.0.1:3000/callback
FITBIT_CLIENT_SECRETYesFitbit application client secret

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
fitbit_data_inventoryA

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

fitbit_agent_manifestA

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

fitbit_capabilitiesA

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

fitbit_quickstartA

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 Fitbit?'

fitbit_demoA

Returns realistic example payloads of fitbit_daily_summary, fitbit_wellness_context, and fitbit_get_heart_day so agents see the contract before calling real Fitbit APIs.

fitbit_get_auth_urlA

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

fitbit_exchange_codeA

Exchange a Fitbit OAuth authorization code for local tokens. Tokens are stored locally with 0600 permissions and are never returned. Requires explicit user action: the user must complete browser OAuth and supply the authorization code (agents must not invent codes).

fitbit_get_profileB

Get the authenticated Fitbit user profile. Requires profile scope.

fitbit_list_devicesA

List devices connected to the authenticated Fitbit account. Requires settings scope.

fitbit_list_activitiesB

List Fitbit activity logs. Supports before/after cursor, pagination and privacy modes. Requires activity scope.

fitbit_list_sleepA

List Fitbit sleep logs. Supports before/after cursor, pagination and privacy modes. Requires sleep scope. Not medical advice.

fitbit_get_activityA

Get detailed Fitbit activity log by id. Requires activity scope.

fitbit_get_activity_dayA

Get daily activity summary, goals and distances for a date. Requires activity scope.

fitbit_get_sleep_dayA

Get sleep logs and stages for a date. Requires sleep scope. Not medical advice.

fitbit_get_heart_dayC

Get daily heart-rate zones and resting heart rate. Requires heartrate scope. Not medical advice.

fitbit_get_hrv_dayA

Get HRV summary for a date when available. Requires heartrate scope and supported device/data. Not medical advice.

fitbit_get_breathing_rate_dayA

Get breathing-rate summary for a date when available. Requires heartrate scope. Not medical advice.

fitbit_get_spo2_dayB

Get SpO2 summary for a date when available. Requires heartrate scope. Not medical advice.

fitbit_get_weight_dayA

Get weight logs for a date. Requires weight scope. Not medical advice.

fitbit_get_food_dayA

Get food logs for a date. Requires nutrition scope.

fitbit_get_water_dayA

Get water logs for a date. Requires nutrition scope.

fitbit_get_heart_intradayA

Get raw heart-rate intraday samples for a date. For agent work prefer fitbit_heart_series (agent-safe-series/v1 with hard point caps and exact stats). Personal apps can access their own intraday data; third-party apps may require Fitbit approval. Requires heartrate scope. Not medical advice.

fitbit_heart_seriesA

Bounded heart-rate time-series for one civil day (agent-safe-series/v1). Exact stats on full-resolution samples plus a downsampled series capped at 500 points. Prefer fitbit_get_heart_day / daily summary first; use this when you need the shape of HR over the day. Shared contract with garmin_activity_series / strava_activity_series / Kindred workout_series. Not medical advice.

fitbit_connection_statusB

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

fitbit_cache_statusA

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

fitbit_privacy_auditA

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

fitbit_revoke_accessA

Revoke the current Fitbit OAuth grant and delete the local token file. Use only when the user explicitly wants to disconnect Fitbit. Gated by explicit_user_intent: true (requires explicit user intent).

fitbit_daily_summaryA

Build a practical daily summary from Fitbit activity, sleep, heart-rate, HRV and weight data when available. Read-only and non-medical.

fitbit_weekly_summaryA

Build a weekly Fitbit scorecard with activity, sleep, heart-rate, HRV availability, bottlenecks and actions. Read-only and non-medical.

fitbit_wellness_contextB

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

fitbit_profile_getA

Read the canonical Delx Wellness profile shared with the other wellness MCP connectors (Nourish, Cycle Coach, CGM, etc.). Read-only. Profile stores only what the user typed during onboarding — never OAuth tokens, API keys, or biomarkers.

fitbit_profile_updateA

Persist a partial patch to the canonical Delx Wellness profile. Requires explicit_user_intent=true after the user confirms they want to save. Rejects secret-like fields (oauth, token, api_key, password, cookie, refresh, session).

fitbit_onboardingA

Read-only. Return the 11-question Delx Wellness onboarding flow (en or pt-BR), the current shared profile, missing critical fields, and a cross-connector hint. Use this when the user starts a fresh wellness session and you need to fill out preferred_name, goals, devices, training context, nutrition, preferences, and safety.

Prompts

Interactive templates invoked by user choice

NameDescription
fitbit_daily_checkinAsk an agent to create a practical daily health and training check-in from Fitbit.
fitbit_weekly_reviewAsk an agent to review Fitbit trends across activity, sleep and heart context.
fitbit_intraday_investigationInvestigate one day of Fitbit heart-rate with agent-safe series (prefer series over raw intraday dump).

Resources

Contextual data attached and managed by the client

NameDescription
fitbit_data_inventoryStatic inventory of supported Fitbit data domains, privacy modes and recommended first calls.
fitbit_capabilitiesStatic capabilities, API boundary, privacy modes and recommended agent workflow.
fitbit_agent_manifestMachine-readable install and operating instructions for AI agents.
fitbit_profileAuthenticated Fitbit profile using the configured privacy mode.
fitbit_latest_activityMost recent Fitbit activity log in the configured privacy mode.
fitbit_daily_summaryDaily Fitbit health summary built from API data.
fitbit_weekly_summaryWeekly Fitbit health review built from API data.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidmosiah/fitbit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server