/ 目錄 / 演練場 / youtube-fetcher-to-markdown
● 社群 JimmySadek ⚡ 即開即用

youtube-fetcher-to-markdown

作者 JimmySadek · JimmySadek/youtube-fetcher-to-markdown

Turn any YouTube URL into a queryable Markdown note — YAML frontmatter, chapters, full transcript, Obsidian-ready.

JimmySadek/youtube-fetcher-to-markdown converts YouTube videos into structured Markdown in ~/yt_transcripts/. Accepts URLs in any format. Options: --timestamps (temporal markers), --lang (caption language), --format (json / srt), --source (project tag). Output includes YAML frontmatter (title, channel, id, date, duration, language), full description with links, chapter timestamps, and transcript. Frontmatter lets Obsidian Dataview query your entire transcript library.

為什麼要用

核心特性

即時演示

實際使用效果

youtube-fetcher-to-markdown-skill.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "youtube-fetcher-to-markdown-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/JimmySadek/youtube-fetcher-to-markdown",
        "~/.claude/skills/youtube-fetcher-to-markdown"
      ],
      "_inferred": true
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "youtube-fetcher-to-markdown-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/JimmySadek/youtube-fetcher-to-markdown",
        "~/.claude/skills/youtube-fetcher-to-markdown"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "youtube-fetcher-to-markdown-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/JimmySadek/youtube-fetcher-to-markdown",
        "~/.claude/skills/youtube-fetcher-to-markdown"
      ],
      "_inferred": true
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "youtube-fetcher-to-markdown-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/JimmySadek/youtube-fetcher-to-markdown",
        "~/.claude/skills/youtube-fetcher-to-markdown"
      ],
      "_inferred": true
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "youtube-fetcher-to-markdown-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/JimmySadek/youtube-fetcher-to-markdown",
        "~/.claude/skills/youtube-fetcher-to-markdown"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "youtube-fetcher-to-markdown-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/JimmySadek/youtube-fetcher-to-markdown",
          "~/.claude/skills/youtube-fetcher-to-markdown"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add youtube-fetcher-to-markdown-skill -- git clone https://github.com/JimmySadek/youtube-fetcher-to-markdown ~/.claude/skills/youtube-fetcher-to-markdown

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: youtube-fetcher-to-markdown

Archive a YouTube lecture series as a searchable Obsidian vault

👤 Self-learners and researchers ⏱ ~20 min beginner

何時使用: You're studying from YouTube and want to search across 20+ videos later.

前置條件
  • Skill cloned — git clone https://github.com/JimmySadek/youtube-fetcher-to-markdown ~/.claude/skills/youtube-fetcher-to-markdown
  • yt-dlp or equivalent installed — brew install yt-dlp
步驟
  1. Fetch a playlist's transcripts
    youtube-fetcher-to-markdown — fetch every video in playlist <URL>, include timestamps, source=cs-course.✓ 已複製
    → ~/yt_transcripts/ fills with per-video markdown files, all tagged source: cs-course
  2. Query via Dataview
    In Obsidian, write a Dataview query listing all cs-course videos sorted by upload date.✓ 已複製
    → Dataview returns the set because the frontmatter is consistent

結果: A queryable knowledge base you can grep, tag, and cross-link.

注意事項
  • Some videos have no captions and the transcript is empty — Check the skill's log; fall back to Whisper locally for those
搭配使用: filesystem

Turn a YouTube talk into a blog post draft

👤 Creators repurposing content ⏱ ~25 min beginner

何時使用: Your talk went up; you want a written version for SEO.

步驟
  1. Fetch the transcript
    youtube-fetcher-to-markdown <URL> with chapters and timestamps.✓ 已複製
    → Markdown with chapter-delimited sections
  2. Rewrite as blog
    Now draft a blog post from this transcript.✓ 已複製
    → Structured post using the chapters as section anchors

結果: Draft-quality blog post based on your own talk.

組合

與其他 MCP 搭配,撬動十倍槓桿

youtube-fetcher-to-markdown-skill + filesystem

Route transcripts into a specific Obsidian vault folder with custom naming

Save fetched transcripts to ~/obsidian/sources/youtube/.✓ 已複製
youtube-fetcher-to-markdown-skill + seo-blog-writer-claude-skill

Fetch transcript → generate blog post in one chain

Fetch the transcript for <URL>, then seo-blog-writer target keyword 'X'.✓ 已複製
youtube-fetcher-to-markdown-skill + claude-content-writer-skill

Turn transcripts into newsletters in your brand voice

Fetch transcript, then claude-content-writer newsletter version in my voice profile.✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
fetch_single URL + options (timestamps, lang, format, source) One video at a time 0
fetch_playlist playlist URL + options Bulk archiving 0
export_json URL You want the data in a non-markdown pipeline 0

成本與限制

運行它的成本

API 配額
YouTube has no explicit scrape quota for captions but be reasonable
每次呼叫 Token 數
Proportional to video length
費用
Free — skills are local files
提示
For very long videos, use JSON export + snippet extraction instead of loading full transcripts into context.

安全

權限、密鑰、影響範圍

憑證儲存: No credentials — pure prompts
資料出站: Fetches from YouTube. No data leaves your machine afterward.

故障排查

常見錯誤與修復

Skill not invoked — Claude summarizes without fetching

Say 'fetch the transcript using youtube-fetcher-to-markdown' explicitly.

驗證: ls ~/.claude/skills/youtube-fetcher-to-markdown/SKILL.md
SKILL.md frontmatter wrong

Re-clone; description drives activation.

驗證: head ~/.claude/skills/youtube-fetcher-to-markdown/SKILL.md
Wrong trigger keywords — transcript has no timestamps

Pass --timestamps explicitly in the prompt.

替代方案

youtube-fetcher-to-markdown 對比其他方案

替代方案何時用它替代權衡
Whisper (local)No captions available on the videoNeeds GPU or patience; better accuracy on accented speech
Online transcript sitesOne-off copy-pasteNo Obsidian integration, no structured frontmatter

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills