intervals-mcp
Intervals MCP
Un servidor MCP autohospedado y de solo lectura que brinda a los asistentes de IA acceso a los datos de entrenamiento de un atleta en Intervals.icu.
Conecta un reloj deportivo, una computadora de bicicleta, un entrenador, Strava u otra fuente compatible a Intervals.icu. Luego, Intervals MCP expone los datos de entrenamiento normalizados a ChatGPT, Claude, Claude Code, Cursor, VS Code y otros clientes MCP. Consulta Intervals.icu para conocer sus integraciones actuales; la lista cambia con el tiempo.
El servidor solo realiza solicitudes GET. No puede crear, editar ni eliminar nada en la cuenta de Intervals.icu de un atleta.
Lo que un asistente puede leer
Perfil del atleta, zona horaria, configuraciones deportivas, zonas, FTP, LTHR y FC máxima.
Actividades, detalles, vueltas, intervalos y flujos de datos reducidos.
Bienestar, forma física, fatiga, VFC, sueño, estado de ánimo y peso cuando estén disponibles.
Eventos planificados, curvas de mejor esfuerzo, equipamiento y la biblioteca de entrenamientos.
Puntos finales adicionales
GETde Intervals.icu v1 a través de una herramienta sin procesar de solo lectura.
Las respuestas grandes se compactan antes de llegar al modelo. Los campos vacíos se eliminan, los flujos de datos se reducen y los resúmenes utilizan la serie de datos completa.
Related MCP server: intervals.mcp
Inicio rápido
Necesitas un VPS con Ubuntu o Debian y un nombre de host público. Apunta el registro DNS del nombre de host al servidor y permite los puertos TCP entrantes 80 y 443. El instalador agrega Docker, Compose, Git y uv si faltan:
curl -fsSL https://raw.githubusercontent.com/VictorForV/intervals-mcp/master/install.sh | sudo bashRevisa install.sh antes de ejecutarlo si prefieres no canalizar un script remoto a un shell privilegiado. La instalación manual sigue disponible clonando el repositorio y ejecutando ./manage.sh después de instalar los requisitos previos.
Elige Configuración inicial. El administrador solicita el nombre de host público, un nombre corto para el atleta y el ID de atleta y la clave API de Intervals.icu. El ID y la clave están disponibles en Configuración → Configuración de desarrollador en Intervals.icu. La clave API usa entrada oculta.
El administrador crea una configuración solo para el propietario, genera un token de URL aleatorio y seguro, inicia el servicio e imprime las URL del conector. Ejecuta ./manage.sh más tarde para agregar, listar, editar o eliminar atletas, rotar URL, reconstruir, reiniciar o inspeccionar el servicio.
Conexión de un cliente de IA
Cada atleta recibe dos URL secretas:
https://mcp.example.com/<secret>/mcp # Streamable HTTP, preferred
https://mcp.example.com/<secret>/sse # legacy SSE compatibilityTrata la URL completa como una contraseña. Otorga acceso de lectura a los datos de entrenamiento y bienestar de ese atleta.
Claude y Claude Desktop
Abre Configuración → Conectores → Agregar conector personalizado e ingresa la URL /mcp. La disponibilidad y los permisos de la organización dependen del plan de Claude. Consulta las instrucciones actuales de Anthropic.
Claude Code
El administrador imprime un comando listo para ejecutar:
claude mcp add --transport http intervals-alex https://mcp.example.com/<secret>/mcpChatGPT
Agrega el servidor como una aplicación/conector personalizado y usa la URL aceptada por tu espacio de trabajo actual de ChatGPT. La disponibilidad, la interfaz de usuario y los requisitos de administrador varían según el plan y pueden cambiar. Consulta la documentación actual de aplicaciones de OpenAI. El administrador muestra ambos formatos de URL para compatibilidad.
Otros clientes
Usa /mcp con clientes HTTP Streamable remotos y /sse con clientes SSE más antiguos. Sigue la documentación actual del cliente y nunca incluyas una URL secreta en una configuración compartida.
Administración
El panel interactivo es la interfaz recomendada:
./manage.shPara la automatización, la misma interfaz tiene subcomandos:
uv run intervals-mcp-admin add
uv run intervals-mcp-admin list
uv run intervals-mcp-admin show alex
uv run intervals-mcp-admin edit alex
uv run intervals-mcp-admin rotate alex
uv run intervals-mcp-admin remove alexEvita --api-key en un shell interactivo porque los argumentos de los comandos pueden guardarse en el historial del shell o exponerse en la lista de procesos. Omítelo para usar entrada oculta.
Modo stdio local
Para un atleta y un cliente que lanza procesos locales, copia .env.example a .env, configura las credenciales de Intervals.icu y ejecuta:
uv run intervals-mcpModelo de seguridad
Las solicitudes a Intervals.icu son de solo lectura (
GET).Cada atleta recibe un cliente API separado y un token de ruta aleatorio independiente.
.envyusers.tomlestán en gitignore y se escriben con modo0600.Las claves API y los tokens de ruta se excluyen de los registros de acceso de la aplicación y del proxy.
El servicio público usa HTTPS a través de Caddy.
users.tomlse monta como solo lectura en el contenedor.
El token de ruta es autenticación de portador: cualquiera que tenga la URL puede leer los datos de ese atleta. Rótalo desde ./manage.sh si se expone. Consulta SECURITY.md para informar problemas.
Desarrollo
uv sync
uv run pytestLas pruebas usan fixtures totalmente sintéticos con forma de API y no realizan solicitudes de red. Regéneralos con uv run python scripts/generate_fixtures.py.
Consulta CONTRIBUTING.md para obtener pautas de desarrollo.
Licencia
MIT — consulta LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables AI assistants to interact with Intervals.icu fitness tracking and wellness data, allowing users to fetch, filter, and group activities or health metrics. It provides structured summaries of workouts and physical well-being through natural language queries.4
- FlicenseAqualityCmaintenanceEnables AI assistants to access and analyze intervals.icu training data including activities, fitness metrics (CTL/ATL/TSB), wellness stats, and calendar events. Supports natural language querying of athletic performance for training insights and workout planning.6
- AlicenseAqualityDmaintenanceEnables interaction with Intervals.icu data, including activities, wellness, and calendar events, via natural language.10341MIT
- AlicenseNot gradedqualityDmaintenanceIntegrates Intervals.icu training data, wellness records, workouts, and calendar events with AI assistants through MCP tools.271MIT
Related MCP Connectors
Garmin data in Claude & ChatGPT via the Garmin Health API. OAuth sign-in, no password sharing.
Garmin data in Claude: 135 tools — activities, sleep, HRV, training, workouts. Free, open source.
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/VictorForV/intervals-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server