YouTube
Video sharing and streaming platform — manage videos, playlists, channels, analytics, and reporting
Tools
| Name | Description |
|---|---|
search_videosSearch for YouTube videos by keyword | Search for YouTube videos by keyword |
get_videoGet details of a specific YouTube video by ID | Get details of a specific YouTube video by ID |
update_videoUpdate YouTube video metadata and optional privacy status. Snippet updates require the current title and category ID. | Update YouTube video metadata and optional privacy status. Snippet updates require the current title and category ID. |
delete_videoPermanently delete a YouTube video by ID. | Permanently delete a YouTube video by ID. |
upload_videoUpload a video file to the authenticated YouTube channel with snippet and status metadata. | Upload a video file to the authenticated YouTube channel with snippet and status metadata. |
set_thumbnailUpload and set a custom thumbnail image for a video. | Upload and set a custom thumbnail image for a video. |
list_video_categoriesList YouTube video categories for a region. | List YouTube video categories for a region. |
get_video_ratingGet the authenticated user rating for one or more videos. | Get the authenticated user rating for one or more videos. |
rate_videoSet the authenticated user rating for a video. | Set the authenticated user rating for a video. |
list_abuse_report_reasonsList valid YouTube video abuse report reasons. | List valid YouTube video abuse report reasons. |
report_video_abuseReport a video for abuse using a reason ID from List Abuse Report Reasons. | Report a video for abuse using a reason ID from List Abuse Report Reasons. |
list_playlistsList playlists for the authenticated user's channel | List playlists for the authenticated user's channel |
create_playlistCreate a new YouTube playlist | Create a new YouTube playlist |
update_playlistUpdate playlist title, description, or privacy status. | Update playlist title, description, or privacy status. |
delete_playlistDelete a playlist by ID. | Delete a playlist by ID. |
add_to_playlistAdd a video to an existing YouTube playlist | Add a video to an existing YouTube playlist |
list_playlist_itemsList videos in a playlist with pagination. | List videos in a playlist with pagination. |
update_playlist_itemMove an existing playlist item to a new position. | Move an existing playlist item to a new position. |
delete_playlist_itemRemove one video from a playlist by playlist item ID. | Remove one video from a playlist by playlist item ID. |
list_channel_videosList videos uploaded to the authenticated user's channel | List videos uploaded to the authenticated user's channel |
list_comment_threadsList top-level comment threads for a video. | List top-level comment threads for a video. |
list_comment_repliesList replies to a top-level YouTube comment. | List replies to a top-level YouTube comment. |
create_top_level_commentCreate a new top-level comment on a YouTube video. | Create a new top-level comment on a YouTube video. |
reply_to_commentReply to a top-level YouTube comment. | Reply to a top-level YouTube comment. |
update_commentUpdate the text of a YouTube comment owned by the authenticated channel. | Update the text of a YouTube comment owned by the authenticated channel. |
set_comment_moderation_statusApprove, reject, or hold comments for review. | Approve, reject, or hold comments for review. |
delete_commentDelete a YouTube comment by ID. | Delete a YouTube comment by ID. |
list_captionsList caption tracks for a video. | List caption tracks for a video. |
insert_captionUpload a caption track for a YouTube video. | Upload a caption track for a YouTube video. |
update_captionReplace a caption track file and metadata. | Replace a caption track file and metadata. |
download_captionDownload a caption track body as text when the authenticated channel has access. | Download a caption track body as text when the authenticated channel has access. |
delete_captionDelete a caption track by ID. | Delete a caption track by ID. |
query_analytics_reportRun a custom YouTube Analytics reports.query request for channel or content-owner analytics. | Run a custom YouTube Analytics reports.query request for channel or content-owner analytics. |
get_channel_analytics_summaryGet channel-level views, watch time, engagement, and subscriber metrics over a date range. | Get channel-level views, watch time, engagement, and subscriber metrics over a date range. |
get_video_analyticsGet private YouTube Analytics metrics for a single video. | Get private YouTube Analytics metrics for a single video. |
get_analytics_by_countryBreak down YouTube Analytics metrics by viewer country. | Break down YouTube Analytics metrics by viewer country. |
get_analytics_by_traffic_sourceBreak down YouTube Analytics metrics by traffic source type, optionally for a single video. | Break down YouTube Analytics metrics by traffic source type, optionally for a single video. |
get_subscriber_analyticsGet subscribers gained and lost over time or another Analytics dimension. | Get subscribers gained and lost over time or another Analytics dimension. |
get_revenue_analyticsGet estimated YouTube revenue and ad performance metrics. Requires the monetary analytics OAuth scope. | Get estimated YouTube revenue and ad performance metrics. Requires the monetary analytics OAuth scope. |
list_analytics_groupsList YouTube Analytics groups owned by the authenticated account or fetch specific group IDs. | List YouTube Analytics groups owned by the authenticated account or fetch specific group IDs. |
create_analytics_groupCreate a YouTube Analytics group for channels, playlists, videos, or partner assets. | Create a YouTube Analytics group for channels, playlists, videos, or partner assets. |
update_analytics_groupRename a YouTube Analytics group. | Rename a YouTube Analytics group. |
delete_analytics_groupDelete a YouTube Analytics group by ID. | Delete a YouTube Analytics group by ID. |
list_analytics_group_itemsList items in a YouTube Analytics group. | List items in a YouTube Analytics group. |
add_analytics_group_itemAdd a channel, playlist, video, or partner asset to a YouTube Analytics group. | Add a channel, playlist, video, or partner asset to a YouTube Analytics group. |
delete_analytics_group_itemRemove an item from a YouTube Analytics group by group item ID. | Remove an item from a YouTube Analytics group by group item ID. |
list_reporting_report_typesList YouTube Reporting API report types available to the channel or content owner. | List YouTube Reporting API report types available to the channel or content owner. |
create_reporting_jobCreate a daily YouTube Reporting API job for a report type. | Create a daily YouTube Reporting API job for a report type. |
list_reporting_jobsList YouTube Reporting API jobs for the channel or content owner. | List YouTube Reporting API jobs for the channel or content owner. |
get_reporting_jobGet metadata for a YouTube Reporting API job. | Get metadata for a YouTube Reporting API job. |
delete_reporting_jobDelete a YouTube Reporting API job. | Delete a YouTube Reporting API job. |
list_reporting_reportsList generated bulk reports for a YouTube Reporting API job. | List generated bulk reports for a YouTube Reporting API job. |
get_reporting_reportGet metadata and download URL for a specific YouTube Reporting API report. | Get metadata and download URL for a specific YouTube Reporting API report. |
download_reporting_reportFetch a generated YouTube Reporting API report by job/report ID, then download its Reporting media body as text. | Fetch a generated YouTube Reporting API report by job/report ID, then download its Reporting media body as text. |
custom_api_callMake a custom API call to the YouTube Data API v3 | Make a custom API call to the YouTube Data API v3 |
Triggers
| Name | Description |
|---|---|
new_videoTriggers when a new video is uploaded to your YouTube channel | Triggers when a new video is uploaded to your YouTube channel |
new_commentTriggers when a new top-level comment appears on a specific YouTube video. | Triggers when a new top-level comment appears on a specific YouTube video. |
analytics_report_changedTriggers when the result of a YouTube Analytics report query changes after the initial baseline. | Triggers when the result of a YouTube Analytics report query changes after the initial baseline. |
new_reporting_reportTriggers when a new generated YouTube Reporting API report appears for a reporting job. | Triggers when a new generated YouTube Reporting API report appears for a reporting job. |
Quick Start
import { WeavzClient } from '@weavz-io/sdk'
const weavz = new WeavzClient({ apiKey: 'wvz_...' })
const result = await weavz.actions.execute('youtube', 'search_videos', {
workspaceId: '550e8400-e29b-41d4-a716-446655440000',
integrationAlias: 'youtube',
input: { /* ... */ },
})Related Integrations
Works well with
Frequently Asked Questions
How do I connect YouTube to my app?
Use Weavz Hosted Connect for OAuth2 authentication. Install the SDK, create a connection through the connect portal or API, then execute tools programmatically.
What tools does YouTube support?
YouTube supports 55 tools including Search Videos, Get Video, Update Video, Delete Video, Upload Video, and more.
Can I use YouTube with AI agents?
Yes. Add YouTube to an MCP server in Tool Mode or Code Mode. Code Mode provides 3 meta-tools with on-demand API discovery so agents can compose stateful workflows without loading every action schema up front.
How do I connect YouTube to ChatGPT or Claude?
Open the Weavz connector setup, sign in, choose a workspace, and add YouTube as an approved app. ChatGPT, Claude, and other remote MCP clients can then call the scoped YouTube tools exposed by that workspace.
Does YouTube work with Claude Code, Cursor, Codex, and local agents?
Yes. Remote and local MCP clients can connect to a Weavz MCP endpoint for the workspace. Local coding agents can also use the Weavz CLI to inspect apps, discover actions, run approved YouTube work, and execute Code Mode workflows from a terminal.
What can I ask an AI agent to do with YouTube?
YouTube exposes 55 tools, including Search Videos, Get Video, Update Video, Delete Video, Upload Video, and more. Use Weavz to keep credentials scoped, require approval for sensitive work, and audit what the agent did.
Can YouTube be used in stateful agent workflows?
Yes. Agents can combine YouTube tools with Filesystem, State KV, Human Gates, input partials, and other workspace integrations while keeping execution scoped to the selected workspace or end user.
What authentication does YouTube use?
YouTube uses OAuth2. Weavz stores OAuth credentials securely and refreshes tokens when supported by the provider.
How much does the YouTube integration cost?
The YouTube integration is included on all Weavz plans including the free tier with 20,000 actions per month. No credit card required.
What triggers does YouTube support?
YouTube supports 4 triggers including New Video, New Comment, Analytics Report Changed, New Reporting Report.
Connect YouTube in minutes
Get 20,000 free action executions every month. No credit card required.