Integration · Marketing
Connect Claude & ChatGPT to YouTube
Ask your AI how your latest videos are doing, or to go through the newest comments on your channel. It reads channel and video statistics, searches your uploads, updates titles, descriptions, tags and privacy, and manages playlists. It can also reply to, post and moderate comments, and show captions, subscriptions and recent channel activity.
Free plan, no credit card. Takes about a minute.
Try asking
“How many views and likes did my last five uploads get?”
The AI searches your own uploads by date and reads the statistics for each video.
“Show the new comments on my latest video and suggest replies.”
It lists the comment threads with replies. When you approve a reply, it posts it publicly under your channel.
“Change the title of my video about pricing to 'How we set prices in 2026'.”
It reads the current video details and updates the title, keeping the description, tags and category.
What your AI can do
Channel and videos
Read channel and video statistics, search your uploads, and update titles, descriptions, tags, category and privacy.
Playlists
List, create and update playlists, and add or remove videos without deleting the videos themselves.
Comments
Read comment threads and replies, reply or post publicly, and moderate, hold or delete comments on your channel.
“Make an unlisted playlist called Tutorials and add my last three how-to videos.”
It creates the playlist with that privacy setting and adds each video to it.
“Hold comments that mention 'giveaway' for review.”
It searches the comment threads on your channel for that term and sets the matching comments to held for review.
“Who subscribed to my channel recently?”
It lists your newest subscribers.
83 tools for YouTube
These tools are switched on when you connect. You can switch any of them off, or require your approval before it runs.
add_video_to_playlistChanges dataAdd a video to a playlist. Pass part='snippet' and snippet = {playlistId, resourceId: {kind: 'youtube#video', videoId}}.create_abuse_reportChanges dataCreate a new abuse report. Required: part. API summary: Inserts a new resource into this collection.create_banChanges dataCreate a new ban. Required: part. API summary: Inserts a new resource into this collection.create_bindChanges dataCreate a new bind. Required: id or part. API summary: Bind a broadcast to a stream.create_captionChanges dataCreate a new caption. Required: part. API summary: Inserts a new resource into this collection.create_channel_sectionChanges dataCreate a new channel section. Required: part. API summary: Inserts a new resource into this collection.create_cuepointChanges dataCreate a new cuepoint. API summary: Insert cuepoints in a broadcast.create_insertChanges dataCreate a new insert. API summary: Inserts a new resource into this collection.create_live_broadcastChanges dataCreate a new live broadcast. Required: part. API summary: Inserts a new stream for the authenticated user.create_live_streamChanges dataCreate a new live stream. Required: part. API summary: Inserts a new stream for the authenticated user.create_message_youtube_comments_insertChanges dataCreate a new message. Required: part. Search messages first to avoid duplicates. API summary: Inserts a new resource into this collection.create_message_youtube_live_broadcasts_transitionChanges dataCreate a new message. Required: broadcast status, id or part. Search messages first to avoid duplicates. API summary: Transition a broadcast to a given status.create_message_youtube_live_chat_messages_transitionChanges dataCreate a new message. Search messages first to avoid duplicates. API summary: Transition a durable chat event.create_moderatorChanges dataCreate a new moderator. Required: part. API summary: Inserts a new resource into this collection.create_playlistChanges dataCreate a playlist. Pass part='snippet,status', snippet.title, optional snippet.description and status.privacyStatus (public, unlisted, private).create_playlist_imageChanges dataCreate a new playlist image. API summary: Inserts a new resource into this collection.create_rateChanges dataCreate a new rate. Required: rating or id. API summary: Adds a like or dislike rating to a video or removes a rating from a video.create_report_abuseChanges dataCreate a new report abuse. API summary: Report abuse for a video.create_setChanges dataCreate a new set. Required: channel id. API summary: Allows upload of watermark image and setting it for a channel.create_set_youtube_thumbnails_setChanges dataCreate a new set. Required: video id. API summary: As this is not an insert in a strict sense (it supports uploading/setting of a thumbnail for multiple videos, which doesn't result in creati….create_subscriptionChanges dataCreate a new subscription. Required: part. API summary: Inserts a new resource into this collection.create_testChanges dataCreate a new test. Required: part. API summary: POST method.create_third_party_linkChanges dataCreate a new third party link. Required: part. API summary: Inserts a new resource into this collection.create_unsetChanges dataCreate a new unset. Required: channel id. API summary: Allows removal of channel watermark.create_videoChanges dataCreate a new video. Required: part. API summary: Inserts a new resource into this collection.delete_bansMoves moneyPermanently delete a ban. Financial or irreversible action; may require approval. API summary: Deletes a chat ban.delete_captionsMoves moneyPermanently delete a caption. Financial or irreversible action; may require approval. API summary: Deletes a resource.delete_channel_sectionsMoves moneyPermanently delete a channel section. Financial or irreversible action; may require approval. API summary: Deletes a resource.delete_commentMoves moneyDelete one of your channel's comments by id. This cannot be undone.delete_live_broadcastsMoves moneyPermanently delete a live broadcast. Financial or irreversible action; may require approval. API summary: Delete a given broadcast.delete_live_streamsMoves moneyPermanently delete a live stream. Financial or irreversible action; may require approval. API summary: Deletes an existing stream for the authenticated user.delete_messages_youtube_comments_deleteMoves moneyPermanently delete a message. Financial or irreversible action; may require approval. API summary: Deletes a resource.delete_moderatorsMoves moneyPermanently delete a moderator. Financial or irreversible action; may require approval. API summary: Deletes a chat moderator.delete_playlist_imagesMoves moneyPermanently delete a playlist image. Financial or irreversible action; may require approval. API summary: Deletes a resource.delete_playlistsMoves moneyPermanently delete a playlist. Financial or irreversible action; may require approval. API summary: Deletes a resource.delete_subscriptionsMoves moneyPermanently delete a subscription. Financial or irreversible action; may require approval. API summary: Deletes a resource.delete_third_party_linksMoves moneyPermanently delete a third party link. Financial or irreversible action; may require approval. API summary: Deletes a resource.delete_videosMoves moneyPermanently delete a video. Financial or irreversible action; may require approval. API summary: Deletes a resource.get_captionGet one caption by caption id. API summary: Downloads a caption track.get_my_channelGet channel details and statistics. Pass part='snippet,statistics,contentDetails' and mine=true for the connected channel, or id / for_handle for another.get_video_ratingGet one video. API summary: Retrieves the ratings that the authorized user gave to a list of specified videos.get_videosGet videos by id (comma-separated video IDs) with part='snippet,statistics,status', or chart='mostPopular' for trending.list_captionsList the caption tracks of a video by video_id with part='snippet'.list_channel_activityList recent channel activity (uploads, likes, playlist adds) with part='snippet,contentDetails' and mine=true or channel_id.list_channel_sectionsList channel sections. Optional filters: on behalf of content owner, id, mine, hl, part or channel id. API summary: Retrieves a list of resources, possibly filtered.list_comment_repliesList replies to a comment by parent_id with part='snippet'.list_comment_threadsList top-level comments with replies: part='snippet,replies' and video_id, or all_threads_related_to_channel_id for your whole channel. Filter by search_terms or moderation_status.list_i18n_languagesList i18n languages. Optional filters: part or hl. API summary: Retrieves a list of resources, possibly filtered.list_i18n_regionsList i18n regions. Optional filters: hl or part. API summary: Retrieves a list of resources, possibly filtered.list_live_broadcastsList live broadcasts. Optional filters: broadcast status, on behalf of content owner channel, part, id, broadcast type or mine. Results are paginated. API summary: Retrieve the list of broadcasts associated with the given channel.list_live_streamsList live streams. Optional filters: on behalf of content owner channel, on behalf of content owner, mine, id or part. Results are paginated. API summary: Retrieve the list of streams associated with the given channel.list_messages_youtube_comments_listList messages. Optional filters: id, text format, parent id or part. Results are paginated. API summary: Retrieves a list of resources, possibly filtered.list_messages_youtube_youtube_v3_live_chat_messages_streamList messages. Optional filters: profile image size, live chat id, hl or part. Results are paginated. API summary: Allows a user to load live chat through a server-streamed RPC.list_moderatorsList moderators. Optional filters: live chat id or part. Results are paginated. API summary: Retrieves a list of resources, possibly filtered.list_playlist_imagesList playlist images. Optional filters: part, on behalf of content owner channel, on behalf of content owner or parent. Results are paginated. API summary: Retrieves a list of resources, possibly filtered.list_playlist_itemsList the videos in a playlist by playlist_id with part='snippet,contentDetails'.list_playlistsList playlists: part='snippet,contentDetails' with mine=true for your own, or channel_id / id.list_subscriptionsList channel subscriptions: part='snippet' with mine=true for channels you follow, or my_recent_subscribers=true for your newest subscribers.list_subscriptions_youtube_subscriptions_listList subscriptions. Optional filters: channel id, part, order, my subscribers, for channel id or my recent subscribers. Results are paginated. API summary: Retrieves a list of resources, possibly filtered.list_super_chat_eventsList super chat events. Optional filters: hl or part. Results are paginated. API summary: Retrieves a list of resources, possibly filtered.list_third_party_linksList third party links. Optional filters: external channel id, type, linking token or part. API summary: Retrieves a list of resources, possibly filtered.list_video_abuse_report_reasonsList video abuse report reasons. Optional filters: hl or part. API summary: Retrieves a list of resources, possibly filtered.list_video_categoriesList video categories for a region_code (part='snippet'). Needed for categoryId when updating videos.list_video_trainabilitiesList video trainabilities. Optional filters: id. API summary: Returns the trainability status of a video.list_videos_batch_get_statsList videos batch get stats. Optional filters: on behalf of content owner, id or part. API summary: Retrieves a batch of VideoStat resources, possibly filtered.moderate_commentsChanges dataSet moderation_status (published, heldForReview, rejected) on comments by id (comma-separated) on your channel; ban_author also bans the commenter.post_commentChanges dataPost a new public top-level comment on a video. Pass part='snippet' and snippet = {videoId, topLevelComment: {snippet: {textOriginal}}}.remove_playlist_itemMoves moneyRemove one item from a playlist by its playlist item id (not the video ID). The video itself is not deleted.reply_to_commentChanges dataReply publicly to a comment. Pass part='snippet' and snippet = {parentId, textOriginal}. The reply is posted under your channel.search_usersSearch users by part, filter by member channel id, has access to level or mode. Use this to find existing users before creating a new user. Results are paginated. API summary: Retrieves a list of members that match the request criteria for a channel.search_videosSearch YouTube with q, part='snippet' and type='video'; set for_mine=true to search only your own uploads, or channel_id for one channel. Use order='date' for newest.submit_messageVisible to othersMark as spam a message. Has effects visible outside this system. API summary: Expresses the caller's opinion that one or more comments should be flagged as spam.update_captionsVisible to othersUpdate an existing caption. Has effects visible outside this system. API summary: Updates an existing resource.update_channel_sectionsVisible to othersUpdate an existing channel section. Has effects visible outside this system. API summary: Updates an existing resource.update_channelsVisible to othersUpdate an existing channel. Has effects visible outside this system. API summary: Updates an existing resource.update_live_broadcastsVisible to othersUpdate an existing live broadcast. Has effects visible outside this system. API summary: Updates an existing broadcast for the authenticated user.update_live_streamsVisible to othersUpdate an existing live stream. Has effects visible outside this system. API summary: Updates an existing stream for the authenticated user.update_messagesVisible to othersUpdate an existing message. Has effects visible outside this system. API summary: Updates an existing resource.update_playlistVisible to othersUpdate a playlist's title, description or privacy by id. Pass part='snippet,status' and the full snippet; missing fields are cleared.update_playlist_imagesVisible to othersUpdate an existing playlist image. Has effects visible outside this system. API summary: Updates an existing resource.update_productsVisible to othersUpdate an existing product. Has effects visible outside this system. API summary: Updates an existing resource.update_third_party_linksVisible to othersUpdate an existing third party link. Has effects visible outside this system. API summary: Updates an existing resource.update_videoVisible to othersUpdate a video's title, description, tags, category or privacy. Pass part='snippet,status', id and the full snippet (title and categoryId are required; missing fields are cleared).
Set up in three steps
- 1
Pick the app
Create a free HeyMyApps account and choose YouTube from the app list.
- 2
Paste your key
Paste the OAuth client ID and client secret from your own Google Cloud project, then sign in with Google once. In the Google Cloud console create a project and enable the YouTube Data API v3 (APIs & Services > Library). Set up the OAuth consent screen as Internal for Google Workspace, or as External and then click Publish app, because apps left in Testing get refresh tokens that expire after 7 days. Then go to Credentials > Create credentials > OAuth client ID > Web application, add the redirect URI https://heymyapps.com/oauth/callback and copy the client ID and secret. Because the app is your own and not verified by Google, Google shows a warning screen when you sign in. That is expected for your own app. HeyMyApps renews access automatically after that.
- 3
Add the link to your AI
You get a personal MCP link. Add it to Claude, ChatGPT or Cursor:
- Click your name, then Settings › Connectors › Add custom connector.
- Paste your link as the Remote MCP server URL.
- Switch it on from the + menu in a chat.
Questions
What can the AI do in YouTube?
It can read your channel, videos, statistics, playlists, comments, caption tracks, subscriptions and channel activity, and search YouTube or only your own uploads. It can update video details, create and update playlists, add and remove playlist items, reply to and post comments, and moderate or delete comments on your channel.
Does the AI see my YouTube credentials?
No. Your YouTube credentials are encrypted at rest and never shown to the AI. After you save them, they are not shown again, not even to you. The AI only sees the results of the tools it calls.
Can I control what the AI is allowed to do?
Yes. You choose which tools are switched on, so you can start with statistics and comments read-only. Replies and comments are public, deleting a comment cannot be undone, and moderation can ban a commenter, so those tools can require your approval before they run. Every tool call is logged.
Does it work with ChatGPT?
Yes. In ChatGPT go to Settings › Apps & Connectors › Advanced and turn on Developer mode, then add your HeyMyApps link. Developer mode needs a paid ChatGPT plan: Plus, Pro, Business or Enterprise. The same link also works in Claude (Settings › Connectors › Add custom connector), Cursor and other MCP clients.
What does it cost?
YouTube connects with OAuth, and OAuth connections need the HeyMyApps Pro plan or above. HeyMyApps also has a free plan with no credit card, but it does not include this connection. Paid plans bill per completed task. You also need your own Google account.
Can the AI upload videos?
No. The tools cover reading your channel and videos, updating video details, playlists, comments, caption tracks, subscriptions and activity. Uploading video files is not one of them, so you still upload in YouTube Studio. HeyMyApps is an independent service and is not affiliated with YouTube or Google.
Related integrations
Let your AI work in YouTube today.
Start free. Your key stays encrypted, and you decide what the AI may do.
Connect YouTube freeHeyMyApps is not affiliated with YouTube. Product names are trademarks of their owners.






