garmin-mcp
by lopezec007
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GARMIN_EMAIL | No | Garmin account email. Only needed if the service should log in by itself. | |
| GARMIN_IS_CN | No | Set to true for accounts on Garmin's China region. | false |
| GARMIN_MCP_HOST | No | Address to bind. | 0.0.0.0 |
| GARMIN_MCP_PATH | No | URL path of the MCP endpoint. | /mcp |
| GARMIN_MCP_PORT | No | TCP port. | 8765 |
| GARMIN_PASSWORD | No | Garmin account password, stored in clear text. Only needed together with GARMIN_EMAIL. | |
| GARMIN_MCP_OAUTH | No | The built-in OAuth sign-in. off removes the OAuth endpoints and leaves the bearer token as the only protection. Any other value is a configuration error. | on |
| GARMIN_TOKEN_DIR | No | Where Garmin tokens are saved. Under systemd the default is $STATE_DIRECTORY/tokens; outside systemd it is ~/.garminconnect. Leave unset on the server. | /var/lib/garmin-mcp/tokens |
| GARMIN_MCP_OAUTH_DB | No | The OAuth database. Under systemd the default is $STATE_DIRECTORY/oauth.db; outside systemd it is ~/.local/state/garmin-mcp/oauth.db. Leave unset on the server. | /var/lib/garmin-mcp/oauth.db |
| GARMIN_MCP_LOG_LEVEL | No | DEBUG, INFO, WARNING or ERROR. DEBUG also logs each HTTP request. | INFO |
| GARMIN_MCP_AUTH_TOKEN | No | Shared secret bearer token for MCP requests. Works next to OAuth. Unset leaves OAuth as the only way in, unless GARMIN_MCP_OAUTH=off. Must be at least 32 characters when GARMIN_MCP_PUBLIC_URL is set. | |
| GARMIN_MCP_PUBLIC_URL | No | Optional origin the server is reachable at, for example https://garmin.example.com: scheme and host name, no path. Unset lets the server use the request address. Must be https except for localhost. | |
| GARMIN_MCP_ALLOWED_HOSTS | No | Comma-separated allowlist for the HTTP Host header on the MCP endpoint. An entry is host:port, host:* or a bare host. Unset accepts any host. | |
| GARMIN_MCP_LOGIN_COOLDOWN | No | Seconds to wait after a failed Garmin login before trying again. | 300 |
| GARMIN_MCP_TRUSTED_PROXIES | No | Comma-separated addresses or networks of reverse proxies whose X-Forwarded-For header is believed. Only needs changing when the proxy runs on another machine. | 127.0.0.1 |
| GARMIN_MCP_OAUTH_ACCESS_TTL | No | Lifetime of an OAuth access token in seconds, at least 60. | 3600 |
| GARMIN_MCP_OAUTH_REFRESH_TTL | No | Lifetime of an OAuth refresh token in seconds, 30 days. Not shorter than the access token lifetime. | 2592000 |
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
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
No tools | |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo recent community issues