На днях с подачи приятеля подключил Garmin MCP к Claude Code. Опыт интересный. В первую очередь, потому что все эти данные мне и так известны и доступны в виде сухой статистики в Garmin Connect. Хотелось попробовать новый опыт взаимодействия.

Вот что Claude делает очень хорошо, так это строит графики и выполняет рутинные задачи. Ну а еще льстит, конечно. Для эксперимента я попросил построить прогноз на сегодняшний забег. Я долго сомневался бежать 5км или 10км. По итогу бежал 10, потому что слоты на 5 просто закончились :)
Вот с такими данными я пришел к Claude и планировал бежать 28-го марта 10км.

Прогноз Garmin: 48:56. Реалистичная цель: 48–50 мин. Оптимистичная (при хорошем самочувствии): 47:30.
... Сказал Claude и дал раскладку на гонку:
— Км 1–2: 5:05–5:10 Разгон
— Км 3–8: 4:50–4:55 Основной блок
— Км 9–10: 4:35–4:45 Финишное ускорение
Тут я посмеялся. Уверен, что мой тренер, читающий этот пост тоже посмеялся, зная меня. Для тех кто не знает, скажу: никакого финишного ускорения у меня быть не может. Я так не делаю. У меня или всё ровно, или финишное замедление :D Хотя последнее я стараюсь избегать. И вот, чтобы его избегать и не сбрасывать, мне очень важно бежать всю дистанцию ровно.
"Любой каприз за ваши токены". Claude скорректировал раскладку после уточнения.

Это уже выглядит ближе к реальности. Если бы не один нюанс. Claude ничего обо мне не знает. Он проанализировал тренировки и выстроил свои предположения. Насколько они близки к реальной картине не так уж и важно. Просил план, вот держи.
А вот реальный результат. Он сильно отличается от прогноза Garmin и плана Claude. И это очень важно иметь в виду, когда и если вы захотите попробовать эти инструменты в работе.


Зачем вообще всё это? Использование ИИ сейчас повсеместно. Но надо быть очень аккуратными с тем, что мы получаем в результате его использования. Чтобы прогнозы были точными, любую модель нужно обучать, запросы должны быть точнее, ограничения в рамках которых модель мыслит должны быть жестче. Иначе результат будет далек от истины.
Но в чем ИИ точно хорош, так это в исполнении рутинных задач. Например, подключив к Claude коннектры Garmin и Calendar, можно делегировать ему планирование тренировок с учетом плана, списка дел в календаре и пожеланий. В результате за считанные секунды неделя будет распланирована, в Календаре и плане Garmin будут стоять тренировки с расписанными блоками. Вот это действительно классно.
Ниже опишу кратко шаги, необходимые для подключения Garmin MCP к Claude Code.
Требования
- macOS / Linux
- Python 3.10+
- uv — менеджер пакетов Python
- Аккаунт Garmin Connect
Шаг 1 — Установка uv
curl -LsSf https://astral.sh/uv/install.sh | sh
Проверка:
bash
uv --version
Шаг 2 — Клонирование репозитория
git clone https://github.com/Taxuspt/garmin_mcp ~/dev/garmin
cd ~/dev/garmin
uv sync
Шаг 3 — Аутентификация в Garmin Connect
Токены сохраняются в ~/.garminconnect и используются повторно — пароль вводится только один раз.
cd ~/dev/garmin
GARMIN_EMAIL=your@email.com GARMIN_PASSWORD=your_password uv run garmin-mcp-auth
Если включена MFA — нужно ввести код при запросе.
Проверка токенов:
bash
uv run garmin-mcp-auth --verify
Принудительная повторная аутентификация (если токены устарели):
bash
uv run garmin-mcp-auth --force-reauth
Токены действительны ~6 месяцев.
Шаг 4 — Подключение к Claude Code
Добавить MCP-сервер глобально (для всех проектов):
claude mcp add -s user garmin -- /path/to/uv --directory ~/dev/garmin run garmin-mcp
Узнать полный путь к uv:
bash
which uv
Например: /Users/denis/.local/bin/uv
Итоговая команда:
bash
claude mcp add -s user garmin -- /Users/denis/.local/bin/uv --directory /Users/denis/dev/garmin run garmin-mcp
Проверь подключение:
bash
claude mcp list
В случае успеха, должны увидеть что-то вроде garmin: ... - ✓ Connected
После этого MCP доступен в любом проекте без дополнительных настроек.
Шаг 5 — Подключение к Claude Desktop
Нужно открыть файл конфигурации:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Добавить секцию mcpServers:
{
"mcpServers": {
"garmin": {
"command": "/Users/denis/.local/bin/uv",
"args": [
"--directory",
"/Users/denis/dev/garmin",
"run",
"garmin-mcp"
]
}
}
}
Важно заменить /Users/denis на свой домашний каталог. Полный путь к uv важен — Claude Desktop не использует PATH из терминала.
Перезапустить Claude Desktop. В интерфейсе появится иконка с подключённым сервером garmin.
Использование
Тут все конечно зависит от фантазии. Можно начать с простого:
Покажи мою сегодняшнюю активность
Проанализируй мою последнюю пробежку
Сколько шагов я сделал вчера?
Какой у меня был сон на этой неделе?
Сравни тренировки за последние 7 дней
Доступно 96+ инструментов: активности, шаги, сон, пульс, стресс, вес, тренировки, устройства и др.
Обновление токенов
Токены Garmin истекают примерно раз в полгода. При ошибке подключения:
cd ~/dev/garmin
GARMIN_EMAIL=your@email.com GARMIN_PASSWORD=your_password uv run garmin-mcp-auth --force-reauth
Решение проблем
Failed to connect в claude mcp list. Токены не найдены или истекли — повтори Шаг 3.
429 Too Many Requests при аутентификации. Garmin временно заблокировал IP. Надо подождать 15–30 минут и попробуй снова.
Claude Desktop не видит MCP. Нужно убедиться, что в claude_desktop_config.json указан полный путь к uv (не просто uv). Проверь: which uv.
Логи Claude Desktop
- macOS:
~/Library/Logs/Claude/mcp-server-garmin.log - Windows:
%APPDATA%\Claude\logs\mcp-server-garmin.log
PS: Еще экспериментировал дополнительно с локальными моделями Ollama + qwen + openapi с гарминовскими ендпоинтами. Но в базовом варианте, это решение выглядит абсолютно нерабочим, если вы хотите просто общаться с ИИ через чат, не тратя время на настройку модели.


























