MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
Description from the maker (original English)
Self-hosted Intervals.icu MCP server: training analytics, Garmin data, wellness, workout planning
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
API_KEY, ATHLETE_ID, MCP_PERMISSIONS, MCP_TOOLSET, ATHLETE_TIMEZONEValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"intervals": {
"command": "uvx",
"args": [
"futureweb-intervals-mcp"
],
"env": {
"API_KEY": "your-value",
"ATHLETE_ID": "your-value",
"MCP_PERMISSIONS": "your-value",
"MCP_TOOLSET": "your-value",
"ATHLETE_TIMEZONE": "your-value"
}
}
}
}Run this in your terminal
claude mcp add intervals --env API_KEY=your-value --env ATHLETE_ID=your-value --env MCP_PERMISSIONS=your-value --env MCP_TOOLSET=your-value --env ATHLETE_TIMEZONE=your-value -- uvx futureweb-intervals-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"intervals": {
"command": "uvx",
"args": [
"futureweb-intervals-mcp"
],
"env": {
"API_KEY": "your-value",
"ATHLETE_ID": "your-value",
"MCP_PERMISSIONS": "your-value",
"MCP_TOOLSET": "your-value",
"ATHLETE_TIMEZONE": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"intervals": {
"type": "stdio",
"command": "uvx",
"args": [
"futureweb-intervals-mcp"
],
"env": {
"API_KEY": "your-value",
"ATHLETE_ID": "your-value",
"MCP_PERMISSIONS": "your-value",
"MCP_TOOLSET": "your-value",
"ATHLETE_TIMEZONE": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
MCP_PERMISSIONS envMCP_TOOLSET envATHLETE_TIMEZONE envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account futureweb, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: API_KEY, ATHLETE_ID
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.0.0b2) reached the registry 22 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv), Docker on your computer.
In the same category: MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
An MCP server retrieving transcripts of YouTube videos
GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.
AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Advanced Intervals.icu MCP server for ChatGPT, Claude and every MCP client: Garmin-enriched metrics, every custom field and stream, recovery insights and endurance performance analysis.
A Model Context Protocol server that lets AI assistants read and analyse your Intervals.icu training data the way a coach would: activities with every custom field and stream, intervals, wellness against personal baselines, thresholds and zones, planned-versus-executed workouts, climbs, dual power meters, best efforts, efficiency and fatigue resistance, nutrition and weight, training summaries and the calendar. It runs where you run it, talks only to the Intervals.icu API and exposes nothing that writes unless you enable it.
Continuation of [mvilanova/intervals-mcp-server](https://github.com/mvilanova/intervals-mcp-server).
The original project is no longer actively developed (last commit on 2 August 2026, 29
pull requests left open). This community-maintained fork carries it on: the useful
open pull requests were reviewed and merged with their authors credited, the bugs fixed, and the
server rebuilt around coaching analysis, Garmin data and safe remote access. Not affiliated with
Intervals.icu or Garmin.
Companion project: the Garmin Intervals Bridge puts back the metrics Garmin strips from the files it sends to Intervals.icu (stamina, training effect, recovery time, VO₂max, running dynamics, sleep and HRV details …). This MCP is built to read all of it, but works just as well without the bridge.
For the mountains: intervals-summits writes the summits, huts and passes of your activities into custom fields (Summits, SummitCount). This MCP reads them like any other field, so your assistant knows which summits a tour reached: ask which ones you climbed this year, or how often.
detail_level (compact, standard, full) and output_format="json" on the heavy tools, a compact tool catalogue (about 23k tokens for read and write, an optional core set of about 10k), 13 ready-made coaching prompts and method guides as MCP resources and through get_guide.private_key_jwt (ChatGPT), PKCE and RFC 9207. Streamable HTTP (/mcp) and SSE from one process.dry_run shows the exact request, a second identical event on the same day is refused, and every write reads back what Intervals.icu stored and parsed.until_lap_press) let you start the next interval where the road suits it, e.g. at the foot of a climb, while the work steps stay timed. Confirmed on a Garmin Edge 1040 on the bike (see below).read, write, destructive, admin) enforced on the server; only read is active unless you enable more.Garmin device ──► Garmin Connect ──► official sync ──► Intervals.icu activity (filtered FIT)
│ ▲ └── Garmin Intervals Bridge ──────────┘ restores custom fields, streams, wellness │ Futureweb Intervals MCP (this project) │ ChatGPT / Claude / any MCP client
The Garmin Intervals Bridge writes the metrics Garmin filters out into the custom activity fields, custom streams and wellness fields you defined in Intervals.icu. The MCP reads those definitions at run time, so every restored value shows up in the tools automatically:
| Restored by the bridge | Where the MCP shows it |
|---|---|
| Training effect, EPOC, Garmin training load, recovery time, VO₂max, performance condition, stamina start/end, sweat loss, temperatures | get_activity_details, get_activity_report, get_training_summary, get_training_load (device loads apart from the Intervals.icu load), get_fueling_analysis (sweat loss per hour), get_activity_data_audit (which fields still hold a zero placeholder or no value) |
| Stamina and potential stamina, second power meter, grade-adjusted speed, gear selection, running dynamics streams | get_activity_streams, get_activity_intervals, analyze_workout_execution, analyze_climbs, compare_power_streams |
| Night SpO₂, respiration, sleeping HR, HRV details, Body Battery, sleep stages and stress, readiness, nutrition | get_wellness_data, get_recovery_snapshot, get_wellness_trends, get_nutrition_summary |
The MCP never contacts Garmin; the bridge is optional and other devices or sync tools that fill custom items get the same treatment. Worked examples and notes on reading the device metrics correctly: docs/GARMIN_BRIDGE.md.
67 tools; 52 of them only read. Write tools are marked ✎ (write), ✖ (destructive) or ⚙ (admin) and are hidden unless their class is enabled. Most tools accept output_format="json" and detail_level (compact first). Tools never take an API key: credentials come only from the server environment.
The catalogue is kept small for the AI client: short descriptions that say when to use a tool, a description and (where the values are fixed) an enum for every parameter, and text results without a duplicate structured copy. Method details and the workout format live in MCP resources (intervals://methods/ , intervals://workout-syntax) and in get_guide(topic) for clients that only call tools. tools/list is about 22.7k tokens at MCP_PERMISSIONS=read,write (was 42.0k; cl100k); see Tool sets for a smaller set.
Activity analysis
| Tool | What it does |
|---|---|
get_activity_report | Complete analysis in one call: overview with fueling (carbs used/ingested per hour, sweat loss, energy), weather (temperature, feels-like, wind, head/tailwind share) and W′ balance (max depletion, time below 75/50/25 % of W′), plan vs execution or intervals, second power meter check, climbs, data-quality notes (source, upload and analysis times, recording stops, zero placeholders); include_route_history compares earlier activities on the same Intervals.icu route (time, power, W/kg, HR, weather, stamina); detail_level compact (core numbers, one context line and key findings, about 2-2.5k characters), standard or full |
get_activity_data_audit | Provenance and data quality of one activity: source and file (Garmin sync, Garmin export or bridge upload, Strava stub), upload and analysis times, filtered duplicates, recording stops and gaps, FIT laps vs intervals and manual edits, device and sensor identity, streams usual for the sport but missing, per-stream coverage, custom fields with value / zero placeholder / none and what the Garmin Intervals Bridge could fill; without an activity, the per-sport data coverage of a period |
| analyze_workout_execution | Planned vs executed per step (duration, target adherence, time in range, HR response, fade, Pw:HR drift with the Intervals.icu decoupling sign, stamina). A step ma
Only the beginning is shown; read the rest in the repo