内容
# SubDownload MCP 服务器
SubDownload 将 YouTube 暴露为 MCP 原生数据源。只需通过 OAuth 连接一次,您的 AI 代理即可获得以下工具:总结视频、获取完整字幕(包括没有字幕的视频,通过 AI ASR)、搜索频道和播放列表,并将所有内容保存到每个用户的知识库中,以便跨会话回忆。
- **托管端点**:`https://api.subdownload.com/mcp`
- **首页**:https://subdownload.com?utm_source=gthb_awesome_9jqqed&utm_medium=code&utm_campaign=Awesome
- **文档**:https://api.subdownload.com/docs/mcp
- **Glama(连接器)**:https://glama.ai/mcp/connectors/com.subdownload.api/sub-download
- **Glama(服务器)**:https://glama.ai/mcp/servers/SubDownload/subdownload-mcp
> 推荐的设置是直接将您的 MCP 客户端指向上述托管端点,并通过 OAuth 进行身份验证 - 请参见下面的“快速连接”。此存储库还提供了一个薄的 stdio 代理(Node + Docker),适用于喜欢本地子进程的环境。
## 身份验证
OAuth 2.1 with Dynamic Client Registration(RFC 7591)。无需预先共享的 `client_id` 或 `client_secret` - 您的 MCP 客户端在首次连接时自行注册。
发现(RFC 9728):
1. POST 到 `/mcp` 且无令牌返回 `401` 及 `WWW-Authenticate` 头,指向 `/.well-known/oauth-protected-resource`
2. 该文档指向授权服务器(`https://api.subdownload.com`)
3. MCP 客户端遵循标准授权 → 回调 → 令牌流程,带有 PKCE
**API-key 替代方案**:https://subdownload.com/account 上的每个帐户都为不支持 OAuth 的客户端暴露了一个 Bearer 令牌。
## 工具
| 工具 | 功能 |
|---|---|
| `search_youtube` | YouTube 关键词搜索 |
| `fetch_video_info` | 视频元数据(标题、频道、时长、观看次数) |
| `fetch_transcript` | 带有时间戳的完整字幕 |
| `transcribe_video` | 为没有字幕的视频生成字幕,借助 AI ASR |
| `get_asr_task` | 轮询正在进行的 AI 转录作业 |
| `resolve_channel` | 按句柄、URL 或 ID 查找频道 |
| `list_channel_videos` | 列出频道的视频 |
| `get_channel_latest_videos` | 频道的最新视频 |
| `search_channel_videos` | 在单个频道内搜索 |
| `list_playlist_videos` | 列出播放列表的内容 |
| `save_to_library` | 将视频摘要或字幕保存到您的个人知识库 |
| `list_library` | 浏览您保存的知识库 |
| `get_library_item` | 获取单个已保存的项目 |
## 快速连接
### Claude Desktop / Cursor / Windsurf / 任何支持 OAuth 的 MCP 客户端
```json
{
"mcpServers": {
"subdownload": {
"url": "https://api.subdownload.com/mcp"
}
}
}
```
您第一次使用它时,客户端会触发 OAuth,您需要使用 Google 或 LINUX DO 登录。注册免费积分 - 无需信用卡。
### Bearer-token 客户端
```json
{
"mcpServers": {
"subdownload": {
"url": "https://api.subdownload.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
```
从您的[账户页面](https://subdownload.com/account)获取您的 API 密钥。
### 本地 stdio 代理(Docker / npm)
对于喜欢 subprocess 传输的客户端,此存储库提供了一个薄的 Node 代理,将 `tools/call` 转发到托管端点,并使用您的 API 密钥。
```bash
# Docker
docker build -t subdownload-mcp .
docker run --rm -i -e SUBDOWNLOAD_API_KEY=YOUR_API_KEY subdownload-mcp
# 或直接使用 Node
npm install
SUBDOWNLOAD_API_KEY=YOUR_API_KEY npm start
```
客户端配置示例:
```json
{
"mcpServers": {
"subdownload": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "SUBDOWNLOAD_API_KEY", "subdownload-mcp"],
"env": { "SUBDOWNLOAD_API_KEY": "YOUR_API_KEY" }
}
}
}
```
工具模式声明为内联,因此内省(`initialize`、`tools/list`)无需凭证即可工作;`tools/call` 需要 `SUBDOWNLOAD_API_KEY`。
## 定价
注册免费积分。专业版:每月 5,000 积分。参见 https://subdownload.com/pricing。
## 支持
- 电子邮件:contact@subdownload.com
- 状态:https://subdownload.com/status
## 许可证
MIT(适用于此文档存储库;SubDownload 服务本身是托管的 SaaS - 参见 https://subdownload.com/terms)。