intervals-mcp
Intervals MCP
Ein selbst gehosteter, schreibgeschützter MCP-Server, der KI-Assistenten Zugriff auf die Trainingsdaten eines Athleten von Intervals.icu bietet.
Verbinden Sie eine Sportuhr, einen Fahrradcomputer, einen Trainer, Strava oder eine andere unterstützte Quelle mit Intervals.icu. Intervals MCP stellt dann die normalisierten Trainingsdaten ChatGPT, Claude, Claude Code, Cursor, VS Code und anderen MCP-Clients zur Verfügung. Siehe Intervals.icu für die aktuellen Integrationen; die Liste ändert sich im Laufe der Zeit.
Der Server führt nur GET-Anfragen aus. Er kann nichts in einem Intervals.icu-Konto eines Athleten erstellen, bearbeiten oder löschen.
Was ein Assistent lesen kann
Athletenprofil, Zeitzone, Sporteinstellungen, Zonen, FTP, LTHR und maximale Herzfrequenz.
Aktivitäten, Details, Runden, Intervalle und heruntergesampelte Streams.
Wellness, Fitness, Ermüdung, HRV, Schlaf, Stimmung und Gewicht, sofern verfügbar.
Geplante Ereignisse, Best-Effort-Kurven, Ausrüstung und die Workout-Bibliothek.
Zusätzliche Intervals.icu v1
GET-Endpunkte über ein schreibgeschütztes Roh-Tool.
Große Antworten werden komprimiert, bevor sie das Modell erreichen. Leere Felder werden entfernt, Streams werden heruntergesampelt und Zusammenfassungen verwenden die vollständige Datenreihe.
Related MCP server: intervals.mcp
Schnellstart
Sie benötigen einen Ubuntu- oder Debian-VPS mit einem öffentlichen Hostnamen. Richten Sie den DNS-Eintrag des Hostnamens auf den Server und erlauben Sie eingehende TCP-Ports 80 und 443. Der Installer fügt Docker, Compose, Git und uv hinzu, wenn sie fehlen:
curl -fsSL https://raw.githubusercontent.com/VictorForV/intervals-mcp/master/install.sh | sudo bashÜberprüfen Sie install.sh, bevor Sie es ausführen, wenn Sie es vorziehen, kein Remote-Skript an eine privilegierte Shell zu übergeben. Die manuelle Installation bleibt verfügbar, indem Sie das Repository klonen und ./manage.sh ausführen, nachdem Sie die Voraussetzungen installiert haben.
Wählen Sie Ersteinrichtung. Der Manager fragt nach dem öffentlichen Hostnamen, einem kurzen Athletennamen und der Intervals.icu-Athleten-ID und dem API-Schlüssel. Die ID und der Schlüssel sind unter Einstellungen → Entwicklereinstellungen in Intervals.icu verfügbar. Der API-Schlüssel verwendet versteckte Eingabe.
Der Manager erstellt eine nur für den Eigentümer zugängliche Konfiguration, generiert ein starkes zufälliges URL-Token, startet den Dienst und gibt die Connector-URLs aus. Führen Sie später ./manage.sh aus, um Athleten hinzuzufügen, aufzulisten, zu bearbeiten oder zu entfernen, URLs zu rotieren, neu zu erstellen, neu zu starten oder den Dienst zu überprüfen.
Verbinden eines KI-Clients
Jeder Athlet erhält zwei geheime URLs:
https://mcp.example.com/<secret>/mcp # Streamable HTTP, preferred
https://mcp.example.com/<secret>/sse # legacy SSE compatibilityBehandeln Sie die vollständige URL wie ein Passwort. Sie gewährt Lesezugriff auf die Trainings- und Wellnessdaten dieses Athleten.
Claude und Claude Desktop
Öffnen Sie Einstellungen → Connectors → Benutzerdefinierten Connector hinzufügen und geben Sie die /mcp-URL ein. Verfügbarkeit und Organisationsberechtigungen hängen vom Claude-Plan ab. Siehe die aktuellen Anthropic-Anweisungen.
Claude Code
Der Manager gibt einen sofort ausführbaren Befehl aus:
claude mcp add --transport http intervals-alex https://mcp.example.com/<secret>/mcpChatGPT
Fügen Sie den Server als benutzerdefinierte App/Connector hinzu und verwenden Sie die URL, die von Ihrem aktuellen ChatGPT-Arbeitsbereich akzeptiert wird. Verfügbarkeit, Benutzeroberfläche und Administratoranforderungen variieren je nach Plan und können sich ändern. Siehe die aktuelle OpenAI-Apps-Dokumentation. Der Manager zeigt beide URL-Formate für die Kompatibilität.
Andere Clients
Verwenden Sie /mcp mit entfernten Streamable-HTTP-Clients und /sse mit älteren SSE-Clients. Befolgen Sie die aktuelle Dokumentation des Clients und übergeben Sie niemals eine geheime URL an eine gemeinsame Konfiguration.
Verwaltung
Das interaktive Panel ist die empfohlene Oberfläche:
./manage.shFür die Automatisierung bietet dieselbe Oberfläche Unterbefehle:
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 alexVermeiden Sie --api-key in einer interaktiven Shell, da Befehlsargumente im Shell-Verlauf gespeichert oder in der Prozessliste angezeigt werden können. Lassen Sie es weg, um eine versteckte Eingabe zu erhalten.
Lokaler Stdio-Modus
Für einen Athleten und einen Client, der lokale Prozesse startet, kopieren Sie .env.example in .env, konfigurieren Sie die Intervals.icu-Anmeldeinformationen und führen Sie Folgendes aus:
uv run intervals-mcpSicherheitsmodell
Intervals.icu-Anfragen sind schreibgeschützt (
GET).Jeder Athlet erhält einen separaten API-Client und ein unabhängiges zufälliges Pfad-Token.
.envundusers.tomlsind gitignored und werden mit Modus0600geschrieben.API-Schlüssel und Pfad-Token sind von Anwendungs- und Proxy-Zugriffsprotokollen ausgeschlossen.
Der öffentliche Dienst verwendet HTTPS über Caddy.
users.tomlist schreibgeschützt in den Container eingebunden.
Das Pfad-Token ist eine Bearer-Authentifizierung: Jeder mit der URL kann die Daten dieses Athleten lesen. Rotieren Sie es über ./manage.sh, wenn es offengelegt wurde. Siehe SECURITY.md zum Melden von Problemen.
Entwicklung
uv sync
uv run pytestTests verwenden vollständig synthetische, API-förmige Fixtures und stellen keine Netzwerkanfragen. Regenerieren Sie sie mit uv run python scripts/generate_fixtures.py.
Siehe CONTRIBUTING.md für Entwicklungsrichtlinien.
Lizenz
MIT – siehe 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