Skip to main content
Glama

YouTube MCP Server

A comprehensive Model Context Protocol server for the YouTube Data API v3, Analytics API, and Reporting API. Gives AI assistants full access to your YouTube channel — analytics, video management, comments, and more.

40 tools covering:

  • Channel & video data

  • YouTube Analytics (performance, audience, retention, revenue)

  • Video publishing & playlist management

  • Transcript extraction

  • YouTube SEO (search suggestions, trending)

  • Comments

  • Bulk reporting

Why This Server?

Existing YouTube MCP servers focus narrowly on transcript scraping or basic search. This server covers three YouTube APIs and is the only open-source MCP server that provides:

  • YouTube Analytics API — channel performance, top videos/Shorts, audience retention curves, traffic sources, demographics, revenue, day-of-week analysis

  • YouTube Reporting API — schedule and download bulk CSV reports

  • Full Data API coverage — not just read, but also upload videos, manage playlists, post comments, set thumbnails

  • YouTube SEO tools — autocomplete suggestions, trending videos, category discovery

  • Dual transcript strategy — official captions API for your own videos, youtube-transcript-api fallback for any public video

  • Quota tracking — client-side tracking with hard-fail protection so you don't silently exhaust your daily quota

Feature

This server

Others

Analytics API (watch time, retention, CTR)

Yes

No

Reporting API (bulk CSV exports)

Yes

No

Video upload & management

Yes

Rare

Playlist management

Yes

Rare

Comments (read + write)

Yes

No

SEO / trending / suggestions

Yes

No

Transcript extraction

Yes

Yes

Quota tracking

Yes

No

Total tools

40

1-5

Related MCP server: MCP YouTube Intelligence

Prerequisites

  • Python 3.11+

  • A Google Cloud project with YouTube APIs enabled

  • OAuth 2.0 credentials

Google Cloud Setup

1. Create a Google Cloud Project

  1. Go to Google Cloud Console

  2. Create a new project (or use an existing one)

2. Enable APIs

Enable all three APIs in APIs & Services > Library:

  • YouTube Data API v3

  • YouTube Analytics API

  • YouTube Reporting API

  1. Go to APIs & Services > OAuth consent screen

  2. Set User Type to External

  3. Fill in the app name and required fields

  4. Add the Google account that owns your YouTube channel as a test user

Important: You must sign in with the Google account that owns the YouTube channel, not a manager. Only the owner account can access Analytics data.

4. Create OAuth Credentials

  1. Go to APIs & Services > Credentials

  2. Click Create Credentials > OAuth client ID

  3. Application type: Desktop app

  4. Download the JSON file

  5. Save it as ~/.youtube-mcp/client_secret.json

Alternatively, set the YOUTUBE_MCP_CLIENT_SECRET environment variable to the path of your credentials file.

Installation

pip install youtube-studio-mcp

Or with uv:

uv pip install youtube-studio-mcp

MCP Client Configuration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "youtube": {
      "command": "youtube-studio-mcp"
    }
  }
}

Claude Code

Add to your MCP settings:

{
  "mcpServers": {
    "youtube": {
      "command": "youtube-studio-mcp"
    }
  }
}

With environment variables

{
  "mcpServers": {
    "youtube": {
      "command": "youtube-studio-mcp",
      "env": {
        "YOUTUBE_MCP_CLIENT_SECRET": "/path/to/client_secret.json",
        "YOUTUBE_API_KEY": "your-api-key-for-public-data"
      }
    }
  }
}

First Run

On first use, the server will open a browser window for Google OAuth consent. Sign in with the account that owns your YouTube channel and grant the requested permissions. The token is saved to ~/.youtube-mcp/token.json and auto-refreshes.

Tools Reference

Auth & Setup (2 tools)

Tool

Description

youtube_auth

Initiate OAuth 2.0 flow

youtube_auth_status

Check auth state and quota usage

Channel & Video (3 tools)

Tool

Description

youtube_get_channel

Get channel details by ID, handle, or mine=True

youtube_list_videos

List videos from a channel or playlist

youtube_get_video

Get detailed video metadata and stats

Search & SEO (4 tools)

Tool

Description

youtube_search

Search YouTube (100 quota units per call)

youtube_search_suggestions

Get autocomplete suggestions (no quota cost)

youtube_trending

Get trending videos by region/category

youtube_get_categories

List video categories for a region

Transcripts (2 tools)

Tool

Description

youtube_get_transcript

Get video transcript (official API or scraping fallback)

youtube_list_captions

List caption tracks for own videos

Analytics — Performance (4 tools)

Tool

Description

youtube_analytics_overview

Channel summary (views, watch time, subs, likes)

youtube_analytics_top_videos

Top videos by views (excludes Shorts)

youtube_analytics_top_shorts

Top Shorts by views

youtube_analytics_video_detail

Daily metrics for a specific video

Analytics — Audience (3 tools)

Tool

Description

youtube_analytics_traffic_sources

Traffic source breakdown

youtube_analytics_demographics

Age and gender breakdown

youtube_analytics_geography

Views by country

Analytics — Schedule & Reach (3 tools)

Tool

Description

youtube_analytics_daily

Daily performance over time

youtube_analytics_day_of_week

Average performance by weekday

youtube_analytics_content_type_breakdown

Shorts vs long-form vs live comparison

Analytics — Revenue & Retention (3 tools)

Tool

Description

youtube_analytics_revenue

Revenue breakdown (requires YouTube Partner Program)

youtube_analytics_revenue_by_video

Per-video revenue

youtube_analytics_retention

Audience retention curve for a video

Publishing (4 tools)

Tool

Description

youtube_upload_video

Upload a video (1,600 quota units)

youtube_update_video

Update video metadata

youtube_set_thumbnail

Upload custom thumbnail

youtube_delete_video

Delete a video

Playlists (4 tools)

Tool

Description

youtube_list_playlists

List playlists for a channel

youtube_create_playlist

Create a new playlist

youtube_add_to_playlist

Add a video to a playlist

youtube_remove_from_playlist

Remove a video from a playlist

Comments (3 tools)

Tool

Description

youtube_list_comments

List comments on a video

youtube_post_comment

Post a top-level comment

youtube_reply_to_comment

Reply to a comment

Bulk Reporting (5 tools)

Tool

Description

youtube_reporting_list_types

List available report types

youtube_reporting_create_job

Schedule a daily report job

youtube_reporting_list_jobs

List active reporting jobs

youtube_reporting_list_reports

List generated reports for a job

youtube_reporting_download

Download a report CSV

Quota Management

The YouTube Data API v3 has a default daily quota of 10,000 units. This server tracks quota usage client-side and hard-fails when the quota is exhausted.

Key costs:

  • Most read operations: 1 unit

  • Search: 100 units

  • Write operations: 50 units

  • Video upload: 1,600 units

Use youtube_auth_status to check current quota usage.

Environment Variables

Variable

Description

YOUTUBE_MCP_CLIENT_SECRET

Path to client_secret.json

YOUTUBE_MCP_CONFIG_DIR

Config directory (default: ~/.youtube-mcp)

YOUTUBE_API_KEY

API key for public-only operations

Development

git clone https://github.com/pauling-ai/youtube-studio-mcp.git
cd youtube-studio-mcp
uv venv && uv pip install -e ".[dev]"
.venv/bin/python -m pytest tests/ -v

License

MIT

Available Tools

40 tools
youtube_add_to_playlistB

Add a video to a playlist.

Args: playlist_id: Playlist ID to add the video to video_id: Video ID to add position: Position in the playlist (0-based). Defaults to end.

ParametersJSON Schema
NameRequiredDescriptionDefault
positionNo
video_idYes
playlist_idYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It mentions the addition of a video but omits any side effects (e.g., what happens if the video is already in the playlist), authorization requirements, or return value. The 'Args' section adds basic parameter purpose but not deeper behavior.

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

Conciseness4/5

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

The description is concise and well-structured: a one-sentence summary followed by a clear parameter list. There is no redundant text, and the essential information is front-loaded. It could be slightly more informative, but it earns a high score for efficiency.

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

Completeness2/5

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

For a mutation tool with no annotations and no output schema, the description is incomplete. It does not provide prerequisites (e.g., authenticated playlist owner), error conditions, or the result of the operation. The sibling context includes many read/analytics tools, so this write action needs more contextual safety notes, which are absent.

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 description coverage is 0%, so the description's 'Args' section is the only source of parameter meaning. It explains each parameter with a brief line, and clarifies that 'position' is 0-based and defaults to end. However, it does not elaborate on valid values for position (e.g., negative, out-of-range) or how null is interpreted beyond the schema default.

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

