YouTube Watch Later MCP Server
YouTube Watch Later MCP Server
A Model Context Protocol (MCP) server that provides access to a custom YouTube playlist. The server exposes a simple tool to retrieve URLs of videos added to the specified playlist within a specified timeframe.
Features
- Get URLs of videos added to a custom playlist within a configurable number of days
- Simple interface that returns just the video URLs
- OAuth2 authentication for secure access to your YouTube data
Installation
- Clone this repository:
- Install dependencies:
- Build the project:
Setup
1. Create Google Cloud Project
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the YouTube Data API v3
- Go to Credentials → Create Credentials → OAuth 2.0 Client ID
- Set Application Type to "Web application"
- Add "http://localhost:3000/oauth2callback" to Authorized redirect URIs
- Copy your Client ID and Client Secret
2. Get Refresh Token
Run the provided script with your Google Cloud credentials:
The script will:
- Open your default browser to the Google authorization page
- Ask you to sign in and authorize the application
- Display your refresh token in the terminal
3. Configure MCP Settings
Add the server configuration to your MCP settings file:
For VSCode (Claude Dev Extension):
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
For Claude Desktop App:
~/Library/Application Support/Claude/claude_desktop_config.json
Usage
The server provides a single tool get_watch_later_urls
that accepts an optional daysBack
parameter:
The server will return an array of YouTube URLs for the matching videos:
Token Refresh
The refresh token doesn't expire unless you explicitly revoke access. You only need to get a new one if you:
- Revoke the application's access in your Google Account settings
- Reset your Google account's security settings
- The token becomes invalid for any other reason
To get a new refresh token, simply run the get-refresh-token.js script again as described in the Setup section.
Development
The server is built with:
- TypeScript
- @modelcontextprotocol/sdk
- googleapis (YouTube Data API v3)
To modify the server:
- Make your changes in
src/index.ts
- Run
npm run build
to compile - Restart the MCP server to apply changes
Enables secure access to your YouTube Watch Later playlist, allowing retrieval of video URLs added within a specified timeframe through a simple interface using OAuth2 authentication.