Strava MCP
Integra tus datos de actividad de Strava con modelos de IA usando una base de datos local SQLite.
Documentación
Crear Strava MCP
Herramienta de configuración automatizada para integrar datos de Strava con Claude Desktop mediante el Protocolo de Contexto de Modelo (MCP).
Inicio Rápido
El equivalente en Python de npx es pipx. Instala y ejecuta:
# Install pipx if you don't have it
pip install pipx
# Run the setup tool (installs temporarily and executes)
pipx run create-strava-mcp
O instala globalmente:
# Install globally
pipx install create-strava-mcp
# Run anytime
create-strava-mcp
O usa pip + python -m:
# Install and run directly
pip install create-strava-mcp
python -m create-strava-mcp
Qué Hace Esta Herramienta
- Descarga el Strava MCP: Clona el repositorio de Python en tu máquina local
- Configura el Entorno de Python: Crea un entorno virtual e instala las dependencias
- Guía la Configuración de la API de Strava: Te guía para crear una aplicación de API de Strava
- Maneja la Autenticación: Gestiona el flujo de OAuth para obtener tus tokens
- Sincronización de Datos: Descarga tus datos iniciales de actividad de Strava a una base de datos SQLite local
- Integración con Claude: Actualiza automáticamente tu archivo de configuración de Claude Desktop
- Reinicio Opcional: Puede reiniciar Claude Desktop para activar el MCP inmediatamente
- Listo para Usar: Después de la configuración, Claude tendrá acceso a tus datos de Strava
Configuración de la Aplicación de API de Strava
El Enfoque de "Una Aplicación para Todos"
Necesitas crear UNA aplicación de API de Strava a través de la cual todos los usuarios se autenticarán:
-
Registra tu Aplicación (lo haces una sola vez):
- Ve a Configuración de API de Strava
- Haz clic en "Crear Aplicación"
- Completa los detalles:
- Nombre de la Aplicación: "Strava MCP" (o el nombre que prefieras)
- Categoría: Elige la categoría apropiada
- Sitio Web:
http://localhost - Dominio de Devolución de Autorización:
localhost
- Haz clic en "Crear"
-
Comparte las Credenciales de tu Aplicación:
- Obtendrás un
Client IDy unClient Secret - Los usuarios usarán tu
Client IDyClient Secret - Cada usuario obtiene su propio
Access TokenyRefresh Tokenpersonal
- Obtendrás un
-
Flujo de Autenticación del Usuario:
- Los usuarios ejecutan la herramienta de configuración con las credenciales de tu aplicación
- Se autentican a través de tu aplicación de Strava
- Obtienen sus propios tokens personales
- Sus datos permanecen privados para ellos
Detalles del Flujo de Autenticación
Your Strava App (Client ID + Secret)
↓
User runs setup tool → Browser opens → User logs into Strava
↓
User authorizes YOUR app → Gets personal tokens → Stored locally
↓
MCP uses user's personal tokens → Accesses only their data
Instalación Manual
Si prefieres la configuración manual:
# Clone your Strava MCP repository
git clone https://github.com/your-username/strava-mcp.git
cd strava-mcp
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Set up environment
cp .env.example .env
# Edit .env with your Strava app credentials
# Run authentication and initial sync
python strava-sync.py
# Add to Claude config manually (see Configuration section)
Configuración
La herramienta actualiza automáticamente tu archivo de configuración de Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux:
~/.config/claude/claude_desktop_config.json
Ejemplo de configuración:
{
"mcpServers": {
"strava-mcp": {
"command": "python",
"args": ["/path/to/strava-mcp/strava-mcp.py"],
"env": {
"STRAVA_CLIENT_ID": "your_client_id",
"STRAVA_CLIENT_SECRET": "your_client_secret",
"STRAVA_REFRESH_TOKEN": "users_personal_refresh_token",
"STRAVA_DB_PATH": "/path/to/strava_data.db"
}
}
}
}
Para Desarrolladores: Publicar tu Herramienta de Configuración
1. Estructura del Paquete
create-strava-mcp/
├── setup_strava_mcp.py # Main setup script
├── pyproject.toml # Modern Python packaging
├── setup.py # Alternative setup file
├── README.md # This file
└── requirements.txt # Dependencies (none for setup tool)
2. Actualizar la Configuración
En setup_strava_mcp.py, actualiza:
# Replace with your actual Strava MCP repository
repo_url = "https://github.com/your-username/strava-mcp.git"
3. Publicar en PyPI
# Build the package
python -m pip install build
python -m build
# Upload to PyPI
python -m pip install twine
python -m twine upload dist/*
4. Probar la Instalación
# Test with pipx
pipx run create-strava-mcp
# Or test with pip
pip install create-strava-mcp
create-strava-mcp
Uso Después de la Configuración
Una vez configurado, puedes hacer preguntas a Claude sobre tus datos de Strava:
- "Muéstrame mis actividades de carrera recientes"
- "¿Cuál es mi ritmo promedio este mes?"
- "Compara mi rendimiento con el año pasado"
- "Genera un resumen de entrenamiento"
- "¿Qué bicicleta he usado más este año?"
Comandos de Mantenimiento
# Update your Strava data
cd /path/to/strava-mcp
source venv/bin/activate # On Windows: venv\Scripts\activate
python strava-sync.py
# Check MCP status
# (View Claude Desktop logs)
Solución de Problemas
Problemas de Configuración
- Python no encontrado: Instala Python 3.8+ desde python.org
- Git no encontrado: Instala Git desde git-scm.com
- Errores de permisos: Ejecuta con los permisos apropiados o elige un directorio de instalación diferente
- Problemas con el entorno virtual: Asegúrate de tener el módulo
venv:python -m pip install virtualenv
Problemas con la API de Strava
- Credenciales inválidas: Verifica tu ID de Cliente y Secreto de Cliente de Strava
- Autorización fallida: Asegúrate de que tu aplicación de Strava tenga el dominio de devolución correcto (
localhost) - Token expirado: El MCP actualiza los tokens automáticamente, pero puedes volver a ejecutar
strava-sync.pymanualmente - Límite de solicitudes: Strava tiene límites de API; espera unos minutos si los alcanzas
Problemas de Integración con Claude
- MCP no aparece: Reinicia Claude Desktop por completo
- Errores de conexión: Verifica que las rutas de archivo en la configuración sean correctas
- Python no encontrado: Asegúrate de que la ruta de Python en la configuración de Claude apunte a tu entorno virtual
- Datos no cargados: Ejecuta
python strava-sync.pyen el directorio del MCP
Seguridad de Tokens
- Credenciales de tu Aplicación: Mantén
Client IDyClient Secretseguros, pero pueden compartirse con los usuarios - Tokens de Usuario: El
Access TokenyRefresh Tokende cada usuario son personales y deben permanecer privados - Almacenamiento Local: Todos los tokens se almacenan localmente en la máquina del usuario, nunca se te envían
Desinstalación
Para eliminar el Strava MCP:
- Elimina el directorio de instalación (se muestra durante la configuración)
- Elimina la entrada "strava-mcp" de tu archivo de configuración de Claude Desktop
- Reinicia Claude Desktop
Alternativa a pipx
Si los usuarios no quieren instalar pipx, también pueden usar:
# Direct pip install and run
pip install create-strava-mcp
python -c "import setup_strava_mcp; setup_strava_mcp.main()"
# Or install and use entry point
pip install create-strava-mcp
create-strava-mcp
Soporte
Si encuentras problemas:
- Consulta la sección de solución de problemas anterior
- Revisa los registros de Claude Desktop para errores de MCP
- Vuelve a ejecutar
python strava-sync.pypara actualizar los datos - Crea un problema en el repositorio de GitHub
Contribuciones
¡Las contribuciones son bienvenidas! Consulta el repositorio principal para obtener las pautas.
Licencia
Licencia MIT: consulta el archivo LICENSE para más detalles.