Skip to main content
Glama
YouTube Studio MCP

YouTube Studio MCP

by nelsonrogers

Top videos

get_top_videos
Read-onlyIdempotent

Ranks your channel's videos by views, watch time, or subscribers gained within a chosen period, returning metrics like engagement rate and average view duration so you can spot your top performers.

Instructions

Rank the channel's videos by performance within a period (like Studio's 'Top content'), with title, publish date, YouTube's content type (Shorts/Videos/Live), views, watch time, average view duration/percentage, likes, comments, shares, subscribers gained and engagement rate.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "get_top_videos"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoHow many videos.
metricNoWhat to rank by.views
periodNoNamed date range, Studio-style. Rolling ranges end at the latest complete day of data (analytics lag ~2-3 days; dates are US Pacific). Ignored when start_date is set.last_28_days
save_toNoOptional file to also save the rows to (.csv or .json). A bare filename goes in the output directory; absolute paths are allowed.
end_dateNoCustom range end, YYYY-MM-DD (inclusive). Defaults to the latest complete day.
start_dateNoCustom range start, YYYY-MM-DD. Overrides `period`.
content_typeNoOnly rank Shorts, regular videos, or live streams.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered. The description adds the Studio-equivalence framing and the returned column set, but nothing about auth requirements, analytics lag, rate limits, or the read-only network call — and the metric enumeration largely mirrors what the output schema would show anyway.

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?

One front-loaded sentence that leads with the core action and the Studio analogy before the output inventory. The long tail of metric names is somewhat redundant with the output schema, but the structure remains efficient with no filler or hedging.

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-required-parameter, fully documented read tool with an output schema and rich annotations, the description gives enough to call it correctly. The only real gap is sibling routing guidance, which is a usage concern rather than a calling-correctness one.

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?

With 100% schema description coverage, the schema already explains limit, metric, period, start/end dates, content_type and save_to in detail. The description only frames them collectively ('rank by performance within a period'), adding no syntax, precedence, or format detail beyond the schema, so the baseline of 3 applies.

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 ('Rank the channel's videos by performance within a period') and anchors it to a known product surface ('like Studio's Top content'). The enumerated metrics (views, watch time, engagement rate) make it unmistakable that this is a ranked analytics report rather than a metadata listing, which implicitly separates it from list_videos/get_videos_details.

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 is only implied: the tool is for viewing top-performing content over a period. There is no explicit when-to-use, when-not-to-use, or named alternative (e.g., when to prefer get_videos_details or query_analytics instead), so the agent must infer routing from the capability statement alone.

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