YouTube MCP服务器

一个强大的MCP服务器,为Claude Desktop和其他MCP客户端提供YouTube API功能,包括视频搜索、频道分析、字幕提取和AI摘要。

  • by Teake1404
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Teake1404/youtube-mcp_server

使用说明

YouTube MCP服务器

一个强大的MCP(模型上下文协议)服务器,为Claude Desktop和其他MCP客户端提供YouTube API功能。

🚀 特性

  • 视频搜索:按关键字搜索YouTube视频,并按日期、浏览量和受欢迎程度进行过滤
  • 通道分析:从特定频道获取具有详细统计信息的视频
  • 转录提取:下载并分析多种语言的视频记录
  • AI总结:使用Claude AI创建视频内容的智能摘要
  • MCP集成:无缝连接到Claude Desktop,以增强AI工作流程

🛠️ 安装

先决条件

  • Python 3.11+
  • YouTube数据API v3密钥
  • Claude Desktop(用于MCP集成)

设置

  1. 克隆并导航到项目:

    cd youtube_mcp
    
  2. 创建虚拟环境并安装依赖关系:

    uv venv --python 3.11
    source .venv/bin/activate
    uv pip install google-api-python-client mcp python-dotenv youtube-transcript-api anthropic openai
    
  3. 设置环境变量: 创建一个 .env 项目根目录中的文件:

    YOUTUBE_API_KEY=your_youtube_api_key_here
    ANTHROPIC_API_KEY=your_claude_api_key_here  # Optional, for AI summarization
    
  4. 测试安装:

    python test_mcp_server.py
    

🔌 MCP服务器使用情况

启动MCP服务器

# Using the startup script
./start_mcp_server.sh

# Or manually
source .venv/bin/activate
python -m youtube_mcp

可用工具

  • search_youtube_videos -使用过滤器按关键字搜索视频
  • get_channel_videos -从特定频道获取视频
  • resolve_channel -将频道URL/句柄解析为ID
  • get_video_transcript -提取视频记录
  • summarize_video_transcript -人工智能驱动的成绩单摘要
  • ping -连接测试

🖥️ Claude桌面集成

快速设置

  1. 安装克劳德桌面 从 claude.ai/下载

  2. 在Claude Desktop中配置MCP服务器:

    • 打开设置→ 模型设置
    • 滚动到“MCP服务器”
    • 点击“添加MCP服务器”
    • 填写:
      • 名字: youtube-mcp
      • 命令: python
      • 参数: -m youtube_mcp
      • 工作目录: /Users/shuqingke/Documents/youtube_mcp
      • 环境变量: PYTHONPATH: .
  3. 重新启动克劳德桌面

Claude中的示例用法

连接后,您可以要求Claude:

  • “查找过去30天内关于机器学习的前5个视频”
  • “获取视频dQw4w9WgXcQ的文字记录”
  • “@3Blue1Brown的频道ID是什么?”
  • “总结本视频中关于AI编码的要点”

📚 命令行用法

该项目还包括一个全面的命令行界面:

# Search for videos by niche
python test_youtube_api.py niche "ai coding" --max 5 --days 30 --min-views 10000

# Get channel videos
python test_youtube_api.py channel UC_x5XG1OV2P6uZZ5FSM9Ttw --max 10

# Get video transcript
python test_youtube_api.py transcript dQw4w9WgXcQ --summary --max-points 5

# Resolve channel handle
python test_youtube_api.py resolve "@3Blue1Brown"

🔧 配置

环境变量

  • YOUTUBE_API_KEY:必填。您的YouTube数据API v3密钥
  • ANTHROPIC_API_KEY:可选。用于人工智能驱动的成绩单摘要

API配额

  • YouTube Data API v3具有每日配额
  • 转录API没有配额,但可能有费率限制
  • 监控Google Cloud控制台中的使用情况

🧪 测试

运行综合测试套件:

# Test MCP server
python test_mcp_server.py

# Test YouTube API functionality
python test_youtube_api.py niche "test" --max 1

📁 项目结构

youtube_mcp/
├── src/youtube_mcp/
│   └── __init__.py          # MCP server implementation
├── test_mcp_server.py       # MCP server tests
├── test_youtube_api.py      # Command-line interface
├── claude_desktop_config.json # Claude Desktop config
├── start_mcp_server.sh      # Startup script
├── CLAUDE_DESKTOP_SETUP.md  # Detailed setup guide
└── pyproject.toml           # Project dependencies

🚨 故障排除

常见问题

  1. “未找到MCP服务器”

    • 验证Claude Desktop中的工作目录路径
    • 检查虚拟环境是否已激活
    • 跑 python test_mcp_server.py 验证服务器是否正常工作
  2. “找不到YouTube API密钥”

    • 确保 .env 文件存在 YOUTUBE_API_KEY
    • 验证API密钥是否已启用YouTube Data API v3
  3. 导入错误

    • 激活虚拟环境: source .venv/bin/activate
    • 重新安装依赖关系: uv pip install -r requirements.txt

调试步骤

  1. 手动测试MCP服务器
  2. 检查克劳德桌面日志
  3. 验证文件路径和权限
  4. 确保安装了所有依赖项

🤝 贡献

请随时提交问题、功能请求或拉取请求以增强功能。

📄 许可证

这个项目是开源的。有关详细信息,请参阅LICENSE文件。


和克劳德一起玩YouTube快乐! 🎬✨