Skip to content

lauragift21/youtube-mcp-server

Repository files navigation

🎬 YouTube MCP Server: Remote MCP on Cloudflare Workers

A powerful Model Context Protocol (MCP) server that provides AI assistants with comprehensive YouTube analytics and channel management capabilities. Built with TypeScript, deployed on Cloudflare Workers, and secured with Google OAuth.

✨ Features

πŸ“Š YouTube Analytics

  • Channel Performance: Revenue, views, subscriber growth, engagement metrics
  • Video Analytics: Deep performance analysis with retention rates and traffic sources
  • Audience Insights: Demographics, geography, device usage, and viewing patterns
  • Top Content: Identify best-performing videos by views, revenue, or engagement

🎯 Content Strategy Tools

  • Trending Analysis: AI-powered content suggestions based on current trends
  • Competitor Intelligence: Analyze competitor channels and identify content gaps
  • Performance Optimization: Recommendations based on your channel's data

πŸ” YouTube Data Access

  • Video Search: Find videos across YouTube with advanced filtering
  • Channel Information: Get detailed channel stats and recent uploads
  • Video Details: Comprehensive metadata, stats, and engagement data

πŸ› οΈ Quick Start

Prerequisites

  • YouTube channel with uploaded content
  • Google Cloud Console project with YouTube APIs enabled
  • Cloudflare Workers account

1. Clone and Install

git clone https://github.com/lauragift21/youtube-mcp-server.git
cd youtube-mcp-server
npm install

2. Configure OAuth

  1. Create Google OAuth Credentials:

    • Go to Google Cloud Console
    • Enable YouTube Data API v3 and YouTube Analytics API
    • Create OAuth 2.0 credentials (Web Application)
    • Add redirect URI: https://your-worker.workers.dev/callback
  2. Set Environment Variables:

    npx wrangler secret put GOOGLE_OAUTH_CLIENT_ID
    npx wrangler secret put GOOGLE_OAUTH_CLIENT_SECRET
    npx wrangler secret put COOKIE_ENCRYPTION_KEY

You can generate a random string for COOKIE_ENCRYPTION_KEY

3. Deploy

npx wrangler deploy

Connect to Claude Desktop

Add to your Claude Desktop configuration:

{
  "mcpServers": {
    "youtube-mcp-server": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://your-deployment.workers.dev/sse"
      ]
    }
  }
}

Connect to Cloudflare AI Playground

You can connect your MCP server from the Cloudflare AI Playground, which is a remote MCP client:

  • Go to https://playground.ai.cloudflare.com/
  • Enter your deployed MCP server URL (remote-mcp-server-authless..workers.dev/sse)
  • You can now use your MCP tools directly from the playground!

πŸ”§ Available Tools

Analytics Tools

  • youtube_getChannelAnalytics - Get channel performance metrics
  • youtube_analyzeVideoPerformance - Deep dive into video performance
  • youtube_getTopVideos - Find your best-performing content
  • youtube_getAudienceDemographics - Understand your viewers

Content Strategy Tools

  • youtube_suggestContentIdeas - AI-powered topic suggestions
  • youtube_analyzeCompetitors - Competitive analysis and benchmarking

Data Tools

  • youtube_searchVideos - Search YouTube with advanced filters
  • youtube_getVideoDetails - Get comprehensive video information
  • youtube_getChannelInfo - Channel overview and statistics
  • youtube_getChannelVideos - Recent uploads from any channel

πŸ’‘ Example Queries

Try these questions with Claude Desktop:

πŸ“ˆ Channel Analytics

"Show me my YouTube channel performance for the past 30 days"

🎯 Content Strategy

"What should I make a video about next in the AI/tech space?"

"Analyze my competitors and show me content opportunities I'm missing"

πŸ‘₯ Audience Insights

"Who are my viewers? Show me demographics and geography data"

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Claude Desktop │────│  MCP Server      │────│ YouTube APIs    β”‚
β”‚   (MCP Client)   β”‚    β”‚  (Cloudflare)    β”‚    β”‚ (Google)        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                β”‚
                       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                       β”‚  OAuth Provider  β”‚
                       β”‚  (Google Auth)   β”‚
                       β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key Components

  • MCP Server: Handles tool requests and API communication
  • OAuth Provider: Manages Google authentication and token refresh
  • YouTube Data API: Public video and channel information
  • YouTube Analytics API: Private channel analytics and revenue data

πŸ”— Links


Built with ❀️ by Gift Egwuenu | Powered by MCP & Cloudflare Workers

About

MCP server for YouTube APIs with Google OAuth

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •