Skip to main content
Glama
markswendsen-code

@striderlabs/mcp-youtube

README.md
# @striderlabs/mcp-youtube

MCP server connector for YouTube — search videos, manage playlists, subscriptions, and watch history via Playwright browser automation.

## Installation

```bash
npm install @striderlabs/mcp-youtube
```

## Configuration

Set environment variables:

```bash
export YOUTUBE_EMAIL="your-google-email@gmail.com"
export YOUTUBE_PASSWORD="your-password"
export YOUTUBE_HEADLESS="true"  # Set to "false" to see browser
```

## Tools

| Tool | Description |
|------|-------------|
| `search_videos` | Search for videos by query |
| `get_video_details` | Get detailed info about a video |
| `get_channel_info` | Get channel information |
| `list_playlists` | List user playlists |
| `get_playlist_videos` | Get videos in a playlist |
| `subscribe_channel` | Subscribe to a channel |
| `get_subscriptions` | List subscribed channels |
| `get_watch_history` | Get watch history |
| `like_video` | Like a video |
| `add_to_playlist` | Add video to playlist |

## MCP Configuration

Add to your MCP config:

```json
{
  "mcpServers": {
    "youtube": {
      "command": "npx",
      "args": ["@striderlabs/mcp-youtube"],
      "env": {
        "YOUTUBE_EMAIL": "your-email",
        "YOUTUBE_PASSWORD": "your-password"
      }
    }
  }
}
```

## License

MIT

TDQS

A3.6/5.0

Scored across 10 tools

Disambiguation5/5

Each tool targets a distinct resource-action pair: videos, channels, playlists, subscriptions, watch history, and likes are cleanly separated. Even the read operations are unambiguous because they operate on different objects.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern, such as search_videos, get_channel_info, subscribe_channel, and add_to_playlist. There are no mixed conventions or vague verbs.

Tool Count5/5

Ten tools is well within the ideal 3–15 range and appropriately scopes YouTube search, channel browsing, playlist access, subscriptions, watch history, and engagement actions without being bloated.

Completeness3/5

Core browsing/search workflows are covered, but the action set has lifecycle gaps: there is no create_playlist or remove_from_playlist even though add_to_playlist exists, and no unsubscribe or unlike counterparts to subscribe_channel and like_video. Upload and comment operations are absent, leaving some user-action workflows with dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues