Youtube-Sched-MCP

razzacktiger/Youtube-Sched-MCP

3.3

If you are the rightful owner of Youtube-Sched-MCP and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Transform your chaotic YouTube 'Watch Later' list into an organized, actionable viewing system with the YouTube Watch Later Cleaner - FastMCP Server.

Tools
  1. hello_world

    Test FastMCP setup

  2. test_async

    Test async functionality

  3. analyze_watch_later

    Analyze Watch Later playlist

  4. cleanup_unavailable

    Remove deleted/private videos

  5. categorize_videos

    Auto-categorize videos

  6. create_notion_database

    Export to Notion

  7. schedule_viewing

    Create calendar events

  8. create_filtered_playlists

    Generate category playlists

๐ŸŽฌ YouTube Watch Later Cleaner - FastMCP Server

Transform your chaotic YouTube "Watch Later" list into an organized, actionable viewing system. Built with FastMCP 2.0 for seamless integration with Claude Desktop and other MCP clients.

โœจ Features

  • ๐Ÿ” Smart Analysis: Analyze your Watch Later playlist with categorization breakdown
  • ๐Ÿงน Cleanup Tools: Remove deleted/private videos automatically
  • ๐Ÿท๏ธ Auto-Categorization: Intelligent video categorization using title/channel analysis
  • ๐Ÿ“‹ Notion Integration: Export organized videos to beautiful Notion databases
  • ๐Ÿ“… Calendar Scheduling: Create viewing sessions in Google Calendar
  • ๐ŸŽต Playlist Creation: Generate category-based YouTube playlists
  • ๐Ÿ“Š Progress Tracking: Monitor viewing progress and statistics

๐Ÿš€ Quick Start

1. Installation

# Clone and navigate to project
cd Youtube-Sched-MCP/

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

2. API Setup

  1. Copy environment file:

    cp env.example .env
    
  2. Get YouTube API Key:

    • Go to Google Developers Console
    • Create project โ†’ Enable YouTube Data API v3 โ†’ Create API Key
    • Add to .env: YOUTUBE_API_KEY=your_key_here
  3. Get Notion API Key (optional):

    • Go to Notion Integrations
    • Create new internal integration โ†’ Copy secret
    • Add to .env: NOTION_API_KEY=your_key_here

3. Test the Server

# Test basic functionality
python src/server.py

# Open FastMCP Inspector (recommended)
fastmcp dev src/server.py

Expected Output:

๐ŸŽฌ YouTube Watch Later Cleaner - FastMCP Server
==================================================
Server: YouTube Watch Later Cleaner
Tools: 8 available
Resources: 2 available
==================================================
โœ… API keys configured
==================================================
๐Ÿš€ Starting FastMCP server...
   Use 'fastmcp dev src/server.py' for MCP Inspector
   Use 'fastmcp install src/server.py' for Claude Desktop
==================================================

4. Test Tools

Once the server is running, test these tools:

// Test basic functionality
{
  "tool": "hello_world",
  "arguments": {"name": "YouTube Cleaner"}
}

// Test async functionality
{
  "tool": "test_async",
  "arguments": {"message": "Testing FastMCP setup"}
}

// Test main tool (stub implementation)
{
  "tool": "analyze_watch_later",
  "arguments": {"max_results": 10, "include_stats": true}
}

๐Ÿ”ง Development Setup

# Install development dependencies
pip install -r requirements-dev.txt

# Set up pre-commit hooks
pre-commit install

# Run tests
pytest

# Format code
black src/

# Type checking
mypy src/

๐Ÿ“ฑ Claude Desktop Integration

  1. Install the server:

    fastmcp install src/server.py
    
  2. Or manually add to Claude config:

    {
      "mcpServers": {
        "youtube-cleaner": {
          "command": "python",
          "args": ["/path/to/Youtube-Sched-MCP/src/server.py"],
          "env": {
            "YOUTUBE_API_KEY": "your_key_here",
            "NOTION_API_KEY": "your_key_here"
          }
        }
      }
    }
    

๐Ÿ› ๏ธ Available Tools

ToolStatusDescription
hello_worldโœ… ReadyTest FastMCP setup
test_asyncโœ… ReadyTest async functionality
analyze_watch_later๐Ÿšง StubAnalyze Watch Later playlist
cleanup_unavailable๐Ÿšง StubRemove deleted/private videos
categorize_videos๐Ÿšง StubAuto-categorize videos
create_notion_database๐Ÿšง StubExport to Notion
schedule_viewing๐Ÿšง StubCreate calendar events
create_filtered_playlists๐Ÿšง StubGenerate category playlists

Note: Stub tools return mock data for testing. Real implementations coming in subsequent tasks.

๐Ÿ“‹ Resources & Prompts

  • config://categories: Available video categories
  • stats://server: Server status and statistics
  • categorization_help: Manual categorization assistance
  • scheduling_help: Optimal viewing schedule suggestions

๐Ÿ› Troubleshooting

Common Issues:

  1. "FastMCP not found":

    pip install fastmcp>=2.9.0
    
  2. "API key not working":

    • Check .env file exists and keys are correct
    • Verify YouTube API is enabled in Google Console
    • Ensure no extra spaces in API keys
  3. "Import errors":

    pip install -r requirements.txt --upgrade
    
  4. "Permission denied":

    chmod +x src/server.py
    

Debug Mode:

# Enable debug logging
DEBUG=true python src/server.py

# Enable API mocking (no quotas used)
MOCK_YOUTUBE_API=true python src/server.py

๐Ÿ“– Next Steps

Once Task 1.1 is complete, continue with:

  • Task 1.2: Enhanced project structure and basic testing
  • Task 3.1: YouTube API integration (analyze_watch_later, cleanup_unavailable)
  • Task 3.2: Categorization system (categorize_videos)
  • Task 3.3: External integrations (Notion, Calendar, Playlists)

๐Ÿ“„ License

MIT License - See for details.


Status: โœ… Task 1.1 Complete - FastMCP 2.0 foundation ready for development!