Skip to main content
Glama

youtube_set_comment_moderation_status

Destructive

Set a YouTube comment’s moderation status to held for review, published, or rejected using an approved preview. Optionally ban the author when rejecting, with elevated confirmation.

Instructions

Set an approved comment moderation status; banAuthor requires elevated intent.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "commentId": "<commentId>",
      "moderationStatus": "<moderationStatus>",
      "approvalId": "<approvalId>"
    },
    "name": "youtube_set_comment_moderation_status"
  }
}

Input Schema

NameRequiredDescriptionDefault
confirmNoMust be true to execute; set it only after youtube_approve approved this exact preview.
elevatedNoMust be true when banAuthor is true, after the user reviewed the ban.
banAuthorNoAlso ban the comment author; allowed only with rejected and needs elevated: true.
commentIdYesID of a comment on the selected channel, from youtube_list_channel_comment_threads or youtube_list_moderation_comments.
approvalIdYesApproval ID from the youtube_preflight_set_comment_moderation_status preview, after approving it with youtube_approve.
moderationStatusYesNew moderation status: heldForReview, published or rejected.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changedv0.3.1
    • addedInput schema / properties / approvalId / description
      Added value: +"Approval ID from the youtube_preflight_set_comment_moderation_status preview, after approving it with youtube_approve."
    • addedInput schema / properties / banAuthor / description
      Added value: +"Also ban the comment author; allowed only with rejected and needs elevated: true."
    • addedInput schema / properties / commentId / description
      Added value: +"ID of a comment on the selected channel, from youtube_list_channel_comment_threads or youtube_list_moderation_comments."
    • addedInput schema / properties / confirm / description
      Added value: +"Must be true to execute; set it only after youtube_approve approved this exact preview."
    • addedInput schema / properties / elevated / description
      Added value: +"Must be true when banAuthor is true, after the user reviewed the ban."
    • addedInput schema / properties / moderationStatus / description
      Added value: +"New moderation status: heldForReview, published or rejected."
  2. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, so the safety bar is lowered. The description adds a meaningful extra guardrail by tying banAuthor to elevated intent, but it does not say the status change is irreversible, what side effects banning has, or what the response contains.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tight sentence with the operation front-loaded and the riskiest caveat (banAuthor) placed second. Nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, multi-step mutation with no output schema, the description plus rich schema descriptions cover the key semantics. The only gap is not explicitly naming the required preflight/approve chain, which the approvalId description does supply.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all six parameters including confirm, approvalId and elevated are fully documented in the schema itself. The description's mention of banAuthor/elevated only restates the coupling already stated in the property descriptions, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Set ... comment moderation status') and adds a scope qualifier that the operation applies to an already-approved status. It does not name the sibling preflight tool it pairs with, but the word 'approved' signals the distinction from youtube_preflight_set_comment_moderation_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'approved comment moderation status' implies this is the execution step after a preflight-and-approve flow, and 'banAuthor requires elevated intent' sets a precondition. However, it never explicitly says 'use this only after youtube_preflight_... and youtube_approve' or names alternatives, leaving the routing to inference from the schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools