본문으로 건너뛰기
cccskills
무료GitHub에 공개

youtube-to-docs

Process YouTube videos, playlists and channels with the youtube-to-docs MCP server. Use this when the user wants to: (1) get a transcript, (2) summarize a video or generate Q&A, speakers and tags, (3) make an infographic, (4) make an audio or video summary, (5) translate the outputs, (6) make the video accessible (WCAG 2.1 / Section 508 corrected captions, audio description), or (7) do a full 'kitchen sink' run.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md13.4 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

YouTube to Docs

You have the process_video tool from the youtube-to-docs MCP server. One call handles a video, a playlist, a channel or a comma-separated list of IDs. Each call writes a row per video to a CSV, with links to the files it creates.

If this skill was run with arguments ($ARGUMENTS), take the URL from them, pick the matching workflow below, and call process_video without asking for confirmation. Otherwise, work out the workflow from the request. Ask only about what you can't infer:

  • Model: if the request needs a summary and names no model, ask "What model do you want to use for the summary?"
  • Output location: if none is given, ask "Where do you want the output saved? Is the default location (youtube-to-docs-artifacts/youtube-docs.csv) okay?"
  • Extras: where it fits, offer an infographic, an audio summary, a video summary, AI transcription, translation, corrected captions, or transcript post-processing.

Model shorthand

User saysmodeltts_modelinfographic_modelall_suite
"gemini", "gemini flash", "flash"gemini-3.5-flash-litegemini-3.8-flash-lite-tts-Koregemini-nano-banana-2.1gemini-flash
"gemini pro", "pro"gemini-4-argongemini-3.8-flash-tts-Koregemini-3-pro-imagegemini-pro
"aws"bedrock-nova-2-lite-v1aws-polly-Ruthgemini-3-pro-image-
"gcp"---gcp-pro

Workflows

Transcript only

"Get the transcript", "ytt".

process_video(url='...') fetches the YouTube captions. No model is needed.

Summary and infographic

"Make an infographic", "summarize this".

  • Flash (the default when no family is given): model='gemini-3.5-flash-lite', infographic_model='gemini-nano-banana-2.1'
  • Pro: model='gemini-4-argon', infographic_model='gemini-3-pro-image'

The tool also writes multimodal alt text for each infographic with the summary model. Set alt_text_model to use a different model.

Kitchen sink

"Everything", "kitchen sink", "ks", "video summary".

  • all_suite: 'gemini-pro' by default, 'gemini-flash' if flash is mentioned, 'gcp-pro' if gcp is mentioned
  • combine_infographic_audio=True, verbose=True
  • Language: omit translate for English only. For another language, use its code (spanish → es, french → fr) in translate='gemini-3.5-flash-lite-{lang}'. If "aws translate" or "gcp translate" is mentioned, use 'aws-translate-{lang}' or 'gcp-translate-{lang}' instead.

Accessible video: corrected captions and audio description (WCAG 2.1 / Section 508)

"Fix the captions", "make this compliant", "audio description", "best captions", "cc".

  • corrected_captions='default' gives the best results (recommended). It runs gemini-4-argon on a gemini-3.5-transcribe transcript made in the same run, with names and speaking times read from the video.
  • If YouTube is named as the source, use 'gemini-4-argon-youtube', which starts from the YouTube captions and skips transcription.
  • If an STT model is named as the source, use 'gemini-4-argon-{stt model}', e.g. 'gemini-4-argon-gcp-chirp3'.
  • If a cheaper or faster model is wanted ("flash", "cheap"), use 'gemini-3.5-flash-lite-gemini-3.5-transcribe'.

One run writes:

  • corrected captions as SRT and WebVTT, with [Name] on every speaker change
  • the audio description, as WebVTT descriptions tracks and a descriptive transcript
  • the original video, and a copy with the captions burned in and the descriptions narrated (narrated with tts_model, default gemini-3.8-flash-tts-Kore)
  • an Able Player page in vtt-files/ for checking the WebVTT files. It opens straight from disk.

A 3-hour meeting takes about 20 minutes and costs about $3.

From the video itself

"Summarize from the video", "get the speakers' names right".

from_video='agentic' also generates the summary, one-sentence summary, speakers and Q&A with Gemini video understanding. agentic lets the model move through the video and needs Gemini 3.5 Flash-Lite or later. static samples frames at 1 FPS and works with any Gemini model. 'agentic,static' runs both.

AI transcription

Set transcript_source to an STT model, e.g. 'gemini-3.5-transcribe', 'gemini-3.5-flash-lite' or 'gcp-chirp3'. gemini-3.5-transcribe returns word-level timestamps and adds [Speaker N] labels on speaker changes. gcp- models need GOOGLE_CLOUD_PROJECT, and YTD_GCS_BUCKET_NAME is recommended. With an AI transcript, the tool also summarizes the YouTube transcript; set no_youtube_summary=True to skip that.

Output locations

  • Local CSV (the default): youtube-to-docs-artifacts/youtube-docs.csv, or another .csv path inside youtube-to-docs-artifacts/
  • Google Drive: output_file='workspace'
  • SharePoint: output_file='sharepoint'
  • Hugging Face dataset: output_file='hf', plus hugging_face_dataset (a repo id like username/my-dataset, or a plain name to slugify under the signed-in user; a playlist uses its title by default). Needs HF_TOKEN.
  • In memory, with no files on disk: output_file='memory'
  • No CSV: output_file='none'

Tool reference: process_video

ArgumentDescriptionExamples
urlRequired. YouTube URL, video ID, playlist ID, channel handle, or comma-separated IDs.https://youtu.be/..., PL..., @channel
modelLLM(s) for the summary, Q&A, speakers and tags. Comma-separated for more than one.gemini-3.5-flash-lite
infographic_modelImage model(s) for infographics. Comma-separated for one infographic per model.gemini-nano-banana-2.1, gemini-3-pro-image
alt_text_modelModel for the infographic alt text. Defaults to the summary model.gemini-3.5-flash-lite
tts_modelText-to-speech model and voice.gemini-3.8-flash-lite-tts-Kore, gcp-chirp3-Kore, aws-polly-Ruth
all_suiteModel suite for everything.gemini-flash, gemini-pro, gemini-flash-pro-image, gcp-pro
combine_infographic_audioCombine the infographic and audio summary into an MP4. Needs tts_model and infographic_model.True
translateTranslate all outputs: {model}-{language}, aws-translate-{language} or gcp-translate-{language}.gemini-3.5-flash-lite-es, aws-translate-es, gcp-translate-es
corrected_captionsMake the video accessible (see above). 'default' for the best, or {model} / {model}-{source}.default, gemini-4-argon-youtube
from_videoAlso generate outputs from the video itself.agentic, static, agentic,static
transcript_sourceTranscript source. Defaults to youtube, or to the STT model that corrected_captions corrects.gemini-3.5-transcribe, gcp-chirp3
no_youtube_summarySkip the extra summary of the YouTube transcript when an AI transcript is used.True
post_processJSON operations on the transcript. The results become CSV columns.'{"word count": "apple"}', '{"word count": ["apple", "banana"]}'
output_fileWhere the CSV goes (see above).workspace, sharepoint, hf, memory, none
hugging_face_datasetDataset for output_file='hf'.username/my-dataset
verboseVerbose logging.True

Where the files go

Files are saved in folders next to the CSV, and each one is linked from a CSV column:

  • srt-files/: SRT transcripts (YouTube and AI)
  • summary-files/, one-sentence-summary-files/, tag-files/
  • qa-files/: Q&A tables, with "Timestamp" and "Timestamp URL" links checked against the YouTube SRT timings
  • infographic-alt-text/, infographic-prompts/, summary-prompts/
  • corrected-caption-files/: corrected SRT captions
  • vtt-files/: WebVTT captions and descriptions tracks, and the Able Player page
  • descriptive-transcript-files/: the dialogue by speaker, with descriptions of the visual information
  • video-files/: the original video, and the copy with captions burned in and descriptions narrated
  • video-context-files/: on-screen names, speaking times, terms and events read from the video

Examples

RequestCall
"Get me a transcript of this video."process_video(url='...')
"Make an infographic for this video using Gemini Pro."process_video(url='...', model='gemini-4-argon', infographic_model='gemini-3-pro-image')
"Do a kitchen sink run on this video in Spanish."process_video(url='...', all_suite='gemini-pro', combine_infographic_audio=True, verbose=True, translate='gemini-3.5-flash-lite-es')
"Summarize this playlist and save it to Drive."process_video(url='PL...', model='gemini-3.5-flash-lite', output_file='workspace')
"Make the best accessible captions for this video."process_video(url='...', corrected_captions='default')
"Correct the YouTube captions for this video for accessibility."process_video(url='...', corrected_captions='gemini-4-argon-youtube')
"Make an audio-described version of this video."process_video(url='...', corrected_captions='default')
"Count how many times 'apple' appears in the transcript."process_video(url='...', post_process='{"word count": "apple"}')
"Summarize this hearing from the video and get the names right."process_video(url='...', model='gemini-4-argon', from_video='agentic')

Without the MCP server

If the process_video tool isn't available, run the CLI with uv. The URL or ID is a positional argument, so don't use --url:

uvx --from "youtube-to-docs[all]" youtube-to-docs B0x2I_doX9o                  # transcript
uvx --from "youtube-to-docs[all]" youtube-to-docs B0x2I_doX9o --all gemini-pro # kitchen sink
uvx --from "youtube-to-docs[all]" youtube-to-docs B0x2I_doX9o -cc              # accessible video

See docs/usage.md for every option.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

이 스킬의 문제 신고