Purpose5/5

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

The description clearly states the action: 'Add a video to a playlist.' It uses a specific verb ('Add') and resource ('video to playlist'), which immediately distinguishes it from sibling tools like 'remove_from_playlist' or 'create_playlist'. No ambiguity.

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

Usage Guidelines2/5

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

There is no explicit usage guidance. It does not mention when to use this tool versus alternatives, prerequisites (e.g., authentication, existing playlist), or exclusion scenarios. The statement is purely the action itself with no contextual direction.

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

youtube_analytics_content_type_breakdownA

Compare performance of Shorts vs long-form videos vs live streams.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo

TDQS

A3.8/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It provides defaults for the date arguments but does not disclose the return format, what metrics constitute 'performance,' whether authentication is required, or whether this is a read-only operation. Minimal behavioral context.

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?

The description is two sentences plus a compact Args block. It front-loads the purpose and provides parameter details efficiently. No fluff, every sentence contributes.

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

Completeness3/5

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

The tool is simple with two optional parameters, and the description covers purpose and parameters. However, it lacks any indication of the output structure or the specific metrics returned (e.g., views, watch time), and with no output schema, the description should provide more context for an agent to fully understand the tool's invocation results.

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

Parameters5/5

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

The schema has 0% description coverage, but the description fully documents both parameters with format (YYYY-MM-DD) and defaults (28 days ago and today). It also clarifies the semantic distinction between start_date and end_date, which the schema relies on the agent to understand.

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

Purpose5/5

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

The description opens with a specific verb 'Compare' and a precise resource 'Shorts vs long-form videos vs live streams,' clearly distinguishing it from sibling analytics tools like overview or top_videos. The tool name reinforces the content-type breakdown purpose.

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 description implies a clear use case (comparing content-type performance) but does not explicitly name alternatives or state when not to use it. Sibling tools like youtube_analytics_overview or top_videos are not mentioned, so the agent must infer from the tool name.

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

youtube_analytics_dailyA

Get daily performance metrics over time.

Useful for spotting trends and finding optimal posting days. Returns one row per day with views, watch time, subs, likes, shares.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations provided, the description carries the full behavioral burden. It discloses the return format (one row per day with specific metrics) and default date ranges, which are key behavioral traits. It does not mention edge cases like missing days or timezone handling, but for a read-only analytics tool this is sufficient.

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?

The description is concise and front-loaded with the main purpose, followed by a clear 'Args' section. Every sentence adds value, with no filler or repetition of schema information.

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 simple two-parameter read tool with no output schema, the description provides enough context: what it returns, what the parameters do, and how they default. It lacks details on result ordering or handling of days without data, but the overall picture is complete enough for an agent to invoke it correctly.

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

Parameters5/5

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

The input schema only provides parameter titles with no descriptions, so schema coverage is 0%. The description compensates fully by giving the date format (YYYY-MM-DD) and effective defaults (28 days ago, today) for both parameters, adding critical meaning beyond the schema.

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

Purpose5/5

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

The description clearly states the tool's function: 'Get daily performance metrics over time' with 'one row per day' output. It distinguishes itself from sibling analytics tools by emphasizing daily granularity and trend spotting, which is unique among the listed analytics siblings.

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

Usage Guidelines4/5

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

It provides explicit use cases ('spotting trends and finding optimal posting days') that indicate when this tool is appropriate. It does not explicitly mention when not to use it or name alternatives, but the context is clear enough for an agent to select it over the many other analytics tools.

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

youtube_analytics_day_of_weekA

Get aggregated performance by day of week.

Fetches daily data and aggregates by weekday to show which days perform best. Useful for scheduling uploads.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 90 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the internal behavior ('Fetches daily data and aggregates by weekday') and provides defaults for the date parameters. The read-only nature is implied by 'Get,' but it doesn't explicitly state auth requirements or the exact metrics returned.

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?

The description is succinct, with a front-loaded summary, a relevant use case, and a clean argument list. Every sentence earns its place, with no redundant or verbose content.

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

Completeness3/5

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

The tool has no output schema, so the description should explain what the agent will receive, but 'performance' is vague and doesn't specify which metrics (e.g., views, watch time) are aggregated. The description covers the core functionality and params but lacks details about return values and potential edge cases, making completeness only average.

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

Parameters5/5

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

The description adds rich meaning beyond the schema: it specifies the YYYY-MM-DD format and the defaults (90 days ago and today) for start_date and end_date. Since the schema coverage is 0%, this fully compensates and gives the agent necessary usage details.

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

Purpose5/5

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

The description uses a specific verb ('Get') and clear resource ('aggregated performance by day of week') and explains the purpose with 'show which days perform best.' This clearly distinguishes it from other analytics tools like youtube_analytics_daily or youtube_analytics_overview.

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

Usage Guidelines4/5

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

The description provides a clear use case ('Useful for scheduling uploads') that indicates when to use the tool. However, it doesn't explicitly mention alternatives or when not to use it, so it falls short of a 5.

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

youtube_analytics_demographicsA

Get audience demographics — age group and gender breakdown.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo

TDQS

A4.1/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the data returned (age/gender breakdown) and default date ranges, but it does not mention authentication requirements, whether it applies to the authenticated channel, or any limitations on data availability. It adds some context beyond the schema but lacks richer behavioral detail.

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?

The description is succinct and well-structured. The first sentence states the purpose clearly, and the Args section is concise and information-dense. No wasted words or redundant content.

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 simple tool with two optional parameters and no output schema, the description is mostly complete. It explains the purpose and parameter defaults. However, it does not explicitly state that it operates on the authenticated channel's analytics or requires prior auth, which would be useful given the sibling auth tools. Still, the core functionality is clear.

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

Parameters5/5

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

Schema coverage is 0%, so the description fully compensates by documenting both parameters: start_date with format and default (28 days ago), end_date with format and default (today). This adds meaningful semantics that the schema lacks, making the parameters unambiguous.

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

Purpose5/5

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

The description clearly states the tool's function: 'Get audience demographics — age group and gender breakdown.' This identifies a specific resource (audience demographics) and the exact dimensions, distinguishing it from sibling analytics tools like geography or content type breakdown.

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 description implies usage through its specificity but does not explicitly state when to use this tool versus other analytics tools. It provides parameter defaults but no exclusions or alternatives, leaving the agent to infer the appropriate context from the tool name and siblings.

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

youtube_analytics_geographyA

Get views by country.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today. max_results: Number of countries to return.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo
max_resultsNo

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It clearly states it returns views by country. However, it does not describe the output format or any constraints (e.g., whether results are sorted, if auth is required), which limits transparency.

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?

The description is concise, using a one-sentence summary plus an args list. Every sentence adds value, with no filler.

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

Completeness3/5

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

The description lacks an output schema and does not describe the return structure. It mentions 'views by country' but not the response format or whether it returns aggregated data, which is a gap given the absence of output schema.

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

Parameters5/5

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

The description provides semantic explanations for all three parameters: start_date, end_date, and max_results, including default values and units. This fully compensates for the 0% schema description coverage.

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

Purpose5/5

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

The description states 'Get views by country', which is a specific verb+resource that clearly indicates geographic view analytics. This distinguishes it from sibling tools like youtube_analytics_traffic_sources or youtube_analytics_demographics.

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 description does not mention when to prefer this tool over other analytics tools, nor any exclusions. The use case is implied by the tool name (geography) but no explicit alternative guidance is provided.

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

youtube_analytics_overviewA

Get channel-level analytics summary.

Returns views, watch time, subscribers gained/lost, likes, comments, and shares for the date range.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the returned metrics (views, watch time, subscribers, etc.) and date range defaults, which is beneficial. However, it does not state whether the operation is read-only, whether authentication is required, or how invalid dates/edge cases are handled. For a read-only analytics tool, this is decent but not comprehensive.

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?

The description is concise and well-structured: a clear purpose statement, followed by the return metrics, and then a straightforward parameter explanation. Every sentence earns its place with no redundancy or fluff.

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?

Given the simple scope (two optional params, no output schema), the description is fairly complete. It lists the return metrics and parameter defaults, but the lack of an output schema means it could benefit from describing the structure of the summary (e.g., is it a single object with keys?). However, the metric list mitigates this, and the tool is simple enough that this is sufficient.

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

Parameters4/5

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

Schema coverage is 0%, but the description adds meaning by specifying the format (YYYY-MM-DD) and default values for both start_date and end_date. This goes beyond the bare schema definition of string/null and helps the agent construct valid inputs.

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

Purpose5/5

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

The description begins with 'Get channel-level analytics summary', which is a specific verb+resource construction. It clearly distinguishes itself from sibling analytics tools by focusing on the overview rather than specific dimensions (traffic, demographics, etc.) and lists the specific metrics returned.

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 description implies usage through 'channel-level' and 'summary', but does not explicitly state when to use this tool versus alternatives like youtube_analytics_top_videos or youtube_analytics_traffic_sources. No exclusions or alternative guidance is provided, making it adequate but incomplete.

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

youtube_analytics_retentionA

Get audience retention curve for a specific video.

Returns 100 data points showing what percentage of viewers are still watching at each point in the video. Also includes relative retention compared to similar-length videos on YouTube.

Args: video_id: YouTube video ID start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
video_idYes
start_dateNo

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations provided, the description carries the burden of disclosing behavior. It explicitly states the output: 100 data points, percentage of viewers still watching, and relative retention compared to similar videos. This goes beyond the schema, though it does not mention authentication requirements or error behavior, which could be relevant given the sibling youtube_auth tool.

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?

The description is concise and well-structured: a one-sentence purpose statement, followed by a clear explanation of the return payload, then a list of arguments with formats and defaults. Every sentence provides value without fluff, and the most important information is front-loaded.

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?

Given the tool's simplicity (3 params, no output schema), the description covers the core aspects: what it does, what it returns, and parameter details. It lacks information on prerequisites like authentication or how missing/invalid data is handled, but for a read-only analytics fetch, the description is largely sufficient and complete.

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

Parameters5/5

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

The schema has 0% description coverage, but the description fully compensates by defining every parameter: video_id as 'YouTube video ID', start_date with format 'YYYY-MM-DD' and default of 28 days ago, and end_date with format and default of today. This adds essential meaning beyond the raw schema, which only lists names and types.

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

Purpose5/5

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

The description starts with 'Get audience retention curve for a specific video', which clearly states the action (get), the resource (audience retention curve), and the scope (specific video). This distinguishes it from sibling analytics tools like overview, top_videos, and video_detail, making its function unambiguous.

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

Usage Guidelines4/5

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

The description provides clear context that this is for a specific video's retention data, which indicates when to use it. However, it does not explicitly mention when not to use it or point to alternative tools, such as youtube_analytics_video_detail for other video metrics. The context is strong but exclusions are absent.

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

youtube_analytics_revenueA

Get revenue breakdown.

Requires the channel to be in the YouTube Partner Program (monetized). Returns estimated revenue, ad revenue, and YouTube Premium revenue.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo

TDQS

A4.3/5.0
Behavior3/5

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

With no annotations, the description carries the burden of disclosure. It mentions the monetization prerequisite and the types of revenue returned, but does not describe error behavior, API response shape, or any side effects. This is adequate but not comprehensive.

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?

The description is compact and well-structured: a one-line summary, a prerequisite, return metrics, and Args section. Every sentence adds value without redundancy.

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 simple tool with two optional params and no output schema, the description covers the key aspects: what it returns, prerequisites, and date defaults. It lacks detail on edge cases like invalid dates or missing data, but overall it is sufficiently complete.

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

Parameters5/5

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

The schema has no descriptions for parameters, so the description fully compensates. It specifies both start_date and end_date with format (YYYY-MM-DD) and default values (28 days ago and today), giving clear semantic meaning.

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

Purpose5/5

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

The description states 'Get revenue breakdown' with specific returned metrics (estimated revenue, ad revenue, YouTube Premium revenue). This clearly identifies the tool's purpose and distinguishes it from the sibling youtube_analytics_revenue_by_video.

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

Usage Guidelines4/5

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

The description provides a clear prerequisite: the channel must be in the YouTube Partner Program. This is useful context for when to use the tool, though it does not explicitly mention alternatives or when not to use it.

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

youtube_analytics_revenue_by_videoA

Get revenue per video, sorted by highest revenue.

Requires the channel to be in the YouTube Partner Program.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today. max_results: Number of videos to return (max 200).

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo
max_resultsNo

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It includes the Partner Program requirement and the sorting behavior, but it omits other useful context such as authentication needs (e.g., requiring youtube_auth), currency/unit of revenue, or whether only monetized videos are included. This is a notable gap for a tool without annotations.

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?

The description is concise, with a clear first sentence stating the purpose, a short prerequisite line, and a tidy Args list. Every sentence earns its place without unnecessary verbosity or repetition of schema information.

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

Completeness3/5

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

For a tool with no output schema, the description does not explain the return format (e.g., video IDs, titles, revenue values, or currency). It also does not distinguish itself from similar analytics tools regarding when to choose this over youtube_analytics_top_videos or youtube_analytics_revenue. While the purview is clear, this lack of return information limits completeness.

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

Parameters5/5

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

The description's Args section adds significant meaning beyond the schema. It explains date formats (YYYY-MM-DD), defaults (28 days ago, today), and the max limit for max_results, none of which are in the schema descriptions (coverage 0%). The schema only provides titles and defaults, so this compensation is essential and well done.

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

Purpose5/5

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

The description clearly states the tool's function with a specific verb ('Get') and resource ('revenue per video'), and specifies the sort order ('sorted by highest revenue'). This distinguishes it from sibling analytics tools like youtube_analytics_top_videos (which likely ranks by views) and youtube_analytics_revenue (which focuses on aggregate revenue).

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

Usage Guidelines4/5

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

The description gives a clear prerequisite: the channel must be in the YouTube Partner Program. This is essential context for when the tool is applicable. However, it does not explicitly mention alternatives or when not to use it, which is a minor gap given the many sibling analytics tools.

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

youtube_analytics_top_shortsA

Get top-performing Shorts by views.

Returns per-Short metrics sorted by view count.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today. max_results: Number of Shorts to return (max 200).

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo
max_resultsNo

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It discloses that the tool returns per-Short metrics sorted by view count and provides default date range details. However, it does not mention authentication requirements, rate limits, or specify which metrics are included beyond views, leaving gaps in transparency.

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?

The description is succinct and well-structured: a one-sentence purpose, a one-sentence return summary, and an Args list with clear definitions. Every sentence provides value; there is no fluff or unnecessary repetition.

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

Completeness3/5

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

The description covers the basics but lacks details that are important given no output schema or annotations. It does not list the specific metrics returned (only 'per-Short metrics'), nor does it mention authentication prerequisites or any channel-specific requirements. This leaves uncertainty for an agent deciding whether to use the tool.

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

Parameters4/5

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

Schema coverage is 0%, so the description must add meaning to parameters. It does so effectively by explaining each parameter: start_date and end_date with format (YYYY-MM-DD) and defaults, and max_results with a max limit of 200. This goes beyond the bare schema and compensates well.

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

Purpose5/5

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

The description clearly states the tool's function with a specific verb and resource: 'Get top-performing Shorts by views.' This distinguishes it from sibling tools like top_videos or other analytics tools. The additional line about returning per-Short metrics sorted by view count reinforces the purpose.

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?

Usage context is implied by the tool's name and purpose (for retrieving top Shorts), but there is no explicit guidance about when to use this tool versus alternatives like top_videos. No prerequisites, exclusions, or alternative recommendations are provided.

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

youtube_analytics_top_videosA

Get top-performing videos by views.

Returns per-video metrics sorted by view count, excluding Shorts.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today. max_results: Number of videos to return (max 200).

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo
max_resultsNo

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations provided, the description carries the transparency burden. It discloses key behavior: returns per-video metrics, sorted by view count, excludes Shorts, and it also documents default date ranges and the max result cap. It does not mention authentication or rate limits, but for a read-only analytics tool this is reasonably transparent.

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?

The description is front-loaded with a one-sentence purpose, then a concise return-behavior line, followed by a compact Args list. Every sentence adds useful information, with no filler or redundancy.

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?

Given the tool has three optional parameters and no output schema, the description covers parameters, defaults, sorting behavior, and Shorts exclusion. It falls slightly short of a 5 because it does not enumerate the exact per-video metrics returned or mention authentication prerequisites, but it is largely complete for this purpose.

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

Parameters5/5

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

Schema description coverage is 0%, so the description fully compensates. It explains each parameter: start_date with format and default, end_date with default, and max_results with a maximum of 200. This adds meaning well beyond the bare schema types and defaults.

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

Purpose5/5

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

The description opens with 'Get top-performing videos by views,' which is a specific verb plus resource plus a clear ranking criterion. It further distinguishes from siblings by explicitly excluding Shorts, making the tool's scope unambiguous.

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 description implies use for view-based ranking of long-form videos, and the exclusion of Shorts hints at when not to use it. However, it never explicitly names alternatives like youtube_analytics_top_shorts or lists conditions for choosing this tool over others, so guidance is only implied.

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

youtube_analytics_traffic_sourcesA

Get traffic source breakdown — how viewers find your content.

Shows views from search, suggested, browse, external, etc.

Args: start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today. video_id: Optional video ID to filter to a specific video.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
video_idNo
start_dateNo

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden for behavioral disclosure. It does explain that the tool returns views by traffic source, but it does not mention required authentication, data granularity, limitations, or response format. This is adequate but leaves gaps.

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?

The description is concise and well-structured: a one-sentence summary, a supplementary line about content, and a clean args list. No fluff, and the main purpose is front-loaded.

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?

The tool is simple with three optional parameters and no output schema. The description covers the purpose and parameters well, though it does not detail the exact output structure or metrics beyond 'views'. Overall it is reasonably complete for the tool's complexity.

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

Parameters4/5

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

All three parameters (start_date, end_date, video_id) are described with formats, defaults, and optionality, which is valuable given the schema has no per-parameter descriptions. This adds meaning beyond the raw property names.

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

Purpose5/5

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

The description clearly states the tool's function with a specific verb 'Get' and resource 'traffic source breakdown'. It lists example traffic sources (search, suggested, browse, external) and distinguishes it from sibling analytics tools like demographics or geography.

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 description implies usage for analyzing how viewers discover content, but does not explicitly state when to use it over other analytics tools or mention any exclusions. No alternative tools are named, so guidance is only implicit.

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

youtube_analytics_video_detailA

Get detailed analytics for a specific video over time.

Returns daily metrics for the specified video.

Args: video_id: YouTube video ID start_date: Start date (YYYY-MM-DD). Defaults to 28 days ago. end_date: End date (YYYY-MM-DD). Defaults to today.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNo
video_idYes
start_dateNo

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses that daily metrics are returned and documents default date behavior, but it omits authorization requirements, error handling, and specifics about the metrics provided. This is adequate but shallow for a data-retrieval tool.

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?

The description is concise: one intro sentence, one return-value sentence, and a clearly formatted Args block. Every line adds value and the structure directly mirrors the parameter schema, making it easy to parse.

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

Completeness2/5

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

There is no output schema, so the description must explain return values, but it only says 'daily metrics' and 'detailed analytics' without listing the actual metric fields (e.g., views, watch time, audience retention). It also fails to mention whether authentication is required, leaving important context gaps for an analytics tool.

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

Parameters4/5

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

Schema description coverage is 0%, and the description compensates well by documenting all three parameters: video_id is a YouTube video ID, start_date uses YYYY-MM-DD and defaults to 28 days ago, and end_date uses YYYY-MM-DD and defaults to today. This provides essential formatting and default context missing from the schema.

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?

The description clearly states the tool's function: 'Get detailed analytics for a specific video over time' and even specifies the return format as 'daily metrics.' It distinguishes from sibling analytics tools by targeting a single video with a time range, though 'detailed analytics' is somewhat vague given the many analytics siblings.

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 description implies usage for per-video time-series analytics via 'specific video over time,' but it does not explicitly explain when to choose this tool over alternatives like youtube_analytics_overview or youtube_analytics_retention. No exclusions or alternative recommendations are provided.

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

youtube_authA

Initiate OAuth 2.0 authentication flow.

Opens a browser window for Google OAuth consent. Required before using any tools that access private channel data or analytics.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses a key side effect (opens a browser window) but does not elaborate on the interactive nature, potential blocking behavior, token storage, or failure modes. This is partially transparent but lacks critical operational detail.

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?

The description is two short sentences, front-loaded with the main action, and every sentence contributes information: what it does, what happens, and why it's needed. No filler or redundancy.

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 zero-parameter auth tool, the description covers the action and the prerequisite context. It could mention how to verify success (e.g., via youtube_auth_status) or what happens after consent, but the essential information is present. Minor gaps prevent a perfect score.

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

Parameters4/5

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

The tool has zero parameters and an empty input schema, so the baseline of 4 applies. The description appropriately focuses on the action rather than parameters, which are nonexistent.

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

Purpose5/5

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

The description clearly states the tool's function with a specific verb and resource: 'Initiate OAuth 2.0 authentication flow' and 'Opens a browser window for Google OAuth consent.' This is distinct from sibling tools like youtube_auth_status, which checks auth state, and other data-access tools.

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

Usage Guidelines4/5

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

The description provides explicit usage context: 'Required before using any tools that access private channel data or analytics.' This tells the agent when to invoke the tool, though it does not explicitly mention alternatives or exclusions for public data access.

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

youtube_auth_statusA

Check current authentication status and quota usage.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool is a read-only check (via 'Check') and mentions both status and quota usage, but doesn't clarify potential limitations, rate limit consumption, or the nature of the returned data beyond what is stated.

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, front-loaded sentence that conveys both the operation and the specific outputs ('authentication status' and 'quota usage'). No wasted words or redundant phrasing.

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?

Given the tool's simplicity (0 parameters, no output schema, straightforward read-only check), the description is sufficiently complete. It names the two key pieces of information retrieved, though it could benefit from a note about the format or meaning of the quota usage value.

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

Parameters4/5

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

The tool has 0 parameters and the schema is empty, so there are no parameter semantics to clarify. The baseline for 0-param tools is 4, and the description adds no unnecessary parameter information.

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

Purpose5/5

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

The description uses a specific verb ('Check') and clearly identifies the resource ('authentication status and quota usage'). It distinguishes itself from sibling tools like youtube_auth, which likely performs authentication, and other YouTube data tools.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives, and no mention of prerequisites or typical call patterns. The use case ('check current authentication status') is implied but not stated as a precondition or best practice.

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

youtube_create_playlistA

Create a new playlist.

Args: title: Playlist title description: Playlist description privacy_status: "private", "public", or "unlisted"

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
descriptionNo
privacy_statusNoprivate

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of disclosure. It does not mention authentication requirements, that this is a mutating operation, or what happens after creation (e.g., returns playlist ID). It only states the action and parameter meanings, skipping important behavioral context for a write operation.

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?

The description is appropriately concise and well-structured. It opens with the main action in one sentence, then uses a clear 'Args:' list to present parameters. Every line is informative, with no extraneous content or repetition, making it easy to scan.

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

Completeness3/5

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

For a simple 3-parameter creation tool, the description covers the essential parameters but omits important contextual details such as authentication requirements, return value (no output schema), and any possible side effects. It is adequate for a straightforward create operation but lacks the completeness expected for an autonomous agent that must manage authentication and interpret the result.

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

Parameters4/5

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

The description compensates for the 0% schema coverage by explicitly listing all three parameters with brief meanings, including allowed values for privacy_status ('private', 'public', or 'unlisted'). While the explanations are minimal, they add value beyond the bare schema types and defaults. It does not fully elaborate on parameter formats or constraints, but it is enough for basic usage.

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

Purpose5/5

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

The description states 'Create a new playlist' with a specific verb and resource. This clearly distinguishes it from siblings like youtube_add_to_playlist (which adds to an existing playlist) and youtube_list_playlists (which lists playlists). The action is unambiguous and appropriately scoped.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives. It does not mention that youtube_add_to_playlist should be used for adding videos to an existing playlist, nor any prerequisites such as prior authentication. The usage context is only implied by the verb 'create'.

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

youtube_delete_videoA

Delete a video. This action is irreversible.

Args: video_id: YouTube video ID to delete

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYes

TDQS

A3.5/5.0
Behavior3/5

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

The description discloses that the action is irreversible, which is a critical behavioral trait for a delete operation. However, it does not mention authentication requirements, potential errors, side effects on related data, or what happens on success. With no annotations, the description carries the burden, and this only partially covers it.

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?

The description is extremely concise, with two sentences and an argument listing, and all content is useful. It avoids redundancy and front-loads the key information, making every word earn its place.

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

Completeness3/5

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

For a simple delete tool with one parameter and no annotations, the description covers the action and irreversibility but omits return value and authentication context. The lack of an output schema makes the missing return value information a noticeable gap, though the tool's simplicity partially mitigates this.

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?

The description repeats the parameter name from the schema and adds 'YouTube video ID to delete,' providing minimal additional context beyond the schema's 'Video Id' title. No format or source guidance is given, so the description does not fully compensate for the 0% schema description coverage.

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

Purpose5/5

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

The description clearly states 'Delete a video' with a specific verb and resource, and it is distinct from sibling tools like youtube_update_video or youtube_upload_video. The action is unambiguous and directly conveys the tool's purpose.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives, nor any prerequisites or warnings about ownership. Usage is implied by the name and description, but no exclusions or alternative recommendations are provided.

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

youtube_get_categoriesA

List available YouTube video categories for a region.

Useful for filtering trending videos or setting video category on upload. Costs 1 quota unit.

Args: region_code: ISO 3166-1 alpha-2 country code (e.g., "US")

ParametersJSON Schema
NameRequiredDescriptionDefault
region_codeNoUS

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations provided, the description carries the burden of behavioral disclosure. It adds the valuable detail 'Costs 1 quota unit' and the region-based behavior, but does not mention authentication requirements or what the response looks like. For a simple list operation, this is acceptable but not exhaustive.

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?

The description is concise and well-structured: a one-line purpose, a usage note, quota cost, and an args section. Every sentence adds value, and the format is scannable.

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 simple tool with one parameter and no output schema, the description covers purpose, usage, quota, and parameter details. It does not specify the return structure or auth prerequisites, but the core information needed to invoke the tool correctly is present.

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

Parameters4/5

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

Schema description coverage is 0%, but the description compensates by explaining the only parameter, region_code, with its format ('ISO 3166-1 alpha-2 country code') and an example ('US'). This fully clarifies the parameter beyond the raw schema.

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

Purpose5/5

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

The description clearly states 'List available YouTube video categories for a region' with a specific verb, resource, and scope. It is easily distinguished from sibling tools like youtube_list_videos or youtube_list_playlists, which target different resources.

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

Usage Guidelines4/5

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

The description provides clear use cases: 'Useful for filtering trending videos or setting video category on upload.' This gives the agent context on when to select this tool, though it does not explicitly mention exclusions or alternatives.

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

youtube_get_channelA

Get channel details by channel ID, handle (@username), or the authenticated user's channel.

Args: channel_id: YouTube channel ID (e.g., "UCxxxxxxx") handle: Channel handle (e.g., "@mkbhd") mine: If True, get the authenticated user's own channel

ParametersJSON Schema
NameRequiredDescriptionDefault
mineNo
handleNo
channel_idNo

TDQS

A3.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It fails to disclose auth requirements (especially for 'mine'), parameter precedence when multiple are provided, or the return structure. The description only restates the basic function without deeper behavioral context.

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?

The description is concise and front-loaded with the main purpose. The args section is cleanly formatted and each line adds value, with no redundant or filler content.

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

Completeness3/5

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

For a simple getter tool, the description covers the basic purpose and parameters. However, given no output schema and no annotations, it would benefit from mentioning auth requirements for 'mine', parameter precedence, and what the returned channel details include. The current description is minimally adequate but has clear gaps.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must explain each parameter. It does this well by providing examples for channel_id ('UCxxxxxxx') and handle ('@mkbhd'), and explaining the 'mine' flag. However, it doesn't clarify whether parameters are mutually exclusive or their precedence if multiple are set.

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

Purpose5/5

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

The description starts with 'Get channel details', which is a specific verb+resource combination. It clearly distinguishes itself from siblings like youtube_get_video by focusing on channels and explicitly listing three ways to identify the channel (ID, handle, or authenticated user).

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

Usage Guidelines4/5

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

The usage context is clear: use this tool when you need channel details and have a channel ID, handle, or want the authenticated user's channel. However, it doesn't explicitly discuss alternatives or when not to use this tool, so it falls short of a 5.

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

youtube_get_transcriptA

Get the transcript/captions for a video.

By default uses youtube-transcript-api (works for any public video, no quota cost). Set use_official_api=True to use the official Data API (only for your own videos, costs quota units).

Args: video_id: YouTube video ID language: Preferred language code (e.g., "en", "es", "ja") use_official_api: If True, use official API (own videos only)

ParametersJSON Schema
NameRequiredDescriptionDefault
languageNoen
video_idYes
use_official_apiNo

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the transparency burden. It discloses the underlying library, quota implications, and ownership restriction for the official API. It does not describe the return format or error behavior, which would be helpful for a tool with no output schema.

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

Conciseness4/5

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

The description is concise and front-loaded with the main purpose. The Args section is clearly structured. It is slightly longer than necessary but every sentence adds meaningful information about usage and parameters.

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?

Given the three parameters and no output schema, the description provides adequate context: purpose, API choice, parameter meanings, and usage constraints. It lacks detail on return value structure and failure modes, but the core decision-making information is present.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate. The Args block explains each parameter: video_id as the video ID, language with examples, and use_official_api with its behavioral impact. This adds meaning beyond the bare schema titles and types.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Get the transcript/captions for a video.' It distinguishes itself from siblings like youtube_list_captions by focusing on transcript retrieval rather than caption track listing. The mention of default vs official API adds further context about scope.

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

Usage Guidelines4/5

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

The description clearly explains when to use the default method (any public video, no quota cost) versus the official API (own videos, costs quota). It provides practical usage context, though it does not explicitly contrast with sibling tools like youtube_get_video or youtube_list_captions.

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

youtube_get_videoA

Get detailed metadata and statistics for a specific video.

Args: video_id: YouTube video ID (e.g., "dQw4w9WgXcQ")

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYes

TDQS

A3.8/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states 'Get detailed metadata and statistics' without mentioning auth requirements, output format, rate limits, or what specific statistics are included. This is a significant transparency gap for a read operation.

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?

The description is extremely concise: one clear opening sentence followed by a single parameter explanation with an example. Every word earns its place, with no redundant filler.

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

Completeness3/5

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

For a simple single-parameter tool, the description is mostly adequate, but because there is no output schema, it should describe what 'detailed metadata and statistics' actually includes (e.g., views, likes, description). It also omits authentication context, which is important for video-specific data. This leaves some ambiguity for the agent.

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

Parameters5/5

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

The input schema provides only a 'Video Id' title with no description, but the tool description adds meaningful semantics: 'video_id: YouTube video ID (e.g., "dQw4w9WgXcQ")'. This gives the agent the exact format and a concrete example, fully compensating for the schema's lack of parameter detail.

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

Purpose5/5

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

The description clearly states the tool's function: 'Get detailed metadata and statistics for a specific video.' It uses a specific verb ('Get') and resource ('video'), and distinguishes from sibling tools like youtube_list_videos and youtube_search by focusing on a single known video.

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 description implies usage for a specific video ID but provides no explicit guidance on when to choose this over alternatives, such as youtube_analytics_video_detail or youtube_get_channel. There is no mention of exclusions or fallback tools.

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

youtube_list_captionsA

List available caption tracks for a video you own.

Requires OAuth. Only works for videos on the authenticated user's channel.

Args: video_id: YouTube video ID

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYes

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description must carry the burden of disclosing behavioral traits. It mentions OAuth requirements and the ownership restriction, which are important. However, it does not disclose expected output format, pagination, or error behavior. The description adds some value but leaves gaps for a listing tool.

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?

The description is concise and front-loaded, with the purpose stated first, followed by operational requirements and arguments. It uses no unnecessary words and is directly scannable. The structure is optimal for an agent to parse.

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

Completeness3/5

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

Given the tool's simple nature (list captions) and the sparse schema/annotations, the description covers the essential operational context (auth, ownership). However, it lacks any indication of the return value or what constitutes a 'caption track,' which is important since there is no output schema. The description is minimally complete but not fully self-sufficient.

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

Parameters2/5

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

The input schema has one parameter 'video_id' with no description, and schema description coverage is 0%. The description adds a minimal restatement: 'video_id: YouTube video ID.' This is essentially redundant with the parameter name and does not provide details like format, example, or constraints. The description fails to sufficiently compensate for the schema's lack of documentation.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'List available caption tracks for a video you own.' It specifies the action (list), the resource (caption tracks), and the scope (videos you own). This distinguishes it from related tools like youtube_get_transcript, which fetches transcript content.

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

Usage Guidelines4/5

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

The description provides clear context: 'Requires OAuth' and 'Only works for videos on the authenticated user's channel.' These constraints inform when to use the tool, but it does not explicitly mention alternatives or exclusion conditions compared to sibling tools. Still, the context is clear enough for an agent to infer appropriate usage.

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

youtube_list_commentsA

List top-level comments on a video.

Args: video_id: YouTube video ID max_results: Number of comment threads to return (max 100) order: Sort order: "relevance" or "time"

ParametersJSON Schema
NameRequiredDescriptionDefault
orderNorelevance
video_idYes
max_resultsNo

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description bears the full burden. It clearly indicates a read-only listing operation, which is safe. However, it does not disclose potential errors (e.g., invalid video ID), authentication requirements, or pagination behavior beyond max_results. This is minimal but not misleading.

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

Conciseness4/5

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

The description is concise, with a clear two-line summary followed by a parameter list. No wasted words, and the formatting is easy to scan. Slightly terse but effective.

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

Completeness3/5

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

The tool is simple, but the description does not mention pagination tokens or the structure of the returned data (e.g., comment text, author). Since there is no output schema, this would be helpful. However, the tool's core function is adequately covered, and the sibling context shows this is a basic read operation.

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

Parameters4/5

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

The schema has 0% description coverage, but the description explains all three parameters: video_id (ID), max_results (max 100), and order (relevance/time). This adds meaningful semantics beyond the schema's types and defaults, fully compensating for the lack of schema descriptions.

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?

The description clearly states the verb 'List' and the resource 'top-level comments on a video', making the tool's function immediately obvious. It is distinct from sibling tools like youtube_post_comment and youtube_reply_to_comment, though it does not explicitly differentiate itself.

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 description implies usage: when you need to read comments, use this tool. However, it does not explicitly state when to avoid it or mention alternatives like youtube_reply_to_comment for writing comments. Given the sibling list, the context is clear but not formally articulated.

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

youtube_list_playlistsA

List playlists for a channel.

Args: channel_id: Channel ID to list playlists from mine: If True, list the authenticated user's playlists max_results: Number of playlists to return (max 50)

ParametersJSON Schema
NameRequiredDescriptionDefault
mineNo
channel_idNo
max_resultsNo

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description must carry the full burden. It discloses a max_results ceiling (max 50) and explains the 'mine' parameter's behavior, but it does not mention authentication requirements, what happens if both channel_id and mine are provided, or what the response contains beyond 'playlists'. This leaves several behavioral gaps.

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?

The description is efficiently concise: one sentence stating the purpose followed by a clean parameter list. Every element earns its place, with no redundant or verbose content.

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

Completeness3/5

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

Given the tool's simplicity (3 params, no output schema, no annotations), the description covers the core functionality and parameter semantics but omits important contextual details like authentication, return value format, and precedence when both channel_id and mine are set. It is minimally viable but not thorough.

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

Parameters4/5

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

The schema has zero description coverage, so the description compensates by explaining all three parameters: channel_id for source channel, mine for authenticated user's playlists, and max_results for count with an explicit maximum. This adds meaningful context beyond the bare schema types and defaults, though it omits edge-case behavior.

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

Purpose5/5

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

The description clearly states 'List playlists for a channel' with a specific verb and resource, and is distinct from sibling tools like youtube_list_videos and youtube_create_playlist. It unambiguously communicates what the tool does.

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 usage is implied by the action 'List' and the parameters, but there is no explicit guidance on when to choose this tool over alternatives, nor any mention of exclusions or complementary tools. The agent must infer its use case from the name and sibling list.

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

youtube_list_videosA

List videos from a channel or playlist.

For a channel, uses the channel's uploads playlist. Returns video summaries with stats, sorted by most recent.

Args: channel_id: Channel ID to list videos from playlist_id: Playlist ID to list videos from (overrides channel_id) mine: If True, list the authenticated user's videos max_results: Number of videos to return (max 50)

ParametersJSON Schema
NameRequiredDescriptionDefault
mineNo
channel_idNo
max_resultsNo
playlist_idNo

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals that for channels it uses the uploads playlist, returns video summaries with stats, sorts by most recent, and that playlist_id overrides channel_id. These are valuable behavioral traits. It doesn't mention auth requirements beyond `mine` or edge cases like no arguments provided, but it still offers substantial transparency for a list operation.

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?

The description is appropriately sized, with a one-sentence purpose, a brief behavioral note, and a clear Args list. Every sentence earns its place; there is no redundancy or fluff. The structure is logical and scannable.

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?

Given the tool has no output schema and no annotations, the description covers the core function, the source playlist behavior, return content, sorting, and all parameters. It's missing explicit notes on auth requirements for channel/playlist listing and behavior when no arguments are provided, but for a relatively simple listed tool, it is largely complete.

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

Parameters5/5

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

Schema description coverage is 0%, so the description fully compensates by including an Args section that explains each parameter: channel_id, playlist_id (with override behavior), mine (authenticated user's videos), and max_results (max 50). This adds meaning well beyond the bare input schema.

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

Purpose5/5

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

The description opens with 'List videos from a channel or playlist,' a specific verb and resource. It clearly distinguishes from siblings like youtube_search and youtube_get_video by focusing on listing from a known channel/playlist and explaining it uses the channel's uploads playlist. The purpose is unambiguous and separates it from related tools.

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

Usage Guidelines4/5

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

The description provides clear context on when to use the tool: when you have a channel ID or playlist ID and want to list videos. It also explains the `mine` option for the authenticated user's videos. However, it doesn't explicitly mention alternatives (e.g., youtube_search) or state when not to use it, so it lacks explicit exclusions.

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

youtube_post_commentA

Post a new top-level comment on a video.

Args: video_id: YouTube video ID to comment on text: Comment text

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
video_idYes

TDQS

A3.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does not mention authentication requirements (which are relevant given youtube_auth exists), potential errors, rate limits, or side effects beyond the obvious mutation. The action is simple, but the lack of any behavioral notes leaves the agent uninformed about prerequisites or failure modes.

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?

The description is concise and well-structured, with a one-sentence purpose followed by a brief Args section. Every word contributes to clarity, and it avoids unnecessary elaboration. The front-loaded action makes intent instantly clear.

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

Completeness3/5

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

Given the tool's simple two-parameter nature and lack of output schema, the description covers the essential purpose and parameter semantics. However, it omits contextual details like authentication prerequisites, which are relevant given the sibling auth tools, and does not describe the expected result or response behavior. This leaves some gaps for an agent to infer.

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

Parameters4/5

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

The schema provides no descriptions for the parameters, but the description compensates with clear definitions: 'video_id: YouTube video ID to comment on' and 'text: Comment text.' This adds meaningful semantics beyond the bare schema, although it could include constraints (e.g., length limits) or examples.

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

Purpose5/5

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

The description clearly states the verb and resource: 'Post a new top-level comment on a video.' This precisely distinguishes it from sibling tools like youtube_reply_to_comment, which handles replies. The scope is unambiguous and directly maps to the tool's function.

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

Usage Guidelines4/5

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

The description conveys when to use the tool (to post a top-level comment) and implicitly differentiates from reply functionality via the phrase 'top-level.' However, it does not explicitly mention alternatives or exclusion scenarios, leaving some ambiguity for edge cases (e.g., when a reply is needed).

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

youtube_remove_from_playlistA

Remove a video from a playlist.

Use youtube_list_playlists or the Data API to find the playlist_item_id.

Args: playlist_item_id: The playlist item ID (not the video ID)

ParametersJSON Schema
NameRequiredDescriptionDefault
playlist_item_idYes

TDQS

A4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It states the action is 'Remove' (implying mutation) but does not disclose potential side effects, authentication requirements, irreversibility, or error behavior. The only added transparency is clarifying the ID type, which is more parameter semantics than behavioral disclosure.

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?

The description is concise and well-structured: a one-sentence purpose, a usage tip, and an args section. Every sentence adds value, with no filler or redundancy. It is front-loaded with the main action and then details the parameter.

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 tool with a single parameter and no output schema, the description covers the essential aspects: what it does, how to get the required ID, and what the ID is. It could mention authentication prerequisites or the outcome of a successful removal, but these are not critical for such a simple operation, and the guidance is otherwise sufficient.

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

Parameters4/5

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

The schema provides only the parameter name and type without any description. The tool description adds meaningful clarification by stating that playlist_item_id is 'The playlist item ID (not the video ID)' and explains how to find it. This compensates for the 0% schema coverage and helps prevent a common misuse.

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

Purpose5/5

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

The description clearly states the action: 'Remove a video from a playlist.' This is a specific verb + resource that distinguishes it from sibling tools like add_to_playlist or create_playlist. The purpose is unambiguous and not a tautology.

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

Usage Guidelines4/5

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

The description provides concrete guidance on where to obtain the required playlist_item_id, mentioning both youtube_list_playlists and the Data API. It implicitly tells the user the prerequisite step before invoking this tool, though it doesn't explicitly discuss when not to use it or compare to alternatives.

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

youtube_reply_to_commentA

Reply to an existing comment.

Args: parent_id: The comment ID to reply to (from youtube_list_comments) text: Reply text

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
parent_idYes

TDQS

A4/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only says 'Reply to an existing comment' without mentioning authorization requirements, side effects, validation, or error conditions. As a write operation, this is a significant transparency gap.

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?

The description is a single sentence plus a short Args list, with no redundant details. It is front-loaded and immediately understandable, earning its place without any waste.

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 simple two-parameter tool, the description covers the essential aspects: the action, the required parameters, and the source for parent_id. It does not mention authentication or error behavior, but the tool is straightforward enough that the provided information is nearly sufficient.

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

Parameters4/5

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

Schema coverage is 0%, so the description's Args section is the primary explanation. It adds useful provenance for parent_id ('from youtube_list_comments'), but the text parameter is only described as 'Reply text,' which adds minimal semantic value beyond the schema itself.

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

Purpose5/5

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

The description states exactly what the tool does: 'Reply to an existing comment.' It uses a specific verb and resource, and the phrase 'existing comment' distinguishes it from posting a new comment (as youtube_post_comment likely does). The parent_id parameter further reinforces the reply semantics.

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

Usage Guidelines4/5

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

It provides clear context by instructing that parent_id should come from youtube_list_comments, which tells the agent where to obtain a valid comment ID. However, it does not explicitly mention when not to use this tool or compare it with youtube_post_comment, so it stops short of full exclusion guidance.

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

youtube_reporting_create_jobA

Schedule a reporting job. Reports will be generated daily.

Once created, YouTube will start generating daily CSV reports for this report type. It may take 24-48 hours for the first report to appear.

Args: report_type_id: Report type ID (from youtube_reporting_list_types) name: Optional human-readable name for the job

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
report_type_idYes

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries disclosure burden. It discloses that reports will be generated daily and that the first report may take 24-48 hours to appear, which are useful behavioral traits. It does not cover permissions, reversibility, or response format, but the disclosed details add meaningful context.

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?

The description is about 60 words, structured with a clear purpose statement, behavioral note, and an Args list. Every sentence earns its place, with no redundant or filler content. It is front-loaded with the main action.

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 simple creation tool, the description covers the purpose, expected frequency, delay, and parameters. It does not specify the return value shape, but given no output schema and the ability to verify via list_jobs, this is a minor gap. Overall the tool is adequately contextualized.

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

Parameters4/5

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

Schema coverage is 0%, so the description's Args section compensates well. It explains that report_type_id comes from youtube_reporting_list_types and that name is an optional human-readable label. This adds meaning beyond the bare property names and types in the schema.

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

Purpose5/5

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

The description opens with 'Schedule a reporting job,' using a specific verb and resource, and distinguishes this from sibling tools by describing the creation behavior. It clearly states that this creates a job that will generate daily CSV reports, which is distinct from listing types, jobs, reports, and downloading.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool: when you need to schedule a daily report. It explicitly references youtube_reporting_list_types as a prerequisite for obtaining report_type_id, giving guidance on setup. However, it does not explicitly mention alternatives or exclusions for when not to use it.

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

youtube_reporting_downloadA

Download a report CSV.

Returns the CSV content as text. For large reports, the content may be truncated.

Args: download_url: Download URL from youtube_reporting_list_reports

ParametersJSON Schema
NameRequiredDescriptionDefault
download_urlYes

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses important behavior: returns the CSV as text and may be truncated for large reports. It does not cover authentication, error handling, or data format details, but the truncation warning is valuable transparency beyond the schema.

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?

The description is concise, front-loaded with the main action, and each sentence earns its place. It clearly separates purpose, return behavior, and parameter explanation in a structured way without unnecessary fluff.

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 single-parameter tool with no output schema, the description covers the essential aspects: what it does, what it returns, and its limitation (truncation). It could mention additional details like file size limits or authentication prerequisites, but given the compact scope, it is sufficiently complete.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate. The 'Args' section states 'download_url: Download URL from youtube_reporting_list_reports', which adds provenance and usage context beyond the schema's bare name and type. This effectively clarifies how to obtain the value.

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

Purpose5/5

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

The description clearly states 'Download a report CSV' with a specific verb and resource. It distinguishes itself from sibling reporting tools like list_reports and create_job by explicitly focusing on downloading the report content. The action and target are unambiguous.

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

Usage Guidelines4/5

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

The description implies its usage by saying the download URL comes from youtube_reporting_list_reports, which provides context on when to use this tool. However, it does not explicitly state when not to use it or mention alternatives, so it stops short of full guidance.

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

youtube_reporting_list_jobsA

List all active reporting jobs.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations provided, the description must carry the full burden of behavioral disclosure. It only states that it lists active jobs, but does not mention authentication requirements, whether it is read-only, or what an 'active' job means. This leaves significant behavioral ambiguity.

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, front-loaded sentence conveys the entire purpose without any filler. It is highly efficient and appropriately sized for a zero-parameter list operation.

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

Completeness3/5

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

The description is minimal but sufficient for a zero-parameter tool. However, it lacks context about output format, authentication, and how it fits into the reporting workflow (e.g., jobs must be created before listing). Given the absent output schema and annotations, this is a clear gap but not severe enough to be inadequate.

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

Parameters4/5

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

The tool has zero parameters, so the baseline is 4. The description correctly avoids any parameter details, and the empty schema correctly reflects that no arguments are needed.

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

Purpose5/5

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

The description clearly states the tool lists active reporting jobs, with a specific verb and resource. This distinguishes it from sibling tools like youtube_reporting_list_types and youtube_reporting_list_reports, which focus on different reporting entities.

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

Usage Guidelines2/5

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

No explicit guidance is given about when to use this tool versus alternatives. It does not mention prerequisites, such as needing to create jobs first, or compare against sibling reporting tools, leaving the agent without directional context.

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

youtube_reporting_list_reportsA

List available reports for a job.

Reports are generated daily and available for 60 days.

Args: job_id: Job ID (from youtube_reporting_create_job or youtube_reporting_list_jobs)

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses report generation frequency and retention period, but does not mention authentication requirements, side effects, or that it returns only metadata. For a read-only list operation, this is adequate but not rich.

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?

The description is concise, front-loaded with the main purpose, and efficiently structured with an Args section. Every sentence earns its place—no filler or repetition.

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 simple one-parameter list tool with no output schema, the description covers the purpose, parameter source, and report availability window. It could mention that report IDs returned can be used with youtube_reporting_download, but the current description is largely complete for its complexity.

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

Parameters4/5

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

Schema coverage is 0%, so the description compensates by explaining job_id as 'Job ID (from youtube_reporting_create_job or youtube_reporting_list_jobs)'. This adds valuable context beyond the schema's type-only definition, guiding where to obtain the parameter.

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

Purpose5/5

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

The description clearly states 'List available reports for a job' with a specific verb and resource. It distinguishes from sibling tools like youtube_reporting_list_jobs and youtube_reporting_list_types by focusing on reports for a given job.

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

Usage Guidelines4/5

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

The description provides usage context by noting reports are generated daily and available for 60 days, and it indicates job_id comes from youtube_reporting_create_job or youtube_reporting_list_jobs. While it doesn't explicitly mention alternatives, it implies when to use this tool for a specific job.

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

youtube_reporting_list_typesA

List available report types that can be scheduled.

Common report types:

  • channel_basic_a3: User activity (views, watch time, subs)

  • channel_demographics_a1: Age/gender breakdown

  • channel_traffic_source_a3: Traffic sources

  • channel_device_os_a3: Device and OS breakdown

  • channel_combined_a3: Combined multi-dimension report

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. The word 'List' implies a read-only operation, and the description includes common report types with brief definitions. However, it does not disclose whether authentication is required, whether the returned list is exhaustive or a subset, or any other behavioral details such as rate limits.

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?

The description is concise and front-loaded with the main purpose. The bulleted list of report types is informative and directly relevant, with no wasted words.

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?

Given the zero-parameter, no-output-schema context, the description is quite complete. It explains what the tool does and gives concrete examples of report types. It could be slightly more explicit about the tool being a safe, read-only discovery step, but overall it is sufficient.

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

Parameters4/5

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

The tool has zero parameters, and the schema is empty. The description adds semantic value by listing and explaining common report type identifiers, which is useful even though no parameters exist.

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

Purpose5/5

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

The description clearly states the tool lists available report types that can be scheduled, using a specific verb and resource. It distinguishes itself from sibling reporting tools by focusing on 'types' rather than jobs, reports, or downloads.

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

Usage Guidelines4/5

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

The phrase 'that can be scheduled' provides clear context that this tool is useful before creating a reporting job. It doesn't explicitly name alternatives or say when not to use it, but the sibling tool names (e.g., youtube_reporting_create_job) make the relationship clear.

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

youtube_search_suggestionsA

Get YouTube autocomplete/search suggestions for a query.

Useful for SEO keyword research — shows what people are searching for. No quota cost (uses YouTube's public suggest endpoint).

Args: query: Partial search query to get suggestions for language: Language code (e.g., "en", "es")

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
languageNoen

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden of behavioral disclosure. It does add key context such as 'No quota cost (uses YouTube's public suggest endpoint)', which is useful. However, it doesn't mention response format, rate limits, or whether the operation is strictly read-only, leaving some gaps for a tool with no annotation support.

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?

The description is concise and front-loaded with the main purpose in the first sentence. It includes only relevant details (use case, quota behavior, parameter explanations) without any fluff. The structure is clean and easy to scan.

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 simple two-parameter tool with no output schema and no annotations, the description covers the essential aspects: purpose, use case, quota behavior, and parameter meanings. It does not specify the exact return structure or potential errors, but given the simplicity, it is reasonably complete for an agent to invoke correctly.

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

Parameters4/5

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

The schema description coverage is 0%, so the description must compensate. The 'Args' section explains both parameters: query is 'Partial search query to get suggestions for' and language is 'Language code (e.g., "en", "es")'. This adds meaningful semantics beyond the bare property names, though it could be more detailed about language formats or query constraints.

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

Purpose5/5

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

The description clearly states 'Get YouTube autocomplete/search suggestions for a query' with a specific verb and resource. It distinguishes itself from siblings by explicitly mentioning 'autocomplete/search suggestions' and the SEO keyword research use case, which sets it apart from youtube_search and analytics tools.

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

Usage Guidelines4/5

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

The description provides a clear use case: 'Useful for SEO keyword research — shows what people are searching for.' This implies when to use it, though it does not explicitly name alternatives or state when not to use it. The context is clear enough for an agent to select this tool over siblings.

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

youtube_set_thumbnailA

Upload a custom thumbnail for a video.

Args: video_id: YouTube video ID file_path: Absolute path to the thumbnail image (JPEG, PNG, GIF, BMP; max 2MB)

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYes
file_pathYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description carries full responsibility for disclosing behavioral traits. It does not mention that this is a mutating operation, whether it overwrites an existing thumbnail, requires video ownership, or has any side effects. The description only focuses on the input parameters, leaving the tool's behavior opaque.

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?

The description is extremely concise: a single action sentence followed by two brief parameter lines. Every word earns its place, and the format is front-loaded with the primary action immediately visible. There is no fluff or repetition.

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

Completeness3/5

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

For a simple mutation tool, the description is minimally adequate: it states the purpose, parameters, and file constraints. However, it omits important context such as authentication requirements, the fact that it modifies a video's metadata, or what the result of the operation is. With no output schema and no annotations, the description could be more complete.

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

Parameters4/5

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

With schema description coverage at 0%, the description compensates well by explaining each parameter: 'video_id: YouTube video ID' and 'file_path: Absolute path to the thumbnail image (JPEG, PNG, GIF, BMP; max 2MB)'. This adds meaningful constraints and formats beyond the bare schema, though it could be further improved with examples or additional details like file path handling.

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

Purpose5/5

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

The description clearly states the tool's function: 'Upload a custom thumbnail for a video.' It uses a specific verb and resource, and this action is distinct from sibling tools like youtube_upload_video or youtube_update_video, which handle broader video operations. No ambiguity remains about what this tool does.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites such as authentication or ownership of the video. It only describes the action, leaving the agent to infer usage context from the tool name and sibling list.

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

youtube_update_videoA

Update metadata for an existing video.

Only provided fields are updated; others remain unchanged.

Args: video_id: YouTube video ID title: New title (max 100 characters) description: New description (max 5,000 characters) tags: New tags (replaces existing tags) category_id: New category ID privacy_status: "private", "public", or "unlisted"

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleNo
video_idYes
category_idNo
descriptionNo
privacy_statusNo

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries the burden of behavioral disclosure. It reveals key traits: partial updates, max lengths for title/description, and that tags fully replace existing tags. These go beyond the basic 'update' action and give an agent a clear model of the tool's side effects, though it omits auth requirements and error behavior.

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?

The description is concise and well-organized: a clear purpose sentence, a key behavioral note, and a tidy Args list. Every sentence and list item earns its place without redundant filler, making it highly scannable for an agent.

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 6-parameter update tool with no output schema and no annotations, the description covers the essential aspects: partial update behavior, parameter constraints, and replacement semantics. It falls slightly short of a 5 by not mentioning output/return behavior or auth prerequisites, but it is sufficiently complete for a straightforward metadata update.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate. It does so thoroughly: it adds max character limits for title and description, explains that tags replace existing tags, and enumerates valid privacy_status values. This adds significant meaning beyond the bare schema property names.

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

Purpose5/5

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

The description opens with 'Update metadata for an existing video,' a specific verb+resource that clearly distinguishes this tool from siblings like youtube_upload_video, youtube_delete_video, and youtube_set_thumbnail. It also clarifies partial-update semantics, making the tool's purpose unmistakable.

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

Usage Guidelines4/5

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

The statement 'Only provided fields are updated; others remain unchanged' gives useful guidance on how to use the tool for partial updates. While it does not explicitly list alternatives, the phrase 'existing video' implicitly differentiates it from upload and other mutation tools, providing enough context for an agent to choose appropriately.

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

youtube_upload_videoA

Upload a video to YouTube.

Costs 1,600 quota units. Video is uploaded as private by default.

Args: file_path: Absolute path to the video file title: Video title (max 100 characters) description: Video description (max 5,000 characters) tags: List of tags category_id: YouTube category ID (default "22" = People & Blogs) privacy_status: "private", "public", or "unlisted" publish_at: ISO 8601 datetime to schedule publishing (requires privacy_status="private")

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleYes
file_pathYes
publish_atNo
category_idNo22
descriptionNo
privacy_statusNoprivate

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses cost (1,600 quota units), default privacy status ('private by default'), and the scheduling constraint (publish_at requires private). It omits the return value (e.g., video ID) but covers important behavioral traits for a mutation tool.

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?

The description is well-structured with a clear opening sentence followed by cost and default behavior, then a bullet-style list of arguments. Every sentence earns its place without redundancy, making it both concise and scannable.

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 tool with 7 parameters and no output schema, the description covers all parameter semantics and key behavioral context. It doesn't mention the return value or error cases, but these are not critical for an upload tool. Overall it feels complete enough for an agent to invoke correctly.

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

Parameters5/5

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

The description adds substantial meaning beyond the input schema. It explains each parameter's constraints: absolute path, max title length, max description length, category default, privacy options, and the condition for publish_at. This is high-value semantic enrichment for all 7 parameters.

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

Purpose5/5

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

The description clearly states 'Upload a video to YouTube' with a specific verb and resource. It distinguishes from sibling tools like youtube_update_video and youtube_delete_video by focusing on the upload action.

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

Usage Guidelines4/5

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

It provides clear context for use (uploading a video) and mentions cost (1,600 quota units) and default privacy behavior. It doesn't explicitly state when not to use it, but the sibling tools make the distinction obvious. No exclusions are needed for a simple upload operation.

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

TDQS

A3.6/5.0
Disambiguation4/5

Each tool targets a distinct resource/action, and the descriptions clarify differences. However, the many analytics tools (e.g., overview vs daily vs day_of_week) are similar enough that an agent might occasionally misselect without careful reading.

Naming Consistency5/5

All tools follow a consistent `youtube_<domain>_<verb>_<noun>` pattern, with clear grouping (e.g., `youtube_analytics_*`, `youtube_playlist_*`). Minor variations like `set_thumbnail` vs `update_video` are acceptable and don't break the overall pattern.

Tool Count2/5

With 40 tools, this is far above the 25-tool threshold considered 'too many'. While YouTube's API is broad, the server attempts to cover almost every feature, making the surface heavy and harder to navigate.

Completeness3/5

Video management is complete (upload/update/delete/thumbnail), and analytics coverage is extensive. However, playlist management is missing update/delete operations, and comment management lacks delete/update capabilities, leaving notable lifecycle gaps.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables interaction with the YouTube Data API, allowing users to search videos, get video and channel details, analyze trends, and fetch video transcripts.
  • A
    license
    A
    quality
    C
    maintenance
    An MCP server for intelligent YouTube video analysis that provides token-optimized summaries, sentiment analysis, and entity extraction from transcripts. It enables AI assistants to perform video reporting, channel monitoring, and comprehensive YouTube searches through structured data tools.
    10
    51
    Apache 2.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server for managing YouTube channels using Data API v3 and Analytics. Supports video upload, comments, playlists, and analytics via ~30 tools, with stateless OAuth authentication.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pauling-ai/youtube-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server