返回市场
YouTube字幕MCP

YouTube字幕MCP

作者:setkyar3 星标更新:2025-03-03

项目介绍

YouTube 字幕 MCP 服务器

这是一个模型上下文协议(MCP)服务器,允许像 Claude 这样的AI助手下载并分析YouTube视频字幕。

License: MIT

功能

  • 下载YouTube字幕:从任何YouTube视频中获取字幕
  • 语言支持:下载任何可用语言的字幕
  • 视频信息:检索视频元数据(标题、时长、上传日期等)
  • 多语言检测:列出视频所有可用的字幕语言
  • 无缝AI集成:与Claude和其他兼容MCP的助手协同工作
  • Docker支持:使用Docker轻松部署

要求

  • Python 3.10+
  • yt-dlp
  • ffmpeg
  • 兼容MCP的客户端(如Claude Desktop)
  • Docker(可选,用于容器化部署)

安装

使用Docker(推荐)

  1. 克隆此仓库:

    git clone https://github.com/setkyar/youtube-subtitles-mcp.git
    cd youtube-subtitles-mcp
    
  2. 使用Docker构建并运行:

    docker build -t mcp/youtube-subtitles .
    

手动安装

  1. 克隆此仓库:

    git clone https://github.com/setkyar/youtube-subtitles-mcp.git
    cd youtube-subtitles-mcp
    
  2. 安装依赖项:

    pip install "mcp[cli]>=1.2.0" yt-dlp
    
  3. 安装ffmpeg:

    • 在Ubuntu/Debian上:sudo apt-get install ffmpeg
    • 在macOS(Homebrew)上:brew install ffmpeg
    • 在Windows上:从ffmpeg.org下载
  4. 运行服务器:

    python youtube_subtitles_server.py
    

与Claude Desktop集成

  1. 打开Claude Desktop
  2. 点击Claude菜单并选择“设置”
  3. 在左侧边栏点击“开发者”
  4. 点击“编辑配置”
  5. 更新配置以包含您的MCP服务器:
{
  "mcpServers": {
    "youtube-subtitles": {
      "command": "docker",
      "args": ["run", "-i", "mcp/youtube-subtitles"]
    }
  }
}
  1. 保存文件并重启Claude Desktop

使用示例

一旦与像Claude Desktop这样的MCP客户端集成,您可以:

  1. 获取视频信息

    这个YouTube视频的标题和上传日期是什么?https://www.youtube.com/watch?v=dQw4w9WgXcQ
    
  2. 列出可用的字幕语言

    这个视频有哪些可用的字幕语言?https://www.youtube.com/watch?v=dQw4w9WgXcQ
    
  3. 下载并分析字幕

    你能获取这个视频的英文字幕并总结它的内容吗?https://www.youtube.com/watch?v=dQw4w9W
    
  4. 翻译字幕

    获取这个视频的西班牙语字幕并将其翻译成英语:https://www.youtube.com/watch?v=dQw4w9WgXcQ
    

工作原理

该服务器向MCP客户端暴露了三个主要工具:

  1. get_video_info:检索关于YouTube视频的基本元数据
  2. list_subtitle_languages:显示视频的可用字幕语言
  3. download_subtitles:下载并格式化特定语言的字幕

所有操作都使用yt-dlp进行,这是一个强大的YouTube-dl分支,对字幕和格式有更好的支持。

Docker配置

包含的Dockerfile:

  • 使用Python 3.10作为基础镜像
  • 安装ffmpeg用于字幕处理
  • 安装所需的Python依赖项
  • 设置MCP服务器通过stdio传输运行

对于自定义Docker设置,您可以根据需要修改Dockerfile或docker-compose.yml文件。

故障排除

常见问题及解决方案

  1. 字幕不可用:并非所有YouTube视频都有字幕。尝试另一个视频。
  2. 缺少语言:某些视频只有原始语言的自动生成字幕。
  3. Docker连接问题:确保容器正在运行且Claude Desktop已正确配置。

日志

可以使用以下命令查看Docker日志:

docker logs youtube-subtitles-mcp

许可证

本项目采用MIT许可证——详情请参阅LICENSE文件。

贡献

欢迎贡献!请随时提交Pull Request。

  1. 分叉仓库
  2. 创建功能分支(git checkout -b feature/amazing-feature
  3. 提交更改(git commit -m '添加一些精彩的功能'
  4. 推送到分支(git push origin feature/amazing-feature
  5. 打开一个Pull Request

致谢