Token导航 LogoToken导航TokenDH.com
Youtube MCP Server (youtube-mcp-server) logo
AI代理stdio官方级别未说明来源级核验

Youtube MCP Server (youtube-mcp-server)

MCP Server

一个全面的模型上下文协议(MCP)服务器,通过YouTube Data API v3提供实时YouTube数据访问,使AI助手能够搜索、分析和检索有关YouTube视频、频道、播放列表等的详细信息。

工具数

0

提示词数

0

GitHub Stars

10

资源数

0
视频分析PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

dannySubsense

提供方

dannySubsense

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

YouTube MCP服务器

一个全面的模型上下文协议(MCP)服务器,通过YouTube数据API v3提供实时YouTube数据访问。该服务器使AI助手能够搜索、分析和检索有关YouTube视频、频道、播放列表等的详细信息。

🚀 特性

14完整功能

  1. get_video_details -获取全面的视频信息,包括标题、描述、统计数据和元数据
  2. get_playlist_details -检索播放列表信息和元数据
  3. get_playlist_items -列出播放列表中的视频及其详细信息
  4. get_channel_details -获取频道信息,包括订户计数、视频计数和描述
  5. get_video_categories -列出特定地区的可用视频类别
  6. get_channel_videos -从YouTube频道获取最新视频
  7. search_videos -在YouTube上搜索具有可自定义参数的视频
  8. get_trending_videos -检索特定地区的热门视频
  9. get_video_comments -使用排序选项从视频中获取评论
  10. analyze_video_engagement -分析参与度指标并提供见解
  11. get_channel_playlists -列出YouTube频道的播放列表
  12. get_video_caption_info -获取可用的字幕/文字记录信息
  13. evaluate_video_for_knowledge_base -基于新鲜度评分的知识库管理智能内容评估
  14. get_video_transcript -从YouTube视频中提取实际转录内容

关键能力

  • 实时数据 来自YouTube数据API v3
  • 全面的错误处理 API配额管理
  • 支持多种URL格式 (youtube.com、youtu.be、@用户名、频道ID)
  • 智能内容评估 技术新鲜度评分
  • 灵活的搜索和过滤 选项
  • 啮合分析 符合行业基准
  • 区域内容支持 用于趋势和类别
  • MCP协议合规性 实现无缝的人工智能集成

📋 需求

  • Python 3.8+
  • YouTube数据API v3密钥
  • MCP兼容客户端(克劳德桌面、光标等)
  • youtube转录api(用于转录提取功能)

🛠️ 安装和设置

步骤1:克隆存储库

git clone https://github.com/dannySubsense/youtube-mcp-server.git
cd youtube-mcp-server

步骤2:安装依赖项

pip install -r requirements.txt

步骤3:获取YouTube API密钥

  1. 转到 谷歌云控制台
  2. 创建新项目或选择现有项目
  3. 启用YouTube数据API v3
  4. 创建凭据(API密钥)
  5. (可选)为安全起见,将API密钥限制为YouTube Data API v3

步骤4:配置API密钥

创建一个 credentials.yml 项目根目录中的文件:

youtube_api_key: "YOUR_YOUTUBE_API_KEY_HERE"

重要提示: 永远不要承诺你的 credentials.yml 文件到版本控制!

步骤5:测试服务器

python test_server.py

这将对所有14个功能进行全面测试,以确保一切正常工作。

🔧 集成指南

Claude桌面集成

  1. 安装服务器 按照上面的设置步骤
  1. 添加到Claude桌面配置 -编辑您的Claude Desktop配置文件:

窗户: %APPDATA%\Claude\claude_desktop_config.json 雨衣: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "youtube": {
      "command": "python",
      "args": ["/path/to/youtube-mcp-server/youtube_mcp_server.py"],
      "env": {
        "YOUTUBE_API_KEY": "your_youtube_api_key_here"
      }
    }
  }
}
  1. 重新启动克劳德桌面
  1. 验证集成 -问Claude:“你能在YouTube上搜索Python教程吗?”

光标集成

  1. 安装服务器 按照上面的设置步骤
  1. 在游标设置中配置:

- 打开光标设置 - 导航到MCP服务器 - 使用python命令和参数添加新服务器

  1. 设置环境变量 为您的API密钥
  1. 使用游标进行测试 要求它搜索YouTube内容

自定义项目集成

对于自定义应用程序或其他MCP客户端:

from youtube_mcp_server import (
    get_video_details,
    search_videos,
    evaluate_video_for_knowledge_base
)

# Example usage
async def example():
    # Search for videos
    results = await search_videos("machine learning", max_results=5)
    print(results)

    # Evaluate video for knowledge base
    evaluation = await evaluate_video_for_knowledge_base("dQw4w9WgXcQ")
    print(evaluation)

环境变量设置

您还可以使用环境变量代替凭据文件:

export YOUTUBE_API_KEY="your_api_key_here"

📖 使用示例

基本视频信息

# Get detailed video information
result = await get_video_details("https://www.youtube.com/watch?v=dQw4w9WgXcQ")

# Also works with video IDs
result = await get_video_details("dQw4w9WgXcQ")

搜索和发现

# Search for recent Python tutorials
tutorials = await search_videos(
    query="Python tutorial",
    max_results=10,
    order="date"
)

# Get trending videos in the US
trending = await get_trending_videos(region_code="US", max_results=5)

通道分析

# Get channel information
channel_info = await get_channel_details("@3Blue1Brown")

# Get recent videos from a channel
recent_videos = await get_channel_videos("@3Blue1Brown", max_results=5)

# Get all playlists from a channel
playlists = await get_channel_playlists("@3Blue1Brown")

内容评估(专题)

# Evaluate if a video is worth adding to knowledge base
# Includes technology freshness scoring for educational content
evaluation = await evaluate_video_for_knowledge_base("Z6nkEZyS9nA")

# Example output:
# 🟢 HIGHLY RECOMMENDED - Strong indicators of valuable content
# ⏰ Content Freshness: Very Recent (2 days old)
# 🚀 Tech Currency: React 2025 content - framework evolves rapidly

转录提取(新增!)

# Extract full transcript content from a video
transcript = await get_video_transcript("Z6nkEZyS9nA")

# Also works with URLs and different languages
transcript_spanish = await get_video_transcript(
    "https://www.youtube.com/watch?v=Z6nkEZyS9nA", 
    language="es"
)

# Example output:
# 📝 Full Transcript: [Complete video transcript text]
# ⏰ Timestamped Segments: [00:15] Welcome to this tutorial...
# Word Count: ~2,847 words

啮合分析

# Analyze video engagement metrics
engagement = await analyze_video_engagement("dQw4w9WgXcQ")

# Get video comments
comments = await get_video_comments("dQw4w9WgXcQ", max_results=10, order="relevance")

🎯 函数参考

功能用途主要特点
get_video_details完整的视频信息观看次数、点赞、持续时间、描述
get_playlist_details播放列表元数据标题、描述、视频计数
get_playlist_items播放列表中的视频带元数据的有序列表
get_channel_details频道信息订阅者、总浏览量、描述
get_video_categories可用类别区域特定类别列表
get_channel_videos最近的频道视频最新上传的详细信息
search_videos视频搜索多个排序顺序、过滤器
get_trending_videos趋势内容特定地区的趋势视频
get_video_comments视频评论排序、回复计数
analyze_video_engagement参与度指标行业基准、见解
get_channel_playlists频道播放列表所有公共播放列表
get_video_caption_info字幕可用性语言,手动与自动
evaluate_video_for_knowledge_base内容评价科技内容的智能新鲜度评分
get_video_transcript提取成绩单内容全文提取、时间戳、多语言

🔥 特色:智能内容评估

evaluate_video_for_knowledge_base 功能包括高级内容评估:

技术新鲜度评分

  • 高波动性话题 (React、AWS、AI/ML):强烈偏好最新内容
  • 中等波动性主题 (Python,通用编程):中等新鲜度奖励
  • 稳定的话题 (算法、数学):最小年龄惩罚

质量指标

  • 查看计数和参与度指标
  • 手动与自动生成字幕
  • 内容类型检测(教程、评论等)
  • 持续时间适宜性
  • 技术货币指标(2024年、2025年,“最新”,版本号)

智能推荐

  • 🟢 强烈推荐 -卓越的品质+最新的技术含量
  • 🟡 适度推荐 -一些积极的指标
  • 🔴 有限推荐 -质量指标少

📊 API配额使用情况

功能定额成本备注
基本功能(get_video_details等)1台成本低
搜索功能100+个单位成本高
字幕功能50+个中高成本
评估功能51台中高成本

每日限额: 10000单位(默认) 监控使用情况 以避免配额耗尽。

🛡️ 错误处理

该服务器包括全面的错误处理功能,用于:

  • API密钥无效
  • 超出配额错误
  • 网络连接问题
  • 视频/频道ID无效
  • 区域限制
  • 禁用评论/标题

🧪 测试

运行综合测试套件:

python test_server.py

这将使用真实的YouTube内容测试所有14个功能,并提供详细的输出。

🚨 安全说明

  • 永不承诺 你的 credentials.yml 文件
  • 限制API密钥 仅限于YouTube Data API v3
  • 监控配额使用情况 防止意外成本
  • 使用环境变量 在生产环境中

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 使用测试您的更改 python test_server.py
  4. 提交您的更改(git commit -m 'Add amazing feature')
  5. 推到分支(git push origin feature/amazing-feature)
  6. 打开拉取请求

📝 开发说明

该项目是使用以下工具开发的:

  • 增量方法 -一次一个功能
  • 测试驱动开发 -集成前测试每个功能
  • 用户协作 -持续的反馈和批准门
  • 备份协议 -具有回滚功能的安全开发

documents/testing.md 详细的开发和测试程序。

🐛 故障排除

常见问题

“找不到API密钥”错误:

  • 确保 credentials.yml 以正确格式存在
  • 检查文件权限
  • 验证API密钥是否有效且不受限制

“超出配额”错误:

  • 检查您的Google Cloud Console配额使用情况
  • 考虑升级配额或优化请求
  • 对频繁访问的数据使用缓存

“未找到视频”错误:

  • 验证视频ID或URL是否正确
  • 检查视频是私人的还是受限制的
  • 确保视频未被删除

MCP连接问题:

  • 验证配置中的Python路径
  • 检查是否安装了所有依赖项
  • 配置更改后重新启动MCP客户端

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🙏 致谢

______________________________________________________________________

准备好用YouTube功能增强你的人工智能助手了吗?今天就开始吧! 🚀

目录标签

目录标签

视频分析PythonClaudeYouTube数据访问本地部署AI助手集成内容评估实时数据

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP