mcpField
Y
YouTube Caption MCP Server

YouTube Caption MCP Server

本地服务
github.com/iamyosuke媒体与设计174 周前更新

关于 YouTube Caption MCP Server

YouTube Caption MCP Server 供 Cursor 等 MCP 客户端查询 YouTube 视频信息、查找并下载字幕,无需 API 密钥。它支持多种字幕语言,并可输出 Raw、SRT 和 VTT 格式。

主要功能

  1. 01获取视频信息
  2. 02列出可用字幕语言
  3. 03下载 Raw、SRT 或 VTT 字幕
  4. 04搜索带字幕的视频
  5. 05内存缓存

适用场景

  1. 01查看视频基本信息
  2. 02查找指定语言的字幕视频
  3. 03下载字幕用于转录或审阅

MCP 相关

向 MCP 客户端提供视频信息查询、字幕列表与下载,以及带字幕视频搜索工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"youtube-caption": {
"command": "npx",
"args": [
"-y",
"@iamyosuke/youtube-caption-mcp"
],
"env": {
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
启动命令npx -y @iamyosuke/youtube-caption-mcp
需要配置的环境变量
LOG_LEVEL

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@iamyosuke/youtube-caption-mcp

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

this is vibe coded BE CAREFUL

YouTube 字幕 MCP 服务

Vive 用于 Cursor 获取 YouTube 视频字幕的 MCP 服务。无需 API 密钥即可访问 YouTube 视频字幕信息。

功能

  • 无需 API 密钥:使用 youtube-js 库访问 YouTube 内部 API
  • 多语言支持:自动检测并获取可用的字幕语言
  • 格式转换:以 Raw、SRT 和 VTT 格式输出字幕
  • 缓存:通过内存缓存提升性能
  • Claude 集成:通过 MCP 协议无缝集成

安装

从 NPM 安装
npm install -g @iamyosuke/youtube-caption-mcp
从源代码构建
git clone https://github.com/iamyosuke/youtube-caption-mcp.git
cd youtube-caption-mcp
npm install
npm run build
Cursor 配置

将以下内容添加到 Cursor 配置文件(.cursor/mcp.json):

{
  "mcpServers": {
    "youtube-caption-mcp": {
      "command": "npx",
      "args": ["-y", "youtube-caption-mcp", "--stdio"],
      "env": {
        "CACHE_ENABLED": "true",
        "LOG_LEVEL": "debug"
      }
    }
  }
}

可用工具

1. get_video_info

获取 YouTube 视频的基本信息。

参数:

  • video_id(必填):YouTube 视频 ID 或 URL

示例:

{
  "video_id": "dQw4w9WgXcQ"
}
2. get_captions_list

获取视频可用字幕列表。

参数:

  • video_id(必填):YouTube 视频 ID 或 URL

示例:

{
  "video_id": "dQw4w9WgXcQ"
}
3. download_captions

下载指定视频的字幕。

参数:

  • video_id(必填):YouTube 视频 ID 或 URL
  • lang(可选):字幕语言代码(默认值:"ja")
  • format(可选):输出格式——"raw"、"srt"、"vtt"(默认值:"raw")

示例:

{
  "video_id": "dQw4w9WgXcQ",
  "lang": "ja",
  "format": "srt"
}
4. search_videos_with_captions

搜索带有字幕的视频。

参数:

  • query(必填):搜索查询
  • lang(可选):字幕语言筛选条件
  • limit(可选):搜索结果的最大数量(1-50,默认值:10)

示例:

{
  "query": "programming tutorial",
  "lang": "en",
  "limit": 5
}

支持的 URL 格式

支持以下 YouTube URL 格式:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://www.youtube.com/embed/VIDEO_ID
  • VIDEO_ID(11 个字符的视频 ID)

环境变量

变量名称默认值描述
CACHE_ENABLEDtrue启用/禁用缓存
CACHE_DEFAULT_TTL3600默认缓存保留时间(秒)
CACHE_MAX_KEYS1000最大缓存键数量
LOG_LEVELinfo日志级别(debug、info、warn、error)

开发

设置开发环境
npm install
启动开发服务
npm run dev
运行测试
npm test
构建
npm run build
代码检查与格式化
npm run lint
npm run format

许可证

MIT 许可证

贡献

欢迎提交拉取请求和问题报告。

免责声明

注意:本项目是在某个周末花三小时 vibe coding 完成的,未经充分测试。在生产环境中使用的风险由您自行承担。

注意事项

  • 请按照 YouTube 服务条款使用此工具
  • 妥善处理受版权保护的内容
  • 发送大量请求时请注意速率限制

故障排除

常见问题
  1. 找不到视频

    • 检查视频 ID 或 URL 是否正确
    • 检查视频是否公开可用
  2. 无法获取字幕

    • 检查视频是否有字幕
    • 检查指定语言的字幕是否可用
  3. 性能缓慢

    • 检查是否已启用缓存
    • 检查网络连接
查看日志

要查看详细日志,请将环境变量 LOG_LEVEL=debug:

LOG_LEVEL=debug npx @iamyosuke/youtube-caption-mcp

YouTube 字幕 MCP 服务

这是一个面向 Cursor 的 YouTube 视频字幕获取 MCP 服务。无需 API 密钥即可获取 YouTube 视频字幕信息。

特点

  • 无需 API 密钥:使用 youtube-js 库访问 YouTube 内部 API
  • 多语言支持:自动检测并获取可用的字幕语言
  • 格式转换:以 Raw、SRT、VTT 格式输出字幕
  • 缓存功能:通过内存缓存提升性能
  • Claude 集成:通过 MCP 协议无缝集成

安装

从 NPM 安装
npm install -g @iamyosuke/youtube-caption-mcp
从源代码构建
git clone https://github.com/iamyosuke/youtube-caption-mcp.git
cd youtube-caption-mcp
npm install
npm run build
Cursor 配置

请将以下内容添加到 Cursor 配置文件(.cursor/mcp.json)中:

{
  "mcpServers": {
    "youtube-caption-mcp": {
      "command": "npx",
      "args": ["-y", "youtube-caption-mcp", "--stdio"],
      "env": {
        "CACHE_ENABLED": "true",
        "LOG_LEVEL": "debug"
      }
    }
  }
}

可用工具

1. get_video_info

获取 YouTube 视频的基本信息。

参数:

  • video_id(必填):YouTube 视频 ID 或 URL

示例:

{
  "video_id": "dQw4w9WgXcQ"
}
2. get_captions_list

获取视频可用的字幕列表。

参数:

  • video_id(必填):YouTube 视频 ID 或 URL

示例:

{
  "video_id": "dQw4w9WgXcQ"
}
3. download_captions

下载指定视频的字幕。

参数:

  • video_id(必填):YouTube 视频 ID 或 URL
  • lang(可选):字幕语言代码(默认值:"ja")
  • format(可选):输出格式——"raw"、"srt"、"vtt"(默认值:"raw")

示例:

{
  "video_id": "dQw4w9WgXcQ",
  "lang": "ja",
  "format": "srt"
}
4. search_videos_with_captions

搜索带字幕的视频。

参数:

  • query(必填):搜索查询
  • lang(可选):字幕语言筛选条件
  • limit(可选):搜索结果数量上限(1-50,默认值:10)

示例:

{
  "query": "プログラミング チュートリアル",
  "lang": "ja",
  "limit": 5
}

支持的 URL 格式

支持以下 YouTube URL 格式:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://www.youtube.com/embed/VIDEO_ID
  • VIDEO_ID(11 个字符的视频 ID)

环境变量

变量名默认值说明
CACHE_ENABLEDtrue启用/禁用缓存功能
CACHE_DEFAULT_TTL3600默认缓存保留时间(秒)
CACHE_MAX_KEYS1000最大缓存键数
LOG_LEVELinfo日志级别(debug、info、warn、error)

开发

设置开发环境
npm install
启动开发服务器
npm run dev
运行测试
npm test
构建
npm run build
检查代码与格式化
npm run lint
npm run format

许可证

MIT License

贡献

欢迎提交拉取请求或报告问题。

免责声明

**注意:**本项目是在周末用 3 小时创建的,未经充分测试。用于生产环境的风险由您自行承担。

注意事项

  • 请遵守 YouTube 的使用条款使用此工具
  • 请妥善处理受版权保护的内容
  • 发送大量请求时,请注意速率限制

故障排除

常见问题
  1. 找不到视频

    • 请确认视频 ID 或 URL 是否正确
    • 请确认视频是否已公开
  2. 无法获取字幕

    • 请确认视频是否有字幕
    • 请确认指定语言的字幕是否可用
  3. 性能较慢

    • 请确认缓存是否已启用
    • 请检查网络连接
查看日志

如需查看详细日志,请设置环境变量 LOG_LEVEL=debug。

LOG_LEVEL=debug npx @iamyosuke/youtube-caption-mcp

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。