项目简介
YouTube Transcript Knowledge Base MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在帮助用户构建和管理个人 YouTube 视频知识库。通过该服务器,您可以轻松地将喜爱的 AI 工具(如 LLM)连接到您的视频内容,实现对视频转录本的搜索和查询,从而更有效地管理和利用视频中的知识。
主要功能点
- YouTube 视频转录本提取: 自动捕获和处理 YouTube 视频的转录本。
- 语义搜索: 基于转录本内容进行高效的语义搜索,快速找到所需信息。
- 视频组织与管理: 支持创建和管理视频列表,方便分类和组织视频内容。
- 个性化摘要: 允许添加视频摘要,加深理解和快速回顾。
- 视频信息过滤: 支持按频道、标签、观看次数等条件过滤视频。
- 关键时刻高亮: 自动识别视频中的重要片段。
安装步骤
- 安装 uv: 如果尚未安装 uv,请运行以下命令安装:
curl -LsSf https://astral.sh/uv/install.sh | sh - 克隆仓库: 克隆 GitHub 仓库到本地:
git clone https://github.com/Miandari/youtube-knowledge-base-mcp.git cd youtube-knowledge-base-mcp - 创建虚拟环境并安装依赖: 使用 uv 创建虚拟环境并安装项目依赖:
uv venv source .venv/bin/activate # Windows: .venv\Scripts\activate uv sync # 或者使用 uv pip install -e . - 配置 OpenAI API 密钥 (可选): 如果使用 OpenAI Embedding,请在 '.env' 文件中添加您的 OpenAI API 密钥:
如果不想使用 OpenAI API 密钥,项目支持 Ollama 或 HuggingFace Embedding,具体配置方法请参考 README 文档。OPENAI_API_KEY=your_openai_api_key_here
服务器配置
对于 MCP 客户端,您需要配置 MCP 服务器的启动命令和参数。以下是 Claude Desktop 的配置示例,其他 MCP 客户端的配置方式类似:
{ "mcpServers": { "youtube-kb": { "command": "uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/youtube-knowledge-base-mcp", // 替换为项目绝对路径 "run", "main.py" ] } } }
参数说明:
- 'command': 启动服务器的命令,这里使用 'uv' 运行 Python 脚本。
- 'args': 命令参数列表:
- '--directory': 指定项目目录的绝对路径,请替换为您的实际项目路径。
- 'run main.py': 运行 'main.py' 脚本,启动 MCP 服务器。
基本使用方法
- 启动 MCP 服务器: 在项目根目录下运行以下命令启动服务器:
uv run python main.py - 处理 YouTube 视频: 使用 'process_youtube_video' 工具处理 YouTube 视频,例如:
将 'VIDEO_ID' 替换为实际的 YouTube 视频 ID。uv run python -c "from youtube_knowledgebase_mcp.mcp_tools import process_youtube_video; print(process_youtube_video('https://www.youtube.com/watch?v=VIDEO_ID'))" - 查询知识库: 使用 'youtube_transcript_query_tool' 工具查询知识库,例如:
将 ''your search query'' 替换为您的查询内容,''VIDEO_ID'' 替换为视频 ID (可选)。uv run python -c "from youtube_knowledgebase_mcp.mcp_tools import youtube_transcript_query_tool; print(youtube_transcript_query_tool('your search query', 'VIDEO_ID'))" - 连接到 MCP 客户端 (如 Claude Desktop): 按照 MCP 客户端的指引配置服务器连接信息,即可通过客户端与知识库进行交互。
信息
分类
生产力应用