r-huijts/strava-mcp

r-huijts/strava-mcp

от r-huijts
MCP сервер для доступа к Strava через ИИ. Спрашивайте данные на естественном языке: анализируйте тренировки, смотрите пробеги, исследуйте сегменты. Помогает спортсменам работать с фитнес-статистикой без лишних действий.

Strava MCP Server

Talk to your Strava data using AI.

Connect Claude to your Strava account and ask questions in plain English: "How far did I run this month?", "Analyze my last ride", or "Show me my fastest segments."

MseeP.ai Security Assessment Badge

Strava Server MCP server

What Can You Do With This?

Once connected, just talk to Claude like you're talking to a friend who has access to all your Strava data:

🏃 Track Your Progress

"How many kilometers did I run this month?"

"Compare my running stats from January to December"

"What's my longest ride ever?"

📊 Analyze Your Workouts

"Break down my last cycling workout - show me power, heart rate, and cadence"

"How did my heart rate zones look during yesterday's run?"

"What was my average pace for each lap in my interval training?"

🗺️ Explore Routes & Segments

"What are the most popular cycling segments near Central Park?"

"Show me my starred segments"

"Export my Sunday morning route as a GPX file"

Часто задаваемые вопросы

Инструменты были проиндексированы:
check-strava-connection

Проверь, подключена ли Strava, и покажи текущий статус подключения. Используй это, когда пользователь спрашивает о статусе своего подключения.

Параметры

Без параметров.

connect-strava

Подключите свой аккаунт Strava, чтобы включить отслеживание активности. Это откроет окно браузера для безопасной аутентификации. Используйте это, когда пользователь просит подключить, привязать или аутентифицировать свой аккаунт Strava.

Параметры
  • forceboolean

    Принудительно выполнять повторную аутентификацию, даже если подключение уже установлено.

disconnect-strava

Отключает аккаунт Strava и удаляет сохранённые учётные данные. Используйте это, когда пользователь хочет выйти, отключить или удалить своё подключение к Strava.

Параметры

Без параметров.

explore-segments

Ищет популярные сегменты в заданной географической области.

Параметры
  • activityTypeenum

    Отфильтруйте сегменты по типу активности (необязательно: 'running' или 'riding').

  • boundsstringобязательный

    Географическая область для поиска, заданная строкой с разделителями-запятыми: south_west_lat,south_west_lng,north_east_lat,north_east_lng

  • maxCatinteger

    Фильтр по максимальной категории подъёма (необязательно, от 0 до 5). Требуется activityType = riding.

  • minCatinteger

    Фильтрует по минимальной категории подъема (необязательно, 0-5). Требует activityType riding.

export-route-gpx

Экспортирует указанный маршрут Strava в формат GPX и сохраняет его в предварительно настроенную локальную папку.

Параметры
  • routeIdstringобязательный

    ID маршрута Strava для экспорта.

export-route-tcx

Экспортирует конкретный маршрут Strava в формат TCX и сохраняет его в предварительно настроенную локальную директорию.

Параметры
  • routeIdstringобязательный

    ID маршрута Strava для экспорта.

get-activity-details

Получает подробную информацию о конкретной активности по её ID.

Параметры
  • activityIdintegerобязательный

    Уникальный идентификатор активности, для которой нужно получить детали.

get-activity-laps

Извлекает подробные данные кругов для конкретной активности Strava. Варианты использования: - Получить полные данные кругов с временными метками, скоростями и метриками - Доступ к сырым значениям для детального анализа или визуализации - Извлечь конкретные метрики кругов для сравнения или отслеживания Параметры: - id (обязательный): Уникальный идентификатор активности Strava. Формат вывода: Возвращает как читаемое описание, так и полные JSON-данные для каждого круга, включая: 1. Текстовое описание с отформатированными метриками 2. Сырые данные круга, содержащие все поля из Strava API: - Уникальный ID круга и индексы - Метки времени (start_date, start_date_local) - Метрики дистанции и времени - Метрики скорости (средняя и максимальная) - Метрики производительности (пульс, каденс, мощность, если доступны) - Данные о высоте - Информация о состоянии ресурса - Ссылки на активность и атлета Примечания: - Требуется область activity:read для публичных активностей и активностей подписчиков, activity:read_all для приватных активностей - Возвращает полные данные, полученные от Strava API, без пропусков - Все числовые значения сохраняются в исходной точности

Параметры
  • idnumber | stringобязательный

    Идентификатор активности, для которой нужно получить круги.

get-activity-photos

Извлекает фотографии, привязанные к конкретной активности Strava. Сценарии использования: - Загрузить все фото, прикреплённые к активности. - Получить URL фото для отображения или скачивания. - Получить метаданные фото: координаты, временные метки. Параметры: - id (обязательно): уникальный идентификатор активности Strava. - size (необязательно): размер фото в пикселях (например, 100, 600, 2048). Если не указан, возвращает все доступные размеры. Формат вывода: Возвращает как читаемое описание, так и полные JSON-данные для каждого фото, включая: 1. Текстовую сводку с количеством фото и ссылками. 2. Сырые данные фото, содержащие все поля из Strava API: - ID фото и уникальный идентификатор. - URL для разных размеров. - Источник (1 = Strava, 2 = Instagram). - Временные метки (uploaded_at, created_at). - Координаты (если доступны). - Подпись (если есть). Примечания: - Для активностей, доступных всем/подписчикам, требуется скоуп activity:read, для приватных — activity:read_all. - Фото могут быть загружены через Strava или привязаны из Instagram. - Если фото нет, возвращается пустой массив.

Параметры
  • idnumber | stringобязательный

    Идентификатор активности, для которой нужно получить фотографии.

  • sizeinteger

    Необязательный размер фото в пикселях (например, 100, 600, 2048).

get-activity-streams

Получает подробные потоки данных временных рядов из активности Strava. Отлично подходит для анализа тренировочных показателей, визуализации маршрутов или детального анализа активности. Ключевые особенности: 1. Множество типов данных: доступ к разным метрикам — пульсу, мощности, скорости, GPS-координатам и т.д. 2. Гибкое разрешение: выбирайте плотность данных от низкой (~100 точек) до высокой (~10000 точек) 3. Умная пагинация: данные отдаются порциями, оптимизированными под лимиты контекста LLM 4. Богатая статистика: включает мин/макс/среднее для числовых потоков 5. Поддержка двух форматов: компактный (оптимизирован для LLM) или подробный (человекочитаемый) 6. Интеллектуальное прореживание: автоматически сокращает большие наборы, сохраняя ключевые особенности Варианты формата: - compact (по умолчанию): сырые массивы, минифицированный JSON, полезная нагрузка меньше на ~70-80%, идеально для обработки LLM - verbose: человекочитаемые объекты с отформатированными значениями, обратно совместим с устаревшим форматом Типичные сценарии использования: - Анализ интенсивности тренировки по пульсовым зонам - Расчёт показателей мощности для велосипедных активностей - Визуализация данных маршрута по GPS-координатам - Анализ темпа и изменений высоты - Детальный анализ сегментов Формат вывода: 1. Метаданные: обзор активности, доступные потоки, точки данных, единицы измерения, информация о формате 2. Статистика: сводка по каждому типу потока (макс/мин/среднее, где применимо) 3. Данные: временные ряды в компактных массивах или подробных объектах (в зависимости от параметра format) Примечания: - Требуется разрешение activity:read - Не все потоки доступны для всех активностей - У старых активностей может быть ограниченный объём данных - Большие активности автоматически разбиваются на части ~50 КБ на сообщение - Используйте параметр max_points, чтобы разумно проредить очень большие активности

Параметры
  • formatenum

    Формат вывода: - компактный: сырые массивы, минифицированный JSON (примерно на 70–80% меньше, удобен для LLM) - подробный: читаемые объекты с форматированными значениями (обратно совместим)

  • idnumber | stringобязательный

    Идентификатор активности Strava для получения потоков. Его можно получить из URL активности или с помощью инструмента get-activities.

  • max_pointsnumber

    Максимальное количество точек данных для возврата. Если активность превышает этот предел, данные автоматически прореживаются с сохранением пиков и впадин. Полезно для очень больших активностей.

  • pagenumber

    Необязательный номер страницы для постраничной выдачи. Используйте вместе с points_per_page, чтобы получать нужные диапазоны данных. Например, page=2 при points_per_page=100 вернёт точки с 101 по 200.

  • points_per_pagenumber

    Необязательное количество точек данных на страницу. Особые значения: - Положительное число: возвращает указанное количество точек на страницу - -1: возвращает ВСЕ точки данных, разбитые на несколько сообщений (примерно по 1000 точек в каждом) Используйте -1, когда вам нужны полные данные об активности для анализа.

  • resolutionenum

    Необязательное разрешение данных. Влияет на количество возвращаемых точек данных: - низкое: около 100 точек - среднее: около 1000 точек - высокое: около 10000 точек Значение по умолчанию зависит от продолжительности активности.

  • series_typeenum

    Необязательный тип базовой серии для потоков: - время: точки данных индексируются по времени (секунды от начала) - расстояние: точки данных индексируются по расстоянию (метры от начала) Помогает сравнивать разные активности или анализировать конкретные сегменты.

  • typesenum[]

    Массив типов потоков для получения. Доступные типы: - time: время в секундах от начала - distance: расстояние в метрах от начала - latlng: массив пар [широта, долгота] - altitude: высота в метрах - velocity_smooth: сглаженная скорость в метрах в секунду - heartrate: пульс в ударах в минуту - cadence: каденс в оборотах в минуту - watts: выходная мощность в ваттах - temp: температура в градусах Цельсия - moving: логическое значение, указывающее, движется ли объект - grade_smooth: уклон дороги в процентах

