You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: document channel/videos sort + members_only across the plugin's API surface
The live /channel/videos (and the list_channel_videos MCP tool) gained an
opt-in sort=latest|popular|oldest and an additive members_only on every item.
All four places this plugin enumerates that surface now carry it: README tool
8, the SKILL.md routing table + credit-hygiene notes, references/mcp-tools.md
and references/rest-api.md.
Each one leads with the sharp edge: omitting sort is NOT the same as
sort=latest, because the two read different YouTube feeds (uploads playlist
~100/page with Shorts mixed in and members-only excluded, vs the Videos tab
~30/page long-form only with members-only included). Different sets, and
~3.3x the credits to crawl.
Per-tab field presence is stated honestly, verified live on @ted / @nasa /
@natgeo: tab=streams carries lengthText + publishedTimeText, tab=shorts
returns null for both, and the channel-tab feeds null out
channelId/channelTitle/channelHandle/index.
Docs only — no version bump applied.
Co-Authored-By: CRHQ <noreply@crhq.ai>
Copy file name to clipboardExpand all lines: README.md
+18-1Lines changed: 18 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -382,14 +382,31 @@ Search inside one specific channel for videos matching a query.
382
382
383
383
### 8. `list_channel_videos`
384
384
385
-
List a channel's feed, paginated. Use `tab` to choose the uploads feed (default, ~100/page), Shorts, or live streams (~48/page). Ideal for building databases or bulk transcript extraction.
385
+
List a channel's feed, paginated. Use `tab` to choose the uploads feed (default, ~100/page), Shorts, or live streams (~48/page), and the optional `sort` to order the Videos tab by latest, popular, or oldest. Ideal for building databases or bulk transcript extraction.
They are different *sets*, not one list in two orders. A sorted page holds ~30 items instead of ~100, so crawling a whole catalogue with `sort` set costs roughly 3.3x the pages and 3.3x the credits — omit `sort` when you just want newest-first. `tab: "shorts"` and `tab: "streams"` read the same feed either way, so there `sort` only reorders.
405
+
406
+
Every item carries **`members_only`**: `true` only when YouTube badges the video "Members only", and those items have no `viewCountText`. It is always `false` on the uploads feed, on `tab: "shorts"`, and on playlists.
407
+
408
+
Items from `tab: "streams"` carry `lengthText` and `publishedTimeText` (for example `Streamed 2 years ago`, or `LIVE` and a watching count while live). `tab: "shorts"` returns `null` for both — YouTube's Shorts grid publishes neither. On the channel-tab feeds, `channelId`, `channelTitle`, `channelHandle` and `index` are `null`.
They are different *sets*, not one list in two orders. A sorted page holds ~30 items instead of ~100, so crawling a whole catalogue with `sort` set costs roughly 3.3x the pages and 3.3x the credits — omit `sort` when you just want newest-first. `tab: "shorts"` and `tab: "streams"` read the same feed either way, so there `sort` only reorders.
182
+
183
+
Every item carries **`members_only`**: `true` only when YouTube badges the video "Members only", and those items have no `viewCountText`. It is always `false` on the uploads feed, on `tab: "shorts"`, and on playlists.
184
+
185
+
Items from `tab: "streams"` carry `lengthText` and `publishedTimeText` (for example `Streamed 2 years ago`, or `LIVE` and a watching count while live). `tab: "shorts"` returns `null` for both — YouTube's Shorts grid publishes neither. On the channel-tab feeds, `channelId`, `channelTitle`, `channelHandle` and `index` are `null`.
186
+
170
187
Only when the user genuinely wants the whole catalogue. For recent uploads use
171
188
`get_channel_latest_videos` (free); to find something specific use `search_channel_videos`.
0 commit comments