list_channel_videos
List a YouTube channel's uploads, newest first, without an API key. Survey content to pick videos for transcription; also accepts playlist URLs.
Instructions
List a YouTube channel's uploads, newest first, without an API key.
Use this to survey what a channel has published before deciding which videos are worth transcribing. Also accepts playlist URLs.
Args: channel_url: A handle ('@mwganson'), a bare name ('mwganson'), a channel ID ('UCxxxx...'), any youtube.com channel URL (with or without a /videos, /shorts or /streams tab), or a playlist URL. max_results: How many videos to return, newest first (1-1000, default 50). resolve_all_dates: False (default) fills upload dates for roughly the 15 most recent videos from the channel's RSS feed, which is one extra cheap request. True fetches every listed video's metadata to date the whole list - accurate but roughly one request per video, so only use it on small max_results.
Returns: { "channel": str | None, # display name "channel_id": str | None, # UC... id "channel_url": str, # URL actually listed "total_videos": int | None, # total on the channel/playlist, if known "count": int, # videos in this response "videos": [ { "video_id": str, # e.g. "Tbiu_rMJolk" "title": str, "url": str, # watch URL, feed straight to get_video_transcript "duration_seconds": int | None, "duration": str | None, # "44:19" "view_count": int | None, "upload_date": str | None # "2022-08-14", None if not resolved } ] }
Errors: Raises ValueError for an unparseable channel reference and RuntimeError with an actionable message if YouTube refuses the listing.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| channel_url | Yes | ||
| max_results | No | ||
| resolve_all_dates | No |