视频摘要服务

一个基于MCP协议的YouTube视频交互工具,提供视频转录、元数据获取、搜索、评论获取及使用Gemini Flash Lite模型进行视频摘要的功能。

  • by tayyab415
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 tayyab415/mcp-try

使用说明

YouTube视频摘要生成器MCP服务器

MCP(模型上下文协议)服务器,提供与YouTube视频交互的工具。使用谷歌的Gemini Flash Lite模型获取成绩单、元数据、搜索视频、获取评论、频道统计数据和总结视频。

特性

第一阶段(核心工具)

  • get_transcript -通过URL/ID获取视频转录
  • 获取_视频_信息 -获取基本视频元数据(标题、频道、持续时间、观看次数、描述)
  • 摘要_视频 -使用Gemini Flash Lite总结视频

第二阶段(扩展工具)

  • 搜索_视频 -按关键字搜索YouTube
  • 获取_注释 -从视频中获取热门评论
  • get_channel_stats -获取频道统计数据(订阅者、视频计数等)

主要优势

  • 无需YouTube API密钥 -使用公共抓取方法(youtube-transcript-api 和 yt-dlp)
  • 只需Gemini API密钥 -仅摘要功能需要
  • 快速可靠 -使用高效的抓取库

先决条件

  • Python 3.8或更高版本
  • uv 包管理器(推荐)或 pip
  • Gemini API密钥(仅当您想要使用摘要时)

安装

  1. 使用安装依赖项 uv (推荐):

    uv add "mcp[cli]"
    uv add youtube-transcript-api
    uv add yt-dlp
    uv add google-generativeai
    uv add python-dotenv
    

    或使用 pip:

    pip install -r requirements.txt
    
  2. 获取Gemini API密钥(可选,仅用于摘要):

  3. 设置环境变量:

    • 复制 .env.example 到 .env
    • 添加您的Gemini API密钥:
      GEMINI_API_KEY=your_actual_api_key_here
      

Claude桌面配置

  1. 打开克劳德桌面配置:

    • 首选 File -> Settings -> Developer -> Edit Config
    • 这将打开 claude_desktop_config.json
  2. 添加MCP服务器配置:

    • 从以下位置复制配置 claude_desktop_config.json.example
    • 更新路径以匹配您的系统:
      • 替换 YOUR_USERNAME 使用您的实际用户名
      • 替换 /path/to/mcp-try 这个项目的实际路径
      • 更新 uv 命令路径(如果需要)(通常 ~/.local/bin/uv 在macOS/Linux上)
  3. 配置示例:

    {
      "mcpServers": {
        "YouTube Summarizer": {
          "command": "/Users/YOUR_USERNAME/.local/bin/uv",
          "args": [
            "run",
            "--with",
            "mcp[cli]",
            "mcp",
            "run",
            "/path/to/mcp-try/main.py"
          ]
        }
      }
    }
    
  4. 重新启动克劳德桌面 使更改生效

使用示例

配置后,您可以要求Claude Desktop:

  • “获取成绩单https://www.youtube.com/watch?v=VIDEO_ID"
  • “总结此视频:https://www.youtube.com/watch?v=VIDEO_ID"
  • “搜索有关Python编程的视频”
  • “获取此视频的评论:https://www.youtube.com/watch?v=VIDEO_ID"
  • “获取@channelname的频道统计信息”

工具详细信息

get_transcript

获取带有可选时间戳的视频转录。适用于任何YouTube视频URL格式或直接视频ID。

获取_视频_信息

返回全面的视频元数据,包括标题、频道、持续时间、观看次数、上传日期和描述。

摘要_视频

获取成绩单并使用Gemini Flash Lite生成摘要。支持“短”、“中”或“长”摘要长度。

搜索_视频

搜索YouTube并返回包含元数据的视频列表。默认返回前10个结果。

获取_注释

从视频中获取热门评论,按赞数排序。默认返回前10条评论。

get_channel_stats

返回频道统计信息,包括订户计数、视频计数和频道描述。

故障排除

“GEMINI_API_KEY未设置”错误

  • 仅影响 summarize_video 工具
  • 其他工具在没有API密钥的情况下工作
  • 设置密钥 .env 文件或环境变量

“未找到成绩单”错误

  • 有些视频没有可用的转录本
  • 尝试其他视频或检查是否启用了字幕

“获取视频信息时出错”错误

  • YouTube可能是限速请求
  • 请稍候几分钟,然后重试
  • 您所在地区可能无法播放某些视频

备注

  • 该工具使用网络抓取方法,因此不需要YouTube API密钥
  • 如果快速发出许多请求,则可能适用速率限制
  • 某些视频可能没有可用的转录本
  • 频道统计数据的准确性可能因隐私设置而异

许可证

本项目按原样提供,供教育和个人使用。