YouTube AI助手

一款基于模型上下文协议(MCP)的AI驱动YouTube助手,提供视频搜索、历史记录查看、点赞、分析及个性化推荐功能。

  • by Shreeshail641
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Shreeshail641/mcp-youtube-agent

使用说明

📘 YouTube MCP代理

使用模型上下文协议(MCP)的AI驱动的YouTube助手

该项目功能齐全 人工智能驱动的YouTube助手 它集成了:

✔ 模型上下文协议(MCP) ✔ YouTube数据API ✔ OpenAI GPT模型 ✔ 用于搜索、历史记录、喜欢视频和分析的自定义MCP工具 ✔ 前端(Vercel)+后端(Render)部署

用户可以登录YouTube,浏览历史,让人工智能获取视频,获得见解,喜欢视频,并生成个性化推荐。


🚀 特性

🔐 认证

  • 使用Google/UTube OAuth 2.0登录

  • 安全令牌交换

  • 范围包括:

    • youtube.readonly
    • youtube.force-ssl

🔎 人工智能驱动的搜索

用户可以键入自然语言请求,例如:

  • “我想要 4宝马汽车视频”
  • “给我看3个Kubernetes教程”
  • “推荐喜剧视频”

MCP代理解释提示,查询YouTube,并返回请求的计数。

❤️ 喜欢视频(真实的YouTube动作)

  • 执行 真正的喜欢 在用户的YouTube帐户上
  • 喜欢立即同步到“最近的活动”

🎬 最近活动查看器

荷载:

  • 今天观看的视频
  • 今天点赞的视频
  • 从用户关注的频道上传
  • 短片/长视频
  • 混合活动总结

📊 每日洞察与分析

代理会自动总结:

  • 观看的视频数量
  • 有多少人点赞
  • 你阅读了哪些主题
  • 顶级频道

🔧 MCP工具

从后端公开的自定义MCP工具:

  • youtube.search
  • youtube.likeVideo
  • youtube.getRecentHistory
  • youtube.naturalSearch
  • youtube.getActivitySummary

🧩 建筑

┌─────────────────────┐        ┌──────────────────────┐
│       FRONTEND       │        │       BACKEND         │
│  React + Vercel      │ <----> │ Node.js + Express     │
│                      │        │ Custom MCP Server     │
│ - Login Button       │        │ - OAuth2 handler      │
│ - AI Search UI       │        │ - MCP tools           │
│ - Video Grid         │        │ - YouTube API client  │
│ - Analytics UI       │        │ - OpenAI Integration  │
└─────────────────────┘        └──────────────────────┘
                                      │
                                      ▼
                             YouTube Data API
                             OpenAI GPT Models

🌍 实时部署

前端(Vercel): 🔗 https://mcp-youtube-agent.vercel.app/

后端(渲染): 🔗 https://mcp-youtube-agent-kzx6.onrender.com/


📦 项目结构

mcp-youtube-agent/
│
├── backend/
│   ├── index.js              # Express server + MCP endpoint
│   ├── auth.js               # Google OAuth2 login + callback
│   ├── youtube.js            # YouTube API tools
│   ├── mcp.js                # MCP tool routing logic
│   ├── package.json
│   └── .env
│
└── frontend/
    ├── src/
    │   ├── App.jsx           # Full UI + Logic
    │   ├── api.js            # MCP backend caller
    │   └── App.css
    ├── vite.config.js
    ├── package.json
    └── .env

🛠️ 本地设置

1.️⃣ 克隆仓库

git clone https://github.com/YOUR_USERNAME/mcp-youtube-agent
cd mcp-youtube-agent

🖥️ 后端设置

2.️⃣ 设置环境变量

创建 backend/.env:

PORT=3000
CLIENT_ID=your-google-client-id
CLIENT_SECRET=your-google-secret
REDIRECT_URI=http://localhost:3000/auth/callback
OPENAI_API_KEY=your-openai-key

3.️⃣ 安装并启动

cd backend
npm install
node index.js

后端运行时间:

http://localhost:3000

🎨 前端设置

4.️⃣ 创建 frontend/.env

VITE_BACKEND_URL=http://localhost:3000

5.️⃣ 安装并启动

cd frontend
npm install
npm run dev

前端运行于:

http://localhost:5173

🚀 部署

渲染后端

  • 创建新的 Web服务

  • 设置构建命令:

    npm install
    
  • 设置启动命令:

    node index.js
    
  • 添加渲染环境变量:

    • 客户端ID
    • 客户端密码
    • OPENAI_API密钥
    • REDIRECT_URI(渲染URL)
    • 端口=3000

Vercel前端

  • 导入GitHub仓库

  • 添加环境变量:

    VITE_BACKEND_URL=https://YOUR_RENDER_URL.onrender.com
    
  • 部署


🤖 MCP工具(技术细节)

youtube.search

按关键字搜索YouTube。

youtube.naturalSearch

人工智能解释自然语言以生成搜索结果。

youtube.likeVideo

代表用户喜欢视频。

youtube.getActivitySummary

汇总每日观察+类似活动。

youtube.history

获取观看历史记录(在允许的情况下)。


🧪 AI查询示例

用户输入 结果
“我想要4个宝马视频” 返回4个宝马的视频
“给我两条有趣的猫短裤” 退回两条短裤
“我今天看了什么?” 显示所有观看的视频
“显示印度趋势” 热门搜索结果
“为我点这个视频” 像YouTube一样表演

📄 许可证

MIT许可证-免费使用、修改和分发。


✨ 作者

Shreeshail H YouTube MCP代理开发人员 Terralogic——人工智能工程挑战