razzacktiger/Youtube-Sched-MCP
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.
hello_world
Test FastMCP setup
test_async
Test async functionality
analyze_watch_later
Analyze Watch Later playlist
cleanup_unavailable
Remove deleted/private videos
categorize_videos
Auto-categorize videos
create_notion_database
Export to Notion
schedule_viewing
Create calendar events
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
-
Copy environment file:
cp env.example .env
-
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
-
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
-
Install the server:
fastmcp install src/server.py
-
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
Tool | Status | Description |
---|---|---|
hello_world | โ Ready | Test FastMCP setup |
test_async | โ Ready | Test async functionality |
analyze_watch_later | ๐ง Stub | Analyze Watch Later playlist |
cleanup_unavailable | ๐ง Stub | Remove deleted/private videos |
categorize_videos | ๐ง Stub | Auto-categorize videos |
create_notion_database | ๐ง Stub | Export to Notion |
schedule_viewing | ๐ง Stub | Create calendar events |
create_filtered_playlists | ๐ง Stub | Generate category playlists |
Note: Stub tools return mock data for testing. Real implementations coming in subsequent tasks.
๐ Resources & Prompts
config://categories
: Available video categoriesstats://server
: Server status and statisticscategorization_help
: Manual categorization assistancescheduling_help
: Optimal viewing schedule suggestions
๐ Troubleshooting
Common Issues:
-
"FastMCP not found":
pip install fastmcp>=2.9.0
-
"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
- Check
-
"Import errors":
pip install -r requirements.txt --upgrade
-
"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!