Skip to main content
Glama

youtube-mcp

An MCP server that gives Claude control of a YouTube channel: upload videos, edit metadata, schedule releases, and read analytics — through YouTube's official Data and Analytics APIs.

Built for people running a posting workflow, where "publish Tuesday's video at 3pm and tell me how last week's did" should be one sentence, not twenty clicks.

Read this before you build on it

Two limits are policy, not code. Neither stops you developing, but both will shape what you can ship, and it's better to know now than after you've wired up a content pipeline.

1. Unaudited API projects can only upload private videos. Until your Google Cloud project passes YouTube's review, every video the API uploads is locked to private — you can't publish, and you can't flip it to public afterwards. Fix it by submitting the YouTube API Services Audit and Quota Extension form. The server tells you when this has happened rather than leaving you to wonder where your video went.

2. Quota is 10,000 units/day, and an upload costs ~1,600. That's about six uploads a day, then you're locked out until midnight Pacific. Raising it goes through the same form. Costs per tool are listed below so you can budget.

Related MCP server: youtube-research

Setup

1. Google Cloud

  1. Create a project at console.cloud.google.com

  2. Enable YouTube Data API v3 and YouTube Analytics API

  3. Configure the OAuth consent screen, adding your channel's Google account as a test user

  4. Create an OAuth 2.0 Client ID of type Desktop app, download the JSON

While the consent screen is in "Testing" status, refresh tokens expire after 7 days and you'll re-authorize constantly. Publishing the app stops that.

2. Install

git clone https://github.com/GhOsT0407/youtube-mcp.git
cd youtube-mcp
pip install -e .

3. Authorize

Save the downloaded JSON to ~/.youtube-mcp/client_secret.json, then:

youtube-mcp auth

That opens a browser once and stores a refresh token at ~/.youtube-mcp/token.json. The server never runs this flow itself — an MCP tool call has no way to show you a consent screen.

4. Add to your MCP client

Claude Code:

claude mcp add youtube -- youtube-mcp

Claude Desktop — in claude_desktop_config.json:

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

If youtube-mcp isn't on PATH, use the full interpreter path and ["-m", "youtube_mcp"] as args.

Then ask Claude to run auth_status to confirm it's connected.

Tools

Tool

What it does

Quota

auth_status

Confirm credentials, show which channel they control

1

upload_video

Upload a file with title, description, tags, privacy, optional schedule

~1600

update_video

Change metadata on an existing video

~51

schedule_video

Set a private video to go public at a given time

~51

set_thumbnail

Set a custom thumbnail

~50

list_my_videos

Recent uploads, newest first — how you find video IDs

~3

video_analytics

Views, watch time, retention for one video

separate quota

channel_analytics

Channel-wide totals, or a daily/per-video breakdown

separate quota

Notes that save debugging time

  • update_video merges. The raw API replaces the entire snippet on write, so a partial update silently blanks your description. This reads the current state and merges first — passing only title changes only the title.

  • Scheduling requires privacy. YouTube only honours publishAt on a private video. schedule_video and upload_video set that for you.

  • made_for_kids is a legal declaration under COPPA, not a preference. Set it to match what the content actually is.

  • Analytics lag 2–3 days. Yesterday's numbers won't be there yet.

  • Large uploads are slow and synchronous. A long file can outlast an MCP client's tool timeout. Upload big files when you can leave it alone.

Example

Upload episode-12.mp4 as "How I Automate My Channel", tag it automation and youtube, schedule it for next Tuesday 3pm UTC, then show me how episode 11 did over the last 30 days.

Claude chains upload_videoschedule_videolist_my_videosvideo_analytics on its own.

Security

Your client_secret.json and token.json are the keys to your channel. They live in ~/.youtube-mcp/, and .gitignore excludes them — keep it that way. Anyone with that token can post as you.

Requirements

  • Python 3.10+

  • A Google Cloud project with the two APIs enabled

  • A YouTube channel on the authorizing account

License

MIT — see LICENSE.

Available Tools

8 tools
auth_statusA

Confirm the stored credentials work and report which channel they control.

Run this first when something is misbehaving. Quota cost: 1 unit.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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 transparency burden. It clearly signals a read-only diagnostic operation and discloses the quota cost of 1 unit. For a zero-parameter status check, this is adequate 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 two short sentences with no wasted words. The primary purpose is front-loaded, followed by a practical usage directive and quota cost.

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

Completeness5/5

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

For a zero-parameter authentication status tool, the description covers what it does, what it reports, when to run it, and its cost. Nothing necessary for correct invocation is missing.

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 adding irrelevant parameter details, and the empty schema fully documents the parameter surface.

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 a specific verb ('Confirm') and resource ('stored credentials'), and clearly indicates the output: which channel the credentials control. This also distinguishes it from sibling video-management 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 instruction 'Run this first when something is misbehaving' gives a clear and actionable usage context for a diagnostic tool. It does not explicitly name alternatives, but no sibling serves the same auth-checking purpose, so this is sufficient.

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

channel_analyticsA

Channel-wide performance over a date range (YYYY-MM-DD).

Pass dimensions="day" for a time series, or "video" for a per-video breakdown of the period. Figures lag real time by roughly two to three days.

ParametersJSON Schema
NameRequiredDescriptionDefault
metricsNoviews,estimatedMinutesWatched,subscribersGained,subscribersLost
end_dateYes
dimensionsNo
start_dateYes

TDQS

A4/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 and does disclose a non-obvious behavior: 'Figures lag real time by roughly two to three days.' It also clarifies the date-range scoping and dimension behavior; the read-only nature is strongly implied by 'analytics/performance,' though not explicitly 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?

Three short, front-loaded statements cover scope, dimension choices, and the staleness caveat. No filler or redundant restatement of the tool name.

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 read-only analytics call with no output schema or annotations, the description covers the essential invocation details: date format, dimension behavior, and data lag. The main gap is the undocumented metrics parameter and the absence of any return-shape hint, but these are minor for this level of complexity.

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 must compensate. It explains start_date/end_date format and the values of dimensions, but says nothing about the metrics parameter or how metrics should be formatted, leaving part of the parameter surface undocumented.

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 opens by identifying the resource and scope: 'Channel-wide performance over a date range.' It lacks an explicit verb like 'retrieve' or 'get,' but the parseable dimension options ('day' for time series, 'video' for per-video breakdown) make the tool's purpose and difference from video_analytics clear.

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 gives explicit within-tool routing: 'Pass dimensions="day" for a time series, or "video" for a per-video breakdown of the period.' It also provides the date format, but it never explicitly contrasts this tool with the sibling video_analytics or states when not to use it, so it stops 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.

list_my_videosA

List recent uploads on the authorized channel, newest first.

Quota cost: ~3 units. Use this to find the video_id the other tools need.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

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

There are no annotations, so the description carries the behavioral disclosure burden. It adds valuable context: ~3 unit quota cost, authorized-channel scoping, newest-first ordering, and a read-only retrieval purpose. It does not explicitly mention pagination or read-only status, but the core behavior is clear and useful.

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?

Three short sentences with no filler: the primary behavior is first, followed by quota cost and the agent-relevant usage note. Every sentence earns its place.

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 read-only list tool with one optional parameter and an output schema, the description covers scope, ordering, cost, and the main use case. It could be slightly stronger with explicit alternatives or a mention of max_results, but it is otherwise 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?

Schema description coverage is 0%, and the description never mentions max_results. The single parameter is optional with a self-explanatory title and default, so invocation risk is low, but the description does not compensate for the missing schema description.

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: 'List recent uploads on the authorized channel, newest first.' It clearly defines scope and ordering, and it is easy to distinguish from the mutation-focused siblings like upload_video and update_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?

It explicitly says 'Use this to find the video_id the other tools need,' which tells an agent when this tool is the right entry point. It does not name specific sibling alternatives or state when not to use it, so it stops 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.

schedule_videoA

Schedule an existing private video to go public at a given time.

Quota cost: ~51 units. publish_at is ISO 8601, e.g. 2026-09-10T15:00:00Z; a bare timestamp is read as UTC. The video must stay private until then, which this sets for you.

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYes
publish_atYes

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 takes on the full transparency burden. It discloses quota cost, timezone behavior for publish_at, and the side effect of keeping the video private until the scheduled time. This is strong behavioral context, though it does not cover every possible edge case.

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 three tight sentences with the main purpose front-loaded. The remaining details—quota cost, timestamp format, and side effect—are all high-value and each earns its place. There is 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 two-parameter tool with no output schema and no annotations, the description covers the essential invocation details: what the tool does, timestamp format, quota cost, and visibility side effect. Minor omissions like requiring a future publish_at date or describing the return value do not critically impair correct usage.

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. It adds concrete semantics for publish_at by specifying ISO 8601 format, UTC interpretation, and an example. The video_id parameter is not explicitly detailed, but the phrase 'existing private video' clarifies that it refers to an already-uploaded video.

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 a specific operation: scheduling an existing private video to go public at a given time. This clearly differentiates it from sibling tools like upload_video and update_video. The scope is precise and leaves no ambiguity about the resource being acted on.

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 the correct usage context: use this for already-existing private videos that need to be published on a schedule. It does not explicitly name alternatives or exclusions, but the use case is clear enough to route an agent to the right tool.

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

set_thumbnailA

Set a custom thumbnail. Quota cost: ~50 units.

Needs a verified channel with custom thumbnails enabled. JPEG or PNG, under 2MB, 1280x720 recommended.

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYes
image_pathYes

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does meaningful work: it discloses a quota cost of ~50 units, an authorization requirement, and file constraints. It could further disclose whether the thumbnail replaces an existing one and what the response or failure modes are, but the key operational behavior is present.

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 three short, purposeful sentences with the action first. The quota cost, prerequisite, and file constraints each earn their place with no fluff 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 two-parameter mutation with no annotations and no output schema, the description covers prerequisites, quota, and accepted image inputs. It is slightly incomplete around whether image_path is local and what the effect on an existing thumbnail is, but not enough to hinder correct invocation.

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 must compensate; it adds concrete semantics for the image value (format, size, recommended dimensions) but does not explain video_id provenance or whether image_path is a local file path versus URL. The provided constraints clearly attach to image_path by context, making this partial rather than absent.

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 uses a clear verb and resource ('Set a custom thumbnail') and is supported by the video_id/image_path arguments, so an agent can infer the target is a video thumbnail. It does not explicitly contrast itself with siblings like update_video, so it misses full differentiation.

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 states a concrete precondition ('verified channel with custom thumbnails enabled') and technical constraints (JPEG/PNG, under 2MB, 1280x720 recommended), giving clear context for when this tool is applicable. It does not name alternative tools or when-not-to-use conditions.

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

update_videoA

Change the metadata on an existing video. Only the fields you pass change.

Quota cost: ~51 units (1 to read the current state, 50 to write).

The underlying API replaces the whole snippet on write, so this reads the video first and merges - passing only title will not blank the description the way a raw API call would.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleNo
video_idYes
category_idNo
descriptionNo
privacy_statusNo

TDQS

A4.4/5.0
Behavior5/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 quota cost (~51 units), explains the read-then-merge-write mechanism, and clarifies that passing only 'title' will not blank the description—a subtle but important side effect. This is transparent and highly useful for an agent deciding how to call the tool safely.

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 front-loaded with purpose. Every sentence earns its place: the first states the action, the second quantifies cost, and the third explains a non-obvious merge behavior. 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?

The description covers the essential behaviors—quota, merge semantics, partial update guarantee—and the schema covers required and optional parameters. However, it does not specify what happens when a field is passed as null (clear vs. no-op), nor does it describe the response format, which could matter given there is no output schema.

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 adds meaningful semantics beyond the raw schema: 'Only the fields you pass change' and the merge example explain how parameter omission behaves. Individual fields are self-explanatory from their names, though the description does not elaborate on each parameter or the meaning of an explicit null 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 starts with a specific verb and resource: 'Change the metadata on an existing video.' The phrase 'existing video' clearly distinguishes this from upload_video and other sibling creation tools. It is immediately obvious what the tool operates on and what action it performs.

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 when to use the tool—when you need to update metadata on an existing video without replacing unspecified fields—but it never explicitly names alternatives or states when not to use it. The merge behavior gives contextual guidance, but there is no direct 'use upload_video for new videos' type exclusion.

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

upload_videoA

Upload a video file to the authorized channel.

Quota cost: ~1600 units - about six uploads on the default daily allowance.

privacy_status is one of private/unlisted/public. Set publish_at (ISO 8601, e.g. 2026-09-10T15:00:00Z) to schedule a release; YouTube requires a scheduled video to be private until its moment arrives, so publish_at forces privacy_status to private.

made_for_kids is a legal declaration under COPPA, not a preference - set it to match what the content actually is.

Common category_id values: 22 People & Blogs, 27 Education, 28 Science & Technology, 24 Entertainment, 20 Gaming, 10 Music.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleYes
file_pathYes
publish_atNo
category_idNo22
descriptionNo
made_for_kidsNo
privacy_statusNoprivate

TDQS

