YouTube MCP Extended
Manages YouTube channels via Claude Desktop, enabling AI-powered metadata optimization, video scheduling, playlist management, and backups with safety guardrails.
README
YouTube MCP Extended
A powerful Model Context Protocol (MCP) server that transforms Claude Desktop into your personal YouTube channel management assistant. Automate metadata optimization, video scheduling, playlist organization, and content backups with AI-powered insights.
What is YouTube MCP Extended?
YouTube MCP Extended is a comprehensive MCP server that enables Claude Desktop to manage your YouTube channel with professional-grade automation tools. Whether you're a content creator with dozens of videos or a digital marketer managing multiple channels, this tool streamlines your workflow with intelligent automation and safety guardrails.
Key Benefits
- š¤ AI-Powered Metadata: Generate optimized titles, descriptions, and tags using your video content and transcripts
- š Smart Scheduling: Plan video releases with intelligent timing strategies
- š Playlist Automation: Organize videos into playlists automatically by category or custom rules
- š¾ Safe Operations: Built-in backup system and approval workflows prevent accidental changes
- ā” Batch Processing: Handle multiple videos efficiently with progress tracking
- š Secure: OAuth authentication with optional encrypted token storage
Quick Start (5 Minutes)
Prerequisites
- Node.js 20+ (Download)
- Claude Desktop (Download)
- Google Cloud Project with YouTube Data API v3 enabled
1. Installation
# Clone and install
git clone https://github.com/denniswestermann/youtube_MetaData_MCP.git
cd youtube_MetaData_MCP
npm install
npm run build:basic
2. Google Cloud Setup
- Go to Google Cloud Console
- Create a new project or select existing one
- Enable the YouTube Data API v3
- Create OAuth 2.0 credentials (Web application type)
- Add
http://localhost:3000/callbackto authorized redirect URIs - Copy your Client ID and Client Secret
3. Configuration
Create .env file:
cp .env.example .env
Edit .env with your credentials:
YOUTUBE_CLIENT_ID=your-client-id.apps.googleusercontent.com
YOUTUBE_CLIENT_SECRET=your-client-secret
OAUTH_ENCRYPTION_SECRET=your-strong-encryption-secret
4. Claude Desktop Configuration
Add to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"youtube-extended": {
"command": "node",
"args": ["./dist/index.js"],
"cwd": "/path/to/youtube_MetaData_MCP"
}
}
}
5. First Use
- Restart Claude Desktop
- Ask Claude: "Start the YouTube OAuth flow"
- Follow the authentication instructions
- Ask Claude: "List my recent videos"
š You're ready! Claude can now manage your YouTube channel.
Core Features
š OAuth Authentication
- Secure PKCE-based OAuth 2.0 flow
- Encrypted token storage (optional)
- Automatic token refresh
- One-time setup per machine
š¹ Video Management
- List and analyze video metadata
- Download transcripts for analysis
- Bulk operations with progress tracking
- Smart metadata suggestions
š·ļø Metadata Optimization
- AI-powered title and description generation
- Intelligent tag suggestions based on content
- Guardrail system prevents problematic changes
- Review workflow with approval checklists
š Video Scheduling
- Strategic release timing optimization
- Bulk scheduling with conflict detection
- Preview mode for planning
- Timezone-aware scheduling
š Playlist Management
- Automatic categorization by YouTube categories
- Custom playlist organization rules
- Bulk video assignment
- Position-specific placement
š¾ Backup & Recovery
- Automatic metadata backups before changes
- Date-organized backup storage
- One-click restore functionality
- Version history tracking
ā” Batch Operations
- Queue-based processing for API efficiency
- Real-time progress monitoring
- Error handling with partial success
- Resource subscriptions for live updates
User Personas & Use Cases
š„ Content Creator
"I need to optimize 50+ video titles and organize them into themed playlists"
- Generate engaging titles from video transcripts
- Bulk organize videos into series playlists
- Schedule optimal release times
- Backup metadata before experimentation
š Digital Marketer
"I manage multiple client channels and need consistent optimization"
- Standardize metadata across channels
- Implement release scheduling strategies
- Generate performance-optimized descriptions
- Track changes with audit trails
š Educational Institution
"Our course library needs better organization and discoverability"
- Organize videos by course/module structure
- Generate educational descriptions and tags
- Schedule semester-based releases
- Maintain consistent categorization
š ļø Developer/Agency
"I want to extend the tool for custom workflows"
- Built-in configuration validation
- Feature flag system for controlled rollouts
- Comprehensive error handling
- Extensible architecture
Safety & Guardrails
YouTube MCP Extended prioritizes safe operations:
- Approval Workflows: Metadata changes require explicit confirmation
- Automatic Backups: Original data preserved before modifications
- Preview Mode: See changes before applying them
- Error Recovery: Graceful handling of API failures
- Rate Limiting: Respects YouTube API quotas and limits
Architecture Highlights
- Modular Design: Clean separation of concerns
- MCP Protocol: Native integration with Claude Desktop
- TypeScript: Full type safety and IDE support
- Configuration System: Environment-based setup with validation
- Batch Processing: Efficient API usage with progress tracking
- Resource Subscriptions: Real-time updates for long operations
Documentation
- š Installation Guide - Detailed setup instructions
- āļø Configuration Guide - Complete configuration reference
- š¤ User Guide - Feature walkthroughs and tutorials
- š§ Tools Reference - Complete MCP tools documentation
- šØ Troubleshooting - Common issues and solutions
Example Workflows
Optimizing Video Metadata
You: "Generate metadata suggestions for my latest video about TypeScript"
Claude: [Analyzes transcript, generates optimized title, description, tags]
You: "Apply the suggestions after reviewing the checklist"
Claude: [Creates backup, applies changes, confirms success]
Bulk Playlist Organization
You: "Organize my last 20 videos into playlists by topic"
Claude: [Analyzes categories, creates themed playlists, assigns videos]
You: "Monitor the progress"
Claude: [Shows real-time batch progress with success/failure details]
Strategic Scheduling
You: "Schedule my next 10 videos for optimal engagement"
Claude: [Analyzes upload patterns, creates strategic schedule]
You: "Apply the schedule"
Claude: [Implements scheduling with batch tracking]
Development & Contribution
Development Commands
# Development with hot reload
npm run dev:basic
# Build for production
npm run build:basic
# Run tests
npm test
# Lint and format
npm run lint
npm run format
# Type checking
npm run type-check
Project Structure
src/
āāā auth/ # OAuth authentication
āāā youtube/ # YouTube API client
āāā metadata/ # Metadata generation & review
āāā scheduler/ # Video scheduling
āāā playlist/ # Playlist management
āāā backup/ # Backup & restore
āāā batch/ # Batch processing
āāā config/ # Configuration system
System Requirements
- Node.js: 20.0.0 or higher
- Memory: 512MB minimum, 1GB recommended
- Storage: 100MB for application, additional space for backups
- Network: Stable internet connection for YouTube API
- Platform: macOS, Windows, or Linux
API Quotas & Limits
YouTube Data API v3 provides 10,000 quota units per day by default:
- List videos: 1 unit per request
- Update metadata: 50 units per update
- Create playlist: 50 units
- Add to playlist: 50 units
The server includes intelligent quota monitoring and rate limiting.
Security Considerations
- Token Encryption: Use
OAUTH_ENCRYPTION_SECRETfor production - Scope Limitation: Request only necessary YouTube permissions
- Local Storage: All data stays on your machine
- Network Security: Direct communication with YouTube APIs only
- Audit Trail: Optional logging for compliance requirements
Troubleshooting Quick Reference
| Issue | Solution |
|---|---|
| OAuth fails | Check redirect URI matches Google Cloud Console |
| API quota exceeded | Monitor usage in Google Cloud Console |
| Metadata suggestions empty | Ensure video has description or transcript |
| Batch jobs stuck | Check network connection and API quotas |
| Claude can't find server | Verify claude_desktop_config.json path |
Version History
- v0.0.2 - Enhanced documentation and user experience
- v0.0.1 - Initial release with core MCP functionality
Support & Community
- š Documentation: Comprehensive guides in
/docs - š Bug Reports: GitHub Issues
- š¬ Discussions: GitHub Discussions
- š§ Email: support@aiex-academy.com
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
Built with:
- Model Context Protocol SDK - MCP implementation
- Google APIs Client - YouTube API access
- Google Auth Library - OAuth authentication
Ready to supercharge your YouTube workflow? Follow the Quick Start guide above and transform Claude Desktop into your personal YouTube management assistant.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.