# YouTube Video Data

Retrieve public video metadata, fetch thumbnails, and read authorized transcript files.

### `get_youtube_video_data`

Retrieve public video metadata from a YouTube channel or single video through the configured YouTube API integration. Returns metadata and, when requested, top comments sorted by likes.

**Example prompt**

"Retrieve the last 10 videos from @MrBeast and include top comments"

| Parameter | Type | Default | Description |
| --- | --- | --- | --- |
| url | string | required | YouTube channel URL or video URL |
| video_type | string | both | Type of videos: `shorts`, `videos`, or `both` |
| sort | string | recent | Sort order: `recent` or `popular` |
| max_videos | integer | 20 | Maximum videos to retrieve (1-100) |
| include_comments | boolean | false | Include top comments for each video (sorted by likes) |
| max_comments | integer | 100 | Max top comments to return per video when include_comments is true (1-100, default 100). Lower it only if the caller explicitly wants a smaller slice. |

### `get_video_thumbnail`

Fetch a YouTube video's thumbnail as an inline image so Claude can actually SEE it — read the text on the thumbnail, describe the visual, judge the style. Tries `maxresdefault` first, falls back to `hqdefault` when the higher-res asset doesn't exist.

**Example prompt**

"Look at this video's thumbnail and describe what makes it click-worthy: https://youtube.com/watch?v=dQw4w9WgXcQ"

| Parameter | Type | Default | Description |
| --- | --- | --- | --- |
| url | string | null | YouTube video URL (watch, shorts, or youtu.be) or a raw 11-char video ID. Either `url` or `video_id` is required. |
| video_id | string | null | Alias for `url` — accepts a raw 11-char video ID or any video URL. |

### `fetch_transcript`

Fetch the transcript of a YouTube video from its URL or video ID. Prefers the English track (auto-generated or manual) and falls back to the first available language. Multiple comma-separated videos are fetched in parallel (up to 20 per call).

**Example prompt**

"Get the transcript of this video: https://youtube.com/watch?v=dQw4w9WgXcQ"

| Parameter | Type | Default | Description |
| --- | --- | --- | --- |
| video_url | string | required | YouTube video URL (watch, shorts, or youtu.be) or a raw 11-char video ID. Pass a single video or multiple comma-separated videos to fetch all in parallel. |

### `read_transcript`

Fetch transcript text from already-hosted transcript text-file URLs (e.g. transcript_url values returned by other Algrow tools). To pull a transcript for a YouTube video from its URL or ID, use fetch_transcript. Multiple comma-separated URLs are fetched in parallel.

**Example prompt**

"Read the transcript from this text-file URL"

| Parameter | Type | Default | Description |
| --- | --- | --- | --- |
| transcript_url | string | required | One or more transcript text-file URLs. Pass a single URL or multiple comma-separated URLs to fetch all in parallel. |
