# YouTube Comment Manager

## Links

- Product page URL: https://www.agentpmt.com/marketplace/youtube-comment-manager
- Product markdown URL: https://www.agentpmt.com/marketplace/youtube-comment-manager?format=agent-md
- Product JSON URL: https://www.agentpmt.com/marketplace/youtube-comment-manager?format=agent-json

## Overview

- Product ID: 69f1516a5e0cf55b9b7e4e93
- Vendor: Apoth3osis
- Type: connector
- Unit type: request
- Price: 500 credits
- Categories: Automation, Social Media Management, Marketing Automation, Content Management & Publishing, Video & Streaming
- Generated at: 2026-05-27T16:03:15.821Z

### Page Description

Take control of every conversation happening on your YouTube channel. Triage the spam queue, ban repeat offenders, hold borderline comments for review, and reply to genuine fans without ever opening YouTube Studio. Pull comment threads by video, channel, or moderation status; search across all your comments for keywords; edit or delete your own posts; and moderate flagged comments in bulk. Whether you're a solo creator drowning in crypto bots after a viral upload, a community manager running comment moderation across a brand's channel, or an agent automating audience engagement at scale, this tool turns hours of comment triage into minutes of confident action — keeping your discussion section clean, your viewers engaged, and your channel's reputation protected.

### Agent Description

List YouTube comment threads on any video or across a connected channel, fetch full thread payloads with embedded replies, post top-level comments and replies as the connected account, edit or delete your own comments, and moderate the channel's comment queue — setting status to held for review, published, or rejected, with optional author bans for confirmed spammers.

## Details

### Details

Take control of every conversation happening on your YouTube channel. Triage the spam queue, ban repeat offenders, hold borderline comments for review, and reply to genuine fans without ever opening YouTube Studio. Pull comment threads by video, channel, or moderation status; search across all your comments for keywords; edit or delete your own posts; and moderate flagged comments in bulk. Whether you're a solo creator drowning in crypto bots after a viral upload, a community manager running comment moderation across a brand's channel, or an agent automating audience engagement at scale, this tool turns hours of comment triage into minutes of confident action — keeping your discussion section clean, your viewers engaged, and your channel's reputation protected.

### Actions

- `list_comment_threads` (5 credits): List YouTube comment threads by exactly one filter: video_id, channel_id, or thread_ids.
- `get_comment_threads` (5 credits): Fetch specific YouTube comment threads by ID.
- `create_top_level_comment` (5 credits): Create a top-level comment on a video.
- `list_replies` (5 credits): List replies to a top-level comment.
- `reply_to_comment` (5 credits): Reply to a top-level comment.
- `get_comments` (5 credits): Fetch specific comments by ID.
- `update_comment` (5 credits): Update an existing comment's text.
- `delete_comment` (5 credits): Delete a comment by ID.
- `moderate_comments` (5 credits): Set moderation status for one or more comments.

### Use Cases

Triage the held-for-review and likely-spam queues and ban repeat offenders, Reply to high-signal questions on a launch or tutorial video, Bulk-moderate comments awaiting review across an entire channel, Search a channel's comments for brand mentions or specific keywords, Edit or delete your own outdated comments and replies, Surface relevance-ranked threads for community managers, Reject crypto-spam and giveaway-scam comments and ban the accounts in one pass, Engage authentically with fans during launches, AMAs, and product reveals, Audit comment activity on a video before promoting it

### Workflows Using This Tool

No public workflows currently reference this product.

### Related Content

No related content is currently linked to this product.

## Integration Details

### DynamicMCP

- Setup page URL: https://www.agentpmt.com/dynamic-mcp
- Claude setup guide: https://www.agentpmt.com/dynamic-mcp?platform=claude#videos
- ChatGPT setup guide: https://www.agentpmt.com/dynamic-mcp?platform=chatgpt#videos
- Cursor setup guide: https://www.agentpmt.com/dynamic-mcp?platform=cursor#videos
- Windsurf setup guide: https://www.agentpmt.com/dynamic-mcp?platform=windsurf#videos

Use the local router for command-based MCP clients. It forwards requests to `https://api.agentpmt.com/mcp` and does not execute tools locally.

