Skip to main content
Glama

Strava MCP Server

Servidor Strava MCP

Un servidor de Protocolo de Contexto de Modelo (MCP) para interactuar con la API de Strava.

Guía del usuario

Instalación

Puedes instalar fácilmente Strava MCP con uvx :

uvx strava-mcp

Configuración de credenciales de Strava

  1. Crear una aplicación API de Strava :
    • Vaya a https://www.strava.com/settings/api
    • Cree una nueva aplicación para obtener su ID de cliente y secreto de cliente
    • Para "Dominio de devolución de llamada de autorización", ingrese localhost
  2. Configure sus credenciales : cree un archivo de credenciales (por ejemplo, ~/.ssh/strava.sh ):
    export STRAVA_CLIENT_ID=your_client_id export STRAVA_CLIENT_SECRET=your_client_secret
  3. Configurar Claude Desktop : agregue lo siguiente a su configuración de Claude ( /Users/<username>/Library/Application Support/Claude/claude_desktop_config.json ):
    "strava": { "command": "bash", "args": [ "-c", "source ~/.ssh/strava.sh && uvx strava-mcp" ] }

Autenticación

La primera vez que utilice las herramientas Strava MCP:

  1. Se iniciará automáticamente un flujo de autenticación.
  2. Su navegador se abrirá en la página de autorización de Strava.
  3. Después de autorizar, será redirigido a una página local.
  4. Su token de actualización se guardará automáticamente para uso futuro

Herramientas disponibles

Obtener actividades del usuario

Recupera actividades del usuario autenticado.

Parámetros:

  • before (opcional): Marca de tiempo de época para filtrar
  • after (opcional): Marca de tiempo de época para filtrar
  • page (opcional): Número de página (predeterminado: 1)
  • per_page (opcional): Número de elementos por página (predeterminado: 30)
Obtener actividad

Obtiene información detallada sobre una actividad específica.

Parámetros:

  • activity_id : El ID de la actividad
  • include_all_efforts (opcional): incluye esfuerzos del segmento (predeterminado: falso)
Obtener segmentos de actividad

Recupera segmentos de una actividad específica.

Parámetros:

  • activity_id : El ID de la actividad
Obtener la tabla de clasificación del segmento

Obtiene la tabla de clasificación para un segmento específico.

Parámetros:

  • segment_id : El ID del segmento
  • Varios filtros opcionales (género, grupo de edad, etc.)

Guía para desarrolladores

Configuración del proyecto

  1. Clonar el repositorio:
    git clone <repository-url> cd strava
  2. Instalar dependencias:
    uv install
  3. Configurar variables de entorno:
    export STRAVA_CLIENT_ID=your_client_id export STRAVA_CLIENT_SECRET=your_client_secret
    Alternativamente, cree un archivo .env con estas variables.

Ejecutando en modo de desarrollo

Ejecute el servidor con MCP CLI:

mcp dev strava_mcp/main.py

Autenticación manual

Puede obtener un token de actualización manualmente ejecutando:

python get_token.py

Estructura del proyecto

  • strava_mcp/ : Directorio principal del paquete
    • __init__.py : Inicialización del paquete
    • config.py : Ajustes de configuración mediante pydantic-settings
    • models.py : Modelos de Pydantic para entidades de la API de Strava
    • api.py : Cliente API de bajo nivel para Strava
    • auth.py : Implementación de la autenticación OAuth de Strava
    • oauth_server.py : Implementación de servidor OAuth independiente
    • service.py : Capa de servicio para la lógica empresarial
    • server.py : implementación del servidor MCP
  • tests/ : Pruebas unitarias
  • strava_mcp/main.py : Punto de entrada principal para ejecutar el servidor
  • get_token.py : script de utilidad para obtener un token de actualización manualmente

Ejecución de pruebas

pytest

Publicación en PyPI

Construyendo el paquete
# Build both sdist and wheel uv build
Publicación en PyPI
# Publish to Test PyPI first uv publish --index testpypi # Publish to PyPI uv publish

Licencia

Licencia MIT

Expresiones de gratitud

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

Un servidor de protocolo de contexto de modelo que permite a los usuarios acceder a los datos de fitness de Strava, incluidas las actividades del usuario, los detalles de la actividad, los segmentos y las tablas de clasificación a través de una interfaz API estructurada.

  1. Guía del usuario
    1. Instalación
    2. Configuración de credenciales de Strava
    3. Autenticación
    4. Herramientas disponibles
  2. Guía para desarrolladores
    1. Configuración del proyecto
    2. Ejecutando en modo de desarrollo
    3. Autenticación manual
    4. Estructura del proyecto
    5. Ejecución de pruebas
    6. Publicación en PyPI
  3. Licencia
    1. Expresiones de gratitud

      Related MCP Servers

      • -
        security
        A
        license
        -
        quality
        Integration Strava API с Model Context Protocol SDK
        Last updated -
        Python
        MIT License
      • -
        security
        F
        license
        -
        quality
        A Model Context Protocol server that provides language models with access to personal Whoop fitness data, allowing queries for cycles, recovery, strain, and workout information from the Whoop API.
        Last updated -
        2
        Python
        • Apple
      • A
        security
        A
        license
        A
        quality
        A Model Context Protocol server that provides language models with access to Strava API data, allowing them to query and analyze athlete activities from Strava.
        Last updated -
        4
        13
        Python
        MIT License
        • Apple
      • -
        security
        A
        license
        -
        quality
        A Model Context Protocol server that enables language models to interact with Strava data, including activities, athlete statistics, routes, achievements, and social features.
        Last updated -
        2
        Python
        MIT License
        • Linux
        • Apple

      View all related MCP servers

      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/yorrickjansen/strava-mcp'

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