A4.1/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 and does well: it discloses quota cost, that publish_at forces privacy_status to private, and that made_for_kids is a legal COPPA declaration. These are non-obvious behavioral traits beyond a simple upload action.

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 the core action, then adds quota cost, parameter constraints, and category examples in a logical order. Every sentence adds value and none simply repeats 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?

The description covers many important operational details, but with no annotations and no output schema it still leaves gaps: it does not describe the response/return value, file_path format or location requirements, or error/auth failure modes. For an 8-parameter upload tool, this is a noticeable but not fatal omission.

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 parameters. It usefully explains privacy_status values, publish_at format and interaction, made_for_kids implications, and common category_id values. It does not explain file_path, title, description, or tags, but those are relatively self-explanatory.

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 first sentence, 'Upload a video file to the authorized channel,' identifies a specific verb, resource, and scope. It is unambiguous and clearly differentiates from siblings like update_video or set_thumbnail.

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 gives clear context for when to use the tool for uploading and provides parameter-level guidance like scheduling via publish_at. However, it never explicitly mentions alternatives or when not to use this tool, such as when schedule_video or update_video would be more appropriate.

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

video_analyticsB

Performance for one video over a date range (YYYY-MM-DD).

Uses the YouTube Analytics API, which has its own quota separate from the Data API. Figures lag real time by roughly two to three days.

ParametersJSON Schema
NameRequiredDescriptionDefault
metricsNoviews,estimatedMinutesWatched,averageViewDuration,averageViewPercentage,likes,comments,shares,subscribersGained
end_dateYes
video_idYes
start_dateYes

TDQS

B3.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 disclosure burden. It usefully mentions the separate YouTube Analytics API quota and the two-to-three-day data lag. However, it does not disclose return format, pagination, authorization requirements, or how the default metrics list behaves.

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: the first sentence states the core function and scope, and the second adds relevant operational caveats. Every sentence earns its place with no filler.

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?

Given four parameters, no output schema, and no annotations, the description should provide more context. It covers date format, quota, and data lag, but omits metric semantics, output shape, and authentication expectations, leaving an agent with important gaps.

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?

Schema description coverage is 0%, so the description must compensate. It only clarifies the YYYY-MM-DD format for start_date and end_date. It does not explain video_id or the metrics parameter, leaving key semantics undocumented.

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 states the tool provides performance metrics for one video over a date range, clearly identifying the resource and scope. It distinguishes itself from sibling tools like channel_analytics by specifying 'one video,' though it does not explicitly name the alternative.

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 when to use the tool: when you need performance data for a single video within a date range. It does not explicitly state when not to use it, nor does it name alternatives such as channel_analytics for channel-wide metrics.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 8 tool updatesv0.1.0
    • First observedauth_status
    • First observedchannel_analytics
    • First observedlist_my_videos
    • First observedschedule_video
    • First observedset_thumbnail
    • First observedupdate_video
    • First observedupload_video
    • First observedvideo_analytics

TDQS

A3.9/5.0
Disambiguation5/5

Each tool targets a distinct action: auth status, upload, metadata update, scheduling, thumbnail, list, and analytics. schedule_video is the only possible overlap with update_video, but its dedicated publishing workflow is clearly separated. An agent can reliably select the right tool.

Naming Consistency4/5

Most tools follow a clear verb_noun pattern: upload_video, update_video, schedule_video, set_thumbnail, list_my_videos. auth_status and the analytics tools use noun-based names, but these are consistent and recognizable as status/analytics operations.

Tool Count5/5

Eight tools cover the core channel management and analytics workflow without bloat. Each tool earns its place, and the count is well-scoped for a YouTube-focused MCP server.

Completeness4/5

The set covers the essential video lifecycle: upload, list, update metadata, schedule publishing, set thumbnail, and retrieve analytics. Missing delete and single-video fetch are minor gaps given the server's clear focus on publishing and performance.

Maintenance

ActivityMaintained
ResponsivenessNo issues

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

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude to access and manage YouTube channel data through the YouTube Data API v3 and YouTube Analytics API. Provides tools for reading analytics, fetching video metadata, searching uploads, and updating video SEO directly from Claude.
    9
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables YouTube integration with Claude Code, including video search, metadata retrieval, transcript fetching, channel exploration, and trending videos.
    8
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    A local stdio MCP server that gives Claude (or any MCP client) full programmatic control over a single YouTube channel, including video upload, channel management, comments, analytics, and more.
    46
    57
    MIT

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/GhOsT0407/youtube-mcp'

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