YouTube MCP服务器
](https://smithery.ai/server/@ZubeidHendricks/youtube)
YouTube的模型上下文协议(MCP)服务器实现,使AI语言模型能够通过标准化的界面与YouTube内容进行交互。
特性
视频信息
- 获取视频详细信息(标题、描述、持续时间等)
- 列出频道视频
- 获取视频统计数据(浏览量、点赞、评论)
- 在YouTube上搜索视频
成绩单管理
- 检索视频记录
- 支持多种语言
- 获取带有时间戳的字幕
- 在成绩单中搜索
渠道管理
- 获取频道详细信息
- 列出频道播放列表
- 获取频道统计信息
- 在频道内容内搜索
播放列表管理
- 列出播放列表项目
- 获取播放列表详细信息
- 在播放列表中搜索
- 获取播放列表视频转录
安装
Claude桌面的快速设置
- 安装软件包:
npm install -g zubeid-youtube-mcp-server- 添加到您的Claude Desktop配置(
~/Library/Application Support/Claude/claude_desktop_config.json在macOS或%APPDATA%\Claude\claude_desktop_config.json在Windows上):
{
"mcpServers": {
"zubeid-youtube-mcp-server": {
"command": "zubeid-youtube-mcp-server",
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key_here"
}
}
}
}替代方案:使用NPX(无需安装)
将此添加到您的Claude Desktop配置中:
{
"mcpServers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key_here"
}
}
}
}通过Smithery安装
通过以下方式自动安装适用于Claude Desktop的YouTube MCP服务器 史密瑟里:
npx -y @smithery/cli install @ZubeidHendricks/youtube --client claude配置
设置以下环境变量:
YOUTUBE_API_KEY:您的YouTube数据API密钥(必需)YOUTUBE_TRANSCRIPT_LANG:成绩单的默认语言(可选,默认为“en”)
与VS代码一起使用
对于一键安装,请单击下面的安装按钮之一:
手动安装
如果您更喜欢手动安装,请先检查本节顶部的安装按钮。否则,请按照以下步骤操作:
将以下JSON块添加到VS Code中的用户设置(JSON)文件中。您可以按 Ctrl + Shift + P 和打字 Preferences: Open User Settings (JSON).
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "YouTube API Key",
"password": true
}
],
"servers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "${input:apiKey}"
}
}
}
}
}您可以选择将其添加到名为的文件中 .vscode/mcp.json 在您的工作空间中:
{
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "YouTube API Key",
"password": true
}
],
"servers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "${input:apiKey}"
}
}
}
}YouTube API设置
- 转到谷歌云控制台
- 创建新项目或选择现有项目
- 启用YouTube数据API v3
- 创建API凭据(API密钥)
- 复制API密钥进行配置
例子
管理视频
// Get video details
const video = await youtube.videos.getVideo({
videoId: "video-id"
});
// Get video transcript
const transcript = await youtube.transcripts.getTranscript({
videoId: "video-id",
language: "en"
});
// Search videos
const searchResults = await youtube.videos.searchVideos({
query: "search term",
maxResults: 10
});管理渠道
// Get channel details
const channel = await youtube.channels.getChannel({
channelId: "channel-id"
});
// List channel videos
const videos = await youtube.channels.listVideos({
channelId: "channel-id",
maxResults: 50
});管理播放列表
// Get playlist items
const playlistItems = await youtube.playlists.getPlaylistItems({
playlistId: "playlist-id",
maxResults: 50
});
// Get playlist details
const playlist = await youtube.playlists.getPlaylist({
playlistId: "playlist-id"
});发展
# Install dependencies
npm install
# Run tests
npm test
# Build
npm run build
# Lint
npm run lint贡献
有关对此存储库的贡献的信息,请参阅CONTRIBUTING.md。
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
