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.
To install YouTube Watch Later for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install youtube-watchlater --client claude
git clone https://github.com/rados10/youtube-watchlater-mcp.git
cd youtube-watchlater
npm install
npm run build
Run the provided script with your Google Cloud credentials:
OAUTH_CLIENT_ID="your_client_id" OAUTH_CLIENT_SECRET="your_client_secret" node get-refresh-token.js
The script will:
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
{
"mcpServers": {
"youtube-watchlater": {
"command": "node",
"args": ["/path/to/youtube-watchlater/build/index.js"],
"env": {
"OAUTH_CLIENT_ID": "your_client_id",
"OAUTH_CLIENT_SECRET": "your_client_secret",
"OAUTH_REFRESH_TOKEN": "your_refresh_token"
}
}
}
}
The server provides a single tool get_watch_later_urls
that accepts an optional daysBack
parameter:
// Get videos added in the last day (default)
{ "daysBack": 1 }
// Get videos added in the last week
{ "daysBack": 7 }
The server will return an array of YouTube URLs for the matching videos:
[
"https://youtube.com/watch?v=video1",
"https://youtube.com/watch?v=video2",
...
]
The refresh token doesn't expire unless you explicitly revoke access. You only need to get a new one if you:
To get a new refresh token, simply run the get-refresh-token.js script again as described in the Setup section.
The server is built with:
To modify the server:
src/index.ts
npm run build
to compileSeamless access to top MCP servers powering the future of AI integration.