get-all-activities

Получает полную историю активностей с опциональной фильтрацией по диапазону дат и типу активности. Поддерживает пагинацию для получения всех активностей.

Параметры
  • activityTypesstring[]

    Массив типов активности для фильтрации (например, ['Run', 'Ride'])

  • endDatestring

    Дата в формате ISO для операций, совершенных до этой даты (например, '2024-12-31')

  • maxActivitiesinteger

    Максимум действий, возвращаемых после фильтрации (по умолчанию: 500)

  • maxApiCallsinteger

    Максимальное количество вызовов API, чтобы избежать исчерпания квоты (по умолчанию: 10 = ~2000 действий)

  • perPageinteger

    Действия на один вызов API (по умолчанию: 200, максимум: 200)

  • sportTypesstring[]

    Массив типов спорта для детальной фильтрации (например, ['MountainBikeRide', 'TrailRun'])

  • startDatestring

    Строка даты в формате ISO для активностей после этой даты (например, '2024-01-01')

get-athlete-profile

Получает информацию профиля для аутентифицированного атлета, включая его уникальный числовой идентификатор, необходимый для других инструментов, таких как get-athlete-stats.

Параметры

Без параметров.

get-athlete-stats

Получает статистику активности (за последнее время, с начала года, за всё время) для конкретного спортсмена по его ID. Требует athleteId, полученный из инструмента get-athlete-profile.

Параметры
  • athleteIdintegerобязательный

    Уникальный идентификатор спортсмена, для которого нужно получить статистику. Сначала получите этот ID, вызвав инструмент get-athlete-profile.

get-athlete-zones

Получает настроенные зоны пульса и мощности для аутентифицированного спортсмена. Вывод включает как форматированную сводку, так и необработанные данные JSON.

Параметры

Без параметров.

get-recent-activities

Получает последние активности для аутентифицированного спортсмена.

Параметры
  • perPageinteger

    Сколько действий получить (по умолчанию: 30)

get-route

Получает подробную информацию о конкретном маршруте по его ID.

Параметры
  • routeIdstringобязательный

    Уникальный идентификатор маршрута для получения.

get-segment

Получает подробную информацию о конкретном сегменте по его ID.

Параметры
  • segmentIdintegerобязательный

    Уникальный идентификатор сегмента, который нужно получить.

get-segment-effort

Получает детальную информацию о конкретной сегментной работе по её ID.

Параметры
  • effortIdintegerобязательный

    Уникальный идентификатор сегмента для получения.

get-server-version

Возвращает версию сервера Strava MCP и связанные метаданные.

Параметры

Без параметров.

list-athlete-clubs

Перечисляет клубы, в которых состоит аутентифицированный спортсмен.

Параметры

Без параметров.

list-athlete-routes

Выводит список маршрутов, созданных аутентифицированным спортсменом, с пагинацией.

Параметры
  • pageinteger

    Номер страницы для пагинации.

  • perPageinteger

    Количество маршрутов на странице (максимум 50)

list-segment-efforts

Перечисляет попытки аутентифицированного спортсмена на конкретном сегменте, с возможностью фильтрации по дате.

Параметры
  • endDateLocalstring

    Фильтровать элементы, завершающиеся до указанной даты и времени в формате ISO 8601 (необязательно).

  • perPageinteger

    Количество элементов для возврата на страницу (по умолчанию: 30, максимум: 200).

  • segmentIdintegerобязательный

    Идентификатор сегмента, для которого нужно перечислить усилия.

  • startDateLocalstring

    Отфильтровать усилия, начинающиеся после этой даты-времени в формате ISO 8601 (необязательно).

