RY

rados10/youtube-watchlater-mcp

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

11 stars 6 forks Качество 70 Тренд 18MIT

MCP server for accessing YouTube Watch Later playlist

Обзор

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. - 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 To install YouTube Watch Later for Claude Desktop automatically via Smithery: 1. Go to Google Cloud Console 2. Create a new project or select an existing one 3. Enable the YouTube Data API v3 4. Go to Credentials → Create Credentials → OAuth 2.0 Client ID 5. Set Application Type to "Web application" 6. Add "http://localhost:3000/oauth2callback" to Authorized redirect URIs 7.

README

Показан фрагмент оригинального README. Открыть оригинал.

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

Installing via Smithery

To install YouTube Watch Later for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install youtube-watchlater --client claude

Manual Installation

  1. Clone this repository:
git clone https://github.com/rados10/youtube-watchlater-mcp.git
cd youtube-watchlater
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Setup

1. Create Google Cloud Project

  1. Go to Google Cloud Console
  2. Create a new project or select an existing one
  3. Enable the YouTube Data API v3
  4. Go to Credentials → Create Credentials → OAuth 2.0 Client ID
  5. Set Application Type to “Web application”
  6. Add “http://localhost:3000/oauth2callback” to Authorized redirect URIs
  7. Copy your Client ID and Client Secret

2. Get Refresh Token

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:

  • 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

{
  "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"
      }
    }
  }
}

Usage

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",
  ...
]

Token Refresh

Открыть полный README на GitHub

Установка

npx -y @smithery/cli install youtube-watchlater --client claude
Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

{ "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" } } } }