```bash
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

### REST API

The live page renders cURL, Python, JavaScript, and Node.js examples. Logged-in users see those examples prefilled with their own API and budget credentials.

- Purchase endpoint: https://api.agentpmt.com/products/purchase
- Authorization format: `Bearer <base64(apiKey:budgetKey)>`

```bash
curl -X POST "https://api.agentpmt.com/products/purchase" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eW91ci1hcGkta2V5LWhlcmU6eW91ci1idWRnZXQta2V5LWhlcmU=" \
  -d '{
    "product_id": "69f1516a5e0cf55b9b7e4e93",
    "parameters": {
      "action": "list_comment_threads"
    }
  }'
```

### Autonomous Agents

Autonomous agents can access this tool through AgentAddress credit balances or direct x402 payments. Use the Autonomous Agent API reference for endpoint shapes after choosing the access pattern below.

- Autonomous Agent API reference URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents
- Autonomous Agent API reference markdown URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents?format=agent-md
- Credit-Based Access Using AgentAddress: https://www.agentpmt.com/docs/autonomous-agents/credit-based-tool-usage-with-agentaddress
- AgentAddress is preferred for persistent file access, stored platform state, and maximum tool use ability across repeated calls.
- Direct x402 is for independent one-off tool calls that do not require shared files or stored platform state.
- Direct x402 public payments: USDC on Base, Arbitrum, Optimism, Polygon, and Avalanche.

### Schema

#### Credentials

These runtime credentials should be provided under `parameters._credentials` when required.

- Google OAuth (`google_oauth`, oauth_token, required)
  Help: Connect your Google account.
  Connection ID: 69616abea90ed54743f01957

#### Parameters

- Schema type: actions

```json
{
  "actions": {
    "list_comment_threads": {
      "description": "List YouTube comment threads by exactly one filter: video_id, channel_id, or thread_ids.",
      "properties": {
        "video_id": {
          "type": "string",
          "description": "YouTube video ID filter.",
          "required": false
        },
        "channel_id": {
          "type": "string",
          "description": "YouTube channel ID filter.",
          "required": false
        },
        "thread_ids": {
          "type": "array",
          "description": "Comment thread IDs filter.",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "include_replies": {
          "type": "boolean",
          "description": "Include replies in thread responses.",
          "required": false
        },
        "text_format": {
          "type": "string",
          "description": "Returned text format. Defaults to plainText.",
          "required": false,
          "enum": [
            "plainText",
            "html"
          ]
        },
        "moderation_status": {
          "type": "string",
          "description": "Moderation status filter for authorized requests.",
          "required": false,
          "enum": [
            "heldForReview",
            "likelySpam",
            "published"
          ]
        },
        "order": {
          "type": "string",
          "description": "Thread ordering.",
          "required": false,
          "enum": [
            "time",
            "relevance"
          ]
        },
        "search_terms": {
          "type": "string",
          "description": "Search terms for thread text.",
          "required": false
        },
        "max_results": {
          "type": "integer",
          "description": "Maximum results per page, 1-100.",
          "required": false
        },
        "page_token": {
          "type": "string",
          "description": "Pagination token.",
          "required": false
        }
      }
    },
    "get_comment_threads": {
      "description": "Fetch specific YouTube comment threads by ID.",
      "properties": {
        "thread_ids": {
          "type": "array",
          "description": "Comment thread IDs.",
          "required": true,
          "items": {
            "type": "string"
          }
        },
        "include_replies": {
          "type": "boolean",
          "description": "Include replies in thread responses.",
          "required": false
        },
        "text_format": {
          "type": "string",
          "description": "Returned text format. Defaults to plainText.",
          "required": false,
          "enum": [
            "plainText",
            "html"
          ]
        }
      }
    },
    "create_top_level_comment": {
      "description": "Create a top-level comment on a video.",
      "properties": {
        "channel_id": {
          "type": "string",
          "description": "YouTube channel ID.",
          "required": true
        },
        "video_id": {
          "type": "string",
          "description": "YouTube video ID.",
          "required": true
        },
        "text": {
          "type": "string",
          "description": "Comment text.",
          "required": true
        }
      }
    },
    "list_replies": {
      "description": "List replies to a top-level comment.",
      "properties": {
        "parent_comment_id": {
          "type": "string",
          "description": "Parent top-level comment ID.",
          "required": true
        },
        "text_format": {
          "type": "string",
          "description": "Returned text format. Defaults to plainText.",
          "required": false,
          "enum": [
            "plainText",
            "html"
          ]
        },
        "max_results": {
          "type": "integer",
          "description": "Maximum results per page, 1-100.",
          "required": false
        },
        "page_token": {
          "type": "string",
          "description": "Pagination token.",
          "required": false
        }
      }
    },
    "reply_to_comment": {
      "description": "Reply to a top-level comment.",
      "properties": {
        "parent_comment_id": {
          "type": "string",
          "description": "Parent top-level comment ID.",
          "required": true
        },
        "text": {
          "type": "string",
          "description": "Reply text.",
          "required": true
        }
      }
    },
    "get_comments": {
      "description": "Fetch specific comments by ID.",
      "properties": {
        "comment_ids": {
          "type": "array",
          "description": "YouTube comment IDs.",
          "required": true,
          "items": {
            "type": "string"
          }
        },
        "text_format": {
          "type": "string",
          "description": "Returned text format. Defaults to plainText.",
          "required": false,
          "enum": [
            "plainText",
            "html"
          ]
        }
      }
    },
    "update_comment": {
      "description": "Update an existing comment's text.",
      "properties": {
        "comment_id": {
          "type": "string",
          "description": "YouTube comment ID.",
          "required": true
        },
        "text": {
          "type": "string",
          "description": "Updated comment text.",
          "required": true
        }
      }
    },
    "delete_comment": {
      "description": "Delete a comment by ID.",
      "properties": {
        "comment_id": {
          "type": "string",
          "description": "YouTube comment ID.",
          "required": true
        }
      }
    },
    "moderate_comments": {
      "description": "Set moderation status for one or more comments.",
      "properties": {
        "comment_ids": {
          "type": "array",
          "description": "YouTube comment IDs.",
          "required": true,
          "items": {
            "type": "string"
          }
        },
        "moderation_status": {
          "type": "string",
          "description": "Moderation status to apply.",
          "required": true,
          "enum": [
            "heldForReview",
            "published",
            "rejected"
          ]
        },
        "ban_author": {
          "type": "boolean",
          "description": "Ban the author. Only valid when moderation_status is rejected.",
          "required": false
        }
      }
    }
  }
}
```

### Usage Instructions

# YouTube Comment Manager

Read, write, update, delete, and moderate YouTube comments and replies on the connected channel using the viewer's Google OAuth token.

## Required Connection

All actions except `get_instructions` require a connected Google account with YouTube scopes (`youtube.force-ssl`). The OAuth token is injected automatically by AgentPMT — do not pass `google_oauth` in your tool call.

## Actions

### `list_comment_threads`
List top-level comment threads. Provide **exactly one** of `video_id`, `channel_id`, or `thread_ids`.

Required (one of):
- `video_id` (string) — fetch threads on a single video
- `channel_id` (string) — fetch all threads across the channel's videos
- `thread_ids` (array of strings) — fetch specific threads by ID

Optional:
- `include_replies` (bool, default false) — embed reply comments in each thread
- `text_format` (`plainText` | `html`, default `plainText`)
- `moderation_status` (`heldForReview` | `likelySpam` | `published`, default `published`) — filter threads by moderation state on a video or channel you own/moderate. Use with `video_id` or `channel_id` (not with `thread_ids`); the held-for-review and likely-spam queues are only visible to the channel owner.
- `order` (`time` | `relevance`, default `time`)
- `search_terms` (string) — server-side text filter
- `max_results` (1-100, default 25)
- `page_token` (string) — from a prior response's `nextPageToken`

```json
{"action":"list_comment_threads","video_id":"dQw4w9WgXcQ","include_replies":true,"order":"relevance","max_results":50}
```

```json
{"action":"list_comment_threads","channel_id":"UCxxxxxxxxxxxxxxxxxxxxxx","moderation_status":"heldForReview","max_results":100}
```

### `get_comment_threads`
Fetch specific threads by ID. Use this after `list_comment_threads` to get richer payloads or refresh state.

Required:
- `thread_ids` (array of strings)

Optional:
- `include_replies` (bool)
- `text_format` (`plainText` | `html`)

```json
{"action":"get_comment_threads","thread_ids":["UgxAbc123","UgxDef456"],"include_replies":true}
```

### `create_top_level_comment`
Post a new top-level comment on a video as the connected account.

Required:
- `channel_id` (string) — the **viewer's** channel posting the comment, not the video owner's
- `video_id` (string)
- `text` (string, max 10000 chars)

```json
{"action":"create_top_level_comment","channel_id":"UCviewerChannel","video_id":"dQw4w9WgXcQ","text":"Great breakdown — the part on cohort retention was especially useful."}
```

### `list_replies`
List reply comments under a top-level comment.

Required:
- `parent_comment_id` (string) — the top-level comment ID

Optional:
- `text_format` (`plainText` | `html`)
- `max_results` (1-100, default 25)
- `page_token` (string)

```json
{"action":"list_replies","parent_comment_id":"UgxParent123","max_results":50}
```

### `reply_to_comment`
Reply to an existing top-level comment.

Required:
- `parent_comment_id` (string)
- `text` (string, max 10000 chars)

```json
{"action":"reply_to_comment","parent_comment_id":"UgxParent123","text":"Thanks for the question! The repo link is in the description, and I walk through the setup in the pinned comment."}
```

### `get_comments`
Fetch comments by ID. Useful for resolving the `text` of a reply or the snippet of a parent.

Required:
- `comment_ids` (array of strings)

Optional:
- `text_format` (`plainText` | `html`)

```json
{"action":"get_comments","comment_ids":["UgxComment1","UgxComment2"]}
```

### `update_comment`
Edit text on a comment owned by the connected account. You cannot edit other authors' comments.

Required:
- `comment_id` (string)
- `text` (string, max 10000 chars)

```json
{"action":"update_comment","comment_id":"UgxOwnedComment","text":"Edit: fixed the timestamp I referenced — the asyncio section starts at 12:04, not 10:40."}
```

### `delete_comment`
Permanently delete a comment owned by the connected account.

Required:
- `comment_id` (string)

```json
{"action":"delete_comment","comment_id":"UgxOwnedComment"}
```

### `moderate_comments`
Set moderation status for one or more comments on videos the connected account owns. Channel owners only.

Required:
- `comment_ids` (array of strings)
- `moderation_status` (`heldForReview` | `published` | `rejected`)

Optional:
- `ban_author` (bool, default false) — only valid with `moderation_status: "rejected"`. Bans the author from commenting on the channel going forward.

```json
{"action":"moderate_comments","comment_ids":["UgxSpam1","UgxSpam2"],"moderation_status":"rejected","ban_author":true}
```

```json
{"action":"moderate_comments","comment_ids":["UgxHeld1"],"moderation_status":"published"}
```

## Common Patterns

**Triage spam queue:**
1. `list_comment_threads` with `channel_id` and `moderation_status: "likelySpam"` to surface flagged threads
2. Inspect `text` and author; for legitimate comments call `moderate_comments` with `moderation_status: "published"`; for confirmed spam call `moderate_comments` with `moderation_status: "rejected"` and optionally `ban_author: true`

**Engage on a launch video:**
1. `list_comment_threads` with `video_id`, `order: "relevance"`, `include_replies: true`
2. For each high-signal thread, call `reply_to_comment` with `parent_comment_id` and the response text

**Audit owned comments:**
1. `list_comment_threads` filtered by `search_terms` matching your past content
2. `update_comment` to correct, or `delete_comment` to remove

## Pagination

`list_comment_threads` and `list_replies` return `nextPageToken` in the response when more results exist. Pass that value back as `page_token` to fetch the next page. Stop when `nextPageToken` is absent.

## Response Shape

All responses wrap the YouTube Data API v3 payload:

```json
{"action":"list_comment_threads","response":{"kind":"youtube#commentThreadListResponse","items":[...],"nextPageToken":"..."}}
```

Write actions return the created/updated resource:

```json
{"action":"reply_to_comment","comment":{"id":"UgxNewReply","snippet":{"textDisplay":"...","authorDisplayName":"..."}}}
```

`delete_comment` and `moderate_comments` return `{"deleted": true}` or `{"updated": true}` because the YouTube API returns 204 No Content on success.

## Permission Notes

- **Read** actions work on any public video.
- **Write** actions (`create_top_level_comment`, `reply_to_comment`) require the video to allow comments and the account to not be blocked.
- **Edit/Delete** actions only work on comments authored by the connected account.
- **Moderation** actions only work on videos owned by the connected channel. `moderate_comments` on a video you don't own returns 403.
- `ban_author` is irreversible from this tool — banned authors must be unbanned through YouTube Studio.

## Scope

This tool covers comments, threads, and moderation only. Use **YouTube Channel Management** for video uploads, thumbnails, captions, playlists, channel sections, and watermarks.

### Additional Product Content

## Manage and moderate your YouTube comments — without opening YouTube Studio

YouTube Comment Manager gives you and your AI agents complete control over the conversation on your channel. Read comment threads on any video or across your entire channel, reply to the comments that matter, edit or delete your own posts, and moderate your whole comment queue in bulk — hold borderline comments for review, publish the good ones, reject spam, and ban repeat offenders in a single pass. It runs on the official YouTube Data API v3 with your securely connected Google account.

## What you can do

1.  **Triage spam at scale.** Surface the held-for-review and likely-spam queues, then reject crypto-bot, giveaway-scam, and link-spam comments — and ban their authors — in bulk.
2.  **Reply where it counts.** Pull relevance-ranked threads on a launch or tutorial video and post thoughtful replies as your channel.
3.  **Moderate a whole channel.** Review and action comments awaiting moderation across every video, not just one upload.
4.  **Search your comments.** Find brand mentions, keywords, or past topics across your channel's discussion.
5.  **Clean up your own footprint.** Edit outdated comments or permanently delete the ones you no longer want live.

## Built for creators, community managers, and automation

### Solo creators

One viral upload can bury your comment section in bot spam overnight. Clear it in minutes and keep replying to the real fans driving your growth.

### Community & social media managers

Moderate comment sections across an entire brand channel from one place, with bulk actions and consistent policy enforcement on every video.

### AI agents & workflows

Every action is a single structured call, so autonomous agents can monitor, triage, and respond to YouTube comments as part of a larger audience-engagement pipeline.

## How it works

1.  Connect your Google account once through secure sign-in.
2.  List or search comment threads by video or by channel.
3.  Reply, edit, delete, or moderate — one comment at a time or hundreds in bulk.

## Secure by design

Connects through Google's official OAuth flow. Edits and deletes are limited to comments you authored, and moderation and author bans apply only to channels you own — so you stay in full control of your community.

### Frequently Asked Questions

#### Can an AI agent reply to my YouTube comments for me?

- Page URL: https://www.agentpmt.com/faq#faq-6a13b7e5675a75b67fa93bdd
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6a13b7e5675a75b67fa93bdd
- Tags: Product Specific

Yes. The tool posts top-level comments and replies as your connected account, so an agent can answer questions on a launch or tutorial video automatically or after your approval.

#### Can I ban repeat spammers?

- Page URL: https://www.agentpmt.com/faq#faq-6a13b7e5675a75b67fa93bdf
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6a13b7e5675a75b67fa93bdf
- Tags: Product Specific

Yes. When you reject a comment you can also ban its author in the same action, preventing them from commenting on your channel again. Bans can be reversed later from YouTube Studio if you change your mind.

#### Can I bulk-delete or reject spam comments on my YouTube channel?

- Page URL: https://www.agentpmt.com/faq#faq-6a13b7e5675a75b67fa93bdc
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6a13b7e5675a75b67fa93bdc
- Tags: Product Specific

Yes. You can reject many comments in a single moderation call and optionally ban their authors at the same time, so clearing a flood of bot spam takes one pass instead of hundreds of manual clicks in YouTube Studio.

#### Can I edit or delete comments I already posted?

- Page URL: https://www.agentpmt.com/faq#faq-6a13b7e5675a75b67fa93be0
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6a13b7e5675a75b67fa93be0
- Tags: Product Specific

Yes — you can update the text of, or permanently delete, any comment your connected account authored. You can't edit other people's comments, but as the channel owner you can moderate them.

#### Does it work across my entire channel or just one video?

- Page URL: https://www.agentpmt.com/faq#faq-6a13b7e5675a75b67fa93bde
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6a13b7e5675a75b67fa93bde
- Tags: Product Specific

Both. You can pull comment threads on a single video or across every video on your channel, including the held-for-review and likely-spam queues that only the channel owner can see.

#### What do I need to get started?

- Page URL: https://www.agentpmt.com/faq#faq-6a13b7e5675a75b67fa93be2
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6a13b7e5675a75b67fa93be2
- Tags: Product Specific

Just connect your Google account through the secure sign-in flow. Reading public comments works immediately; replying, editing, and moderating use your connected account's permissions.

#### Will it hold borderline comments instead of deleting them?

- Page URL: https://www.agentpmt.com/faq#faq-6a13b7e5675a75b67fa93be1
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6a13b7e5675a75b67fa93be1
- Tags: Product Specific

Yes. You can set comments to held-for-review or publish them, giving you a moderation step between 'approve' and 'reject' for anything that needs a closer look.

### Dependencies

This product has no public dependency products.