This Model Context Protocol (MCP) server connects to Garmin Connect and exposes your fitness and health data to Claude and other MCP-compatible clients.
virtualenv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
.env
file in the project root with your Garmin credentials:GARMIN_EMAIL=your.email@example.com
GARMIN_PASSWORD=your-password
Edit your Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
Add this server configuration:
{
"mcpServers": {
"garmin": {
"command": "python", // if you created a new environment this should be "<root_folder>/.venv/bin/python"
"args": ["<path to>/garmin_mcp/garmin_mcp_server.py"]
}
}
}
Replace the path with the absolute path to your server file.
For testing, you can use the MCP Inspector:
npx @modelcontextprotocol/inspector python /Users/adomingues/Documents/claude_filesystem/garmin_mcp/garmin_mcp_server.py
Once connected in Claude, you can ask questions like:
This server requires your Garmin Connect credentials in the .env
file. Keep this file secure and never commit it to a repository.
If you encounter login issues:
.env
file are correctFor other issues, check the Claude Desktop logs at:
~/Library/Logs/Claude/mcp-server-garmin.log
%APPDATA%\Claude\logs\mcp-server-garmin.log
{
"mcpServers": {
"garmin": {
"env": {},
"args": [
"<path to>/garmin_mcp/garmin_mcp_server.py"
],
"command": "python"
}
}
}
Seamless access to top MCP servers powering the future of AI integration.