YouTube

YouTube

integration

Your YouTube taste, on tap: subscriptions, likes, and a watch-later queue

Tier-1 integration with YouTube via the Data API v3. Reads the signals that describe what you actually watch: the channels you subscribe to, the videos you have liked, and your playlists. Searches YouTube, looks up video details, and acts on your account: like a video, subscribe to a channel, and queue things to watch later in a managed "To Watch" playlist. Built to be composed by media, date-night, and household agents for "what should we watch" recommendations, but also chattable directly. Note: YouTube's API does not expose raw watch history (Google retired that), so taste is read from your likes, subscriptions, and playlists instead.

Source: YouTube

Tools (18)

Get current time

Return the current wall-clock time. Use this when reasoning about elapsed time (e.g. current minute of a live match, time until a deadline) or about what day it is — don't guess the time or the date. By default `now_iso` and `local_date` are in the user's own timezone (near midnight the UTC date is a day ahead of the user's local date). Pass `timezone` (an IANA name like 'Europe/Berlin') only to override that, e.g. to read the time in another location.

Youtube get my channel

Get the connected account's own YouTube channel: title, handle, subscriber/video/total-view counts, and the ids of the user's 'likes' and 'uploads' playlists. Use as a quick sanity check right after connecting, or to confirm which account is linked.

Youtube list subscriptions

List the channels the user subscribes to (channel id, title, when they subscribed). This is a primary taste signal: who the user chooses to follow. Returns one page plus next_page_token; pass it back as page_token to walk further.

Youtube list liked videos

List the videos the user has liked, most recent first. This is the strongest taste signal the YouTube API exposes and the closest stand-in for watch history (which the API does not provide): use it to understand what the user enjoys and to ground recommendations. Returns one page plus next_page_token.

Youtube list playlists

List the user's own playlists (id, title, item count). Use to find a playlist's id before reading its contents with youtube_list_playlist_items, or to see how the user organizes what they save.

Youtube list playlist items

List the videos inside a playlist (video id, title, channel, position). Pass a playlist_id from youtube_list_playlists or the likes/uploads playlist ids from youtube_get_my_channel. Returns one page plus next_page_token.

Youtube create playlist

Create an owned YouTube playlist with a title, optional description, and privacy status. Private is the default. Confirm the title and privacy with the user before calling because this changes their account.

Youtube update playlist

Update an owned YouTube playlist's title, description, or privacy. Only supplied fields change. Resolve the exact playlist_id with youtube_list_playlists and confirm the changes before calling.

Youtube delete playlist

Permanently delete an owned YouTube playlist and all of its playlist entries. This cannot be undone. Resolve the exact playlist_id and obtain explicit user confirmation immediately before calling.

Youtube add playlist item

Add a video to an owned YouTube playlist, optionally at a zero-based position. Use exact playlist and video ids and confirm the addition before calling because it modifies the user's playlist.

Youtube move playlist item

Move one playlist entry to a new zero-based position. Pass the playlist_item_id (not video_id) returned by youtube_list_playlist_items. Confirm the move before calling.

Youtube remove playlist item

Remove one occurrence of a video from a playlist. Pass the unique playlist_item_id from youtube_list_playlist_items, not the video_id. Obtain explicit confirmation immediately before removing it.

Youtube get videos

Get full details for one or more videos by id: title, channel, duration, view/like counts, and description. Up to 50 ids per call. Use to enrich ids returned by youtube_search or a playlist listing before recommending.

Youtube search

Search YouTube for videos, channels, or playlists. Use to find something specific or to surface candidates for a recommendation. Scope to a single channel with channel_id, or sort with order (relevance, date, viewCount, rating). Returns one page plus next_page_token. Note: search is the most quota-expensive call (100 units), so prefer the user's own likes/subscriptions when they answer the question.

Youtube add to watch later

Queue a video to watch later by adding it to a managed 'To Watch (q5m)' playlist (created automatically the first time, kept private). This is the 'set to watch' action. YouTube's native Watch Later list cannot be written through the API, so this agent maintains its own queue instead. Pass a video_id from youtube_search, a playlist listing, or youtube_get_videos.

Youtube rate video

Set the user's rating on a video: 'like', 'dislike', or 'none' to clear an existing rating. Liking is a real action on the user's account and feeds their YouTube recommendations, so only do it when the user clearly asked to like/thumbs-up a video.

Youtube subscribe

Subscribe the user to a channel. This is a real, visible action on the user's account, so only do it when they clearly asked to follow/subscribe. Pass a channel_id from youtube_search or youtube_get_videos.

Youtube unsubscribe

Unsubscribe the user from a channel. Pass the channel_id; the tool resolves the underlying subscription and removes it. Only do this when the user clearly asked to unfollow/unsubscribe.

Chat with YouTube

Open chat