关于 videohub-port
videohub-port 是一个 MCP 服务,通过 YouTube Data API v3 只读访问 YouTube 视频、频道、播放列表、评论和字幕稿。它使用 API 密钥,不提供写入工具或 OAuth 流程。
主要功能
- 01搜索并获取视频和频道
- 02列出播放列表及其条目
- 03读取视频评论和字幕稿
- 04列出频道视频和视频类别
- 05获取热门视频
适用场景
- 01按查询查找视频或频道
- 02查看视频评论或字幕稿
- 03浏览播放列表内容或频道视频
MCP 相关
向 MCP 客户端提供 12 种 YouTube 读取工具,包括搜索、获取内容、评论、播放列表和字幕稿。Data API 调用需要 YOUTUBE_API_KEY;字幕稿通过公开的 timedtext 端点获取。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
12收录的工具列表 · 更新于 1 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| order | string | 否 | 搜索结果的排序方式,传递给 YouTube 搜索 API(例如 relevance、date 或 viewCount)。 |
| query | string | 是 | 用于匹配 YouTube 视频标题和元数据的搜索查询文本。 |
| max_results | number | 否 | 要返回的视频数量上限。 |
详细介绍
videohub-port
将 YouTube 视频、频道和播放列表作为 MCP 工具,调用 YouTube Data API v3。videohub-port 是对社区 YouTube MCP 服务核心功能的 洁净室重建,并采用新名称:全新代码,不复制品牌标识。
身份验证模式:仅限 TOKEN/KEY-ENV。公开读取通过 YouTube
Data API v3 实现,并将 YOUTUBE_API_KEY 作为 key 查询
参数发送。社区原版的 OAuth 流程(用于上传、
订阅写入和我的频道管理)未予复现——此子集
不包含写入工具。
工具(核心子集,共 12 个)
search_videos、get_video、list_video_comments、
get_channel、search_channels、list_playlists、
get_playlist、list_playlist_items、get_video_transcript、
list_channel_videos、get_video_categories、
get_trending_videos。
字幕转录工具经过简化:它不是 Data API 调用。它会直接
获取所请求语言轨道的公开 timedtext 端点,并使用
fmt=json3(不列出或选择字幕轨道,也不使用 key
参数),然后将 json3 事件合并为纯文本;如果没有可用轨道,
它会如实返回“no caption track available”错误,绝不会编造文本。
此子集中不包含:OAuth 流程和所有写入操作(上传、 创建/编辑播放列表、订阅、点赞/评分、发表评论), 需要 OAuth 的我的频道/订阅读取、直播、 视频插入/更新/删除、频道 版块/品牌设置、超出类别/趋势区域范围的 i18n 深度支持、 分析 API,以及 srt/vtt 格式的字幕下载或字幕轨道列表。
设置
在 Google Cloud 控制台中创建 API 密钥(启用 YouTube Data API v3),并设置该密钥:
export YOUTUBE_API_KEY=AIza...
还可选择使用 YOUTUBE_API_BASE_URL 覆盖 API 基础 URL
(默认值为 https://www.googleapis.com/youtube/v3),并使用
YOUTUBE_TIMEDTEXT_BASE_URL 覆盖字幕转录基础 URL(默认值为
https://www.youtube.com/api/timedtext)。每个 Data API 请求
都会携带 Accept: application/json,并将密钥作为 key
查询参数发送(不使用 Authorization 标头)。未设置密钥时,
每次工具调用都会失败,并指出缺少的变量名称。
CLI
npx @reneturcios/videohub-port search_videos '{"query":"lo fi"}'
npx @reneturcios/videohub-port mcp # stdio MCP server
每个工具名称都是一个子命令,接收一个 JSON 对象参数。
MCP 客户端配置
{
"mcpServers": {
"videohub-port": {
"command": "npx",
"args": ["-y", "@reneturcios/videohub-port", "mcp"],
"env": { "YOUTUBE_API_KEY": "AIza..." }
}
}
}
Docker
docker run -i -e YOUTUBE_API_KEY ghcr.io/cloudcorprecords/videohub-port
开发
npm install
npm run build
npm test
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。