list-starred-segments

Выводит список сегментов, отмеченных звёздами аутентифицированным спортсменом.

Параметры

Без параметров.

star-segment

Добавляет или удаляет звезду у конкретного сегмента для аутентифицированного спортсмена.

Параметры
  • segmentIdintegerобязательный

    Уникальный идентификатор сегмента, который нужно добавить в избранное или убрать из избранного.

  • starredbooleanобязательный

    Установите true, чтобы добавить сегмент в избранное, false — чтобы убрать его.

1.2.1основная

Выберите клиент, чтобы установить r-huijts/strava-mcp:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "r-huijts-strava-mcp-5vumm5j1ae": {
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ]
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "r-huijts-strava-mcp-5vumm5j1ae": {
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ]
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "r-huijts-strava-mcp-5vumm5j1ae": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ]
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"r-huijts-strava-mcp-5vumm5j1ae\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"@r-huijts/strava-mcp-server\"]}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "r-huijts-strava-mcp-5vumm5j1ae": {
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ]
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add r-huijts-strava-mcp-5vumm5j1ae -- npx -y @r-huijts/strava-mcp-server

Либо через JSON-конфиг:

claude mcp add-json r-huijts-strava-mcp-5vumm5j1ae "{\"command\":\"npx\",\"args\":[\"-y\",\"@r-huijts/strava-mcp-server\"]}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add r-huijts-strava-mcp-5vumm5j1ae -- npx -y @r-huijts/strava-mcp-server

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.r-huijts-strava-mcp-5vumm5j1ae]
command = "npx"
args = ["-y", "@r-huijts/strava-mcp-server"]
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите r-huijts/strava-mcp, а в поле команды запуска — строку ниже:
npx -y @r-huijts/strava-mcp-server

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "r-huijts-strava-mcp-5vumm5j1ae": {
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ]
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "r-huijts-strava-mcp-5vumm5j1ae": {
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например r-huijts-strava-mcp-5vumm5j1ae.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: r-huijts-strava-mcp-5vumm5j1ae
    command: npx
    args:
      - "-y"
      - "@r-huijts/strava-mcp-server"
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "r-huijts-strava-mcp-5vumm5j1ae": {
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ]
    }
  }
}

Похожие MCP-сервера

JamsusMaximus/trainingpeaks-mcp

JamsusMaximus/trainingpeaks-mcp

от jamsusmaximus

MCP сервер для управления тренировками в TrainingPeaks через AI-ассистентов. Создавайте интервальные структуры, управляйте календарем и отслеживайте фитнес-тренды без API-ключей. Аутентификация через cookie из браузера. Полезен спортсменам и тренерам.

Python⭐ 182
googlarz/suunto-mcp

googlarz/suunto-mcp

от googlarz

Suunto MCP — сервер для подключения тренировочных данных с часов Suunto к ИИ Claude. Спрашивайте о своих забегах на естественном языке, получайте точные цифры без дашбордов. Помогает бегунам анализировать тренировки через диалог.

TypeScript⭐ 35
khaoss85/arvo-mcp

khaoss85/arvo-mcp

от khaoss85

MCP сервер arvo-mcp даёт AI-ассистенту доступ к фитнес-трекеру Arvo: записывайте тренировки, отслеживайте личные рекорды и анализируйте прогресс тела через Claude Desktop или Cursor.

TypeScript⭐ 3
r-huijts/firstcycling-mcp

r-huijts/firstcycling-mcp

от r-huijts

MCP сервер для доступа к данным профессионального велоспорта из FirstCycling: информация о гонщиках, результаты, исторические данные и анализ выступлений. Полезен спортивным журналистам, аналитикам...

Python⭐ 18
csjoblom/musclesworked-mcp

csjoblom/musclesworked-mcp

от csjoblom

MCP сервер для API musclesworked.com: предоставляет данные о 856 упражнениях и 65 мышцах с детальным разбиением на первичные, вторичные и стабилизирующие. Помогает анализировать тренировки, находит...

TypeScript⭐ 4
XWeaponX7/rundida-mcp

XWeaponX7/rundida-mcp

от xweaponx7

MCP сервер для бегунов: 92 калькулятора RunDida, руководства, марафоны, расчеты темпа, времени, дистанции. Позволяет AI-ассистентам прогнозировать результаты и рассчитывать зоны пульса.

JavaScript⭐ 1
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин