mcpbeat

Youtube Transcript

glebis/youtube-transcript

Extract YouTube video transcripts with metadata and save as Markdown to Obsidian vault. Use this skill when the user requests downloading YouTube transcripts, converting YouTube videos to text, or extracting video subtitles. Does not download video/audio files, only metadata and subtitles.

3k tokens
context cost
the whole folder, loaded on every use
4
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
337
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/glebis/claude-skills --skill youtube-transcript

What comes with it

11 226 bytes besides the instruction
.claude-plugin/plugin.json
scripts/deduplicate_transcript.py
scripts/extract_transcript.py

The instruction itself

10 sections, as written by the author

YouTube Transcript

Overview

Extract YouTube video transcripts, metadata, and chapters using yt-dlp. Output formatted as Markdown with YAML frontmatter, saved to ~/Brains/brain/ (Obsidian vault).

Quick Start

To extract a transcript from a YouTube video:

python scripts/extract_transcript.py <youtube_url>

Optional: Specify custom output filename:

python scripts/extract_transcript.py <youtube_url> custom_filename.md

Output Format

YAML Frontmatter

The generated Markdown includes comprehensive metadata:

  • title - Video title
  • channel - Channel name
  • url - YouTube URL
  • upload_date - Upload date (YYYY-MM-DD)
  • duration - Video duration (HH:MM:SS)
  • description - Video description (truncated to 500 chars)
  • tags - Array of video tags
  • view_count - View count
  • like_count - Like count

Body Structure

Transcript organized by video chapters (if available):

## Chapter Title

**00:05:23** Transcript text for this segment.

**00:05:45** Next segment text.

If no chapters exist, all content appears under "## Transcript" heading.

Timestamps formatted as HH:MM:SS for consistency.

Workflow

  • Extract metadata and subtitles using yt-dlp
  • Parse VTT subtitle format to extract timestamps and text
  • Group transcript segments by video chapters (if present)
  • Format as Markdown with YAML frontmatter
  • Save to ~/Brains/brain/ with sanitized filename based on video title
  • Clean up temporary subtitle files

Deduplication

To remove duplicates from existing transcript files:

python scripts/deduplicate_transcript.py <markdown_file>

This removes transcript entries that are prefixes of subsequent entries (common in VTT files where subtitles accumulate).

Requirements

Ensure yt-dlp is installed:

pip install yt-dlp

Limitations

  • Extracts subtitles in English first, falls back to Russian if English unavailable
  • Requires video to have subtitles (auto-generated or manual)
  • Does not download video or audio files
  • Description truncated to 500 characters in frontmatter

How to use it

Copy the folder

Take glebis/youtube-transcript from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference pip. Without those the skill loads but fails at the first command.