yzturkey-mcp
This server turns an AI coding agent into a video production studio by connecting it to yzturkey.com for channel management, series creation, AI video generation, and pipeline monitoring.
Channel management: list, create, inspect, and update channels with Channel DNA, tone, language, aspect ratio, and visual styles.
Series management: create, list, inspect, and update video series in production modes like Veo, Faceless, Quiz, and Map.
Video production: generate video batches from topics, queue multi-scene custom videos, and manage rendering pipelines.
Archive search: search past videos by keyword, module, status, and channel.
Duplicate detection: use semantic cosine similarity to check if a concept was already produced.
Monitoring & analytics: view queue/render progress, channel KPIs, and remaining account credits.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@yzturkey-mcpCreate a new AI news series in my Tech Daily channel and queue 3 videos after checking duplicates."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🎬 YZTurkey MCP Server
Official Model Context Protocol (MCP) Server for yzturkey.com — autonomous AI video production, channel management, and rendering pipelines for local agents.
Turn Google Antigravity, Claude Code, Cursor, or ChatGPT Codex on your machine into an autonomous video production studio!
While web agents are confined to sandboxes, your local agent has access to web search, local brand assets, script archives, and terminal tools. With yzturkey-mcp, your agent connects directly to yzturkey's video rendering engine to create channels, define Channel DNA, schedule series, generate AI videos, and monitor rendering pipelines.
⚡ Quick Start
No installation required! You can run the server directly using uvx:
export YZTURKEY_API_KEY="yzt_live_your_key_here"
uvx yzturkey-mcp(You can generate your personal API Key at yzturkey.com/settings?tab=api)
Related MCP server: klaket-mcp
🛠️ Tools Available to Your Agent
📺 Channels (Workspaces)
list_channels(): List all channels with video counts, DNA, and visual styles.create_channel(name, channel_context, ...): Create a new channel with specific tone, language, and aspect ratio.get_channel_details(channel_id): Inspect channel configuration, active characters, and publish slots.update_channel_settings(channel_id, ...): Update Channel DNA (channelContext) or visual presets.
🎞️ Series (Batches)
list_series(channel_id): List video series inside a channel.create_series(channel_id, name, production_mode, ...): Create a new video series (Veo, Faceless, Quiz, Map, etc.).get_series_details(series_id): Inspect themes/videos and production progress in a series.update_series_settings(series_id, ...): Update series parameters and overrides.
🎥 Video Production & Archive
produce_custom_video(channel_id, title, concept, scenes, ...): Produce and queue a multi-scene AI video with custom storyboard prompts, dialogues, and lengths.generate_video_batch(channel_id, topics, ...): Queue video topics or raw multi-scene script text for AI video and scene rendering.search_video_archive(channel_id, query, ...): Search past generated videos by keyword or status.check_duplicate_idea(channel_id, concept_text): 768-dimensional semantic cosine similarity test to prevent repeating past video ideas.
📊 Queue & Account
get_queue_status(channel_id): Real-time progress and active rendering scenes in the pipeline.get_channel_stats(channel_id): Key performance indicators and publication counts.get_account_balance(): Remaining YZC credits, bonus credits, and active plan.
🔌 Agent Configurations
1. Google Antigravity
Add to your Antigravity MCP settings (e.g. ~/.gemini/antigravity/mcp_config.json):
{
"mcpServers": {
"yzturkey": {
"command": "uvx",
"args": ["yzturkey-mcp"],
"env": {
"YZTURKEY_API_KEY": "yzt_live_YOUR_API_KEY_HERE"
}
}
}
}2. Claude Code
Run in your terminal:
claude mcp add yzturkey uvx yzturkey-mcp --env YZTURKEY_API_KEY=yzt_live_YOUR_API_KEY_HERE3. Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"yzturkey": {
"command": "uvx",
"args": ["yzturkey-mcp"],
"env": {
"YZTURKEY_API_KEY": "yzt_live_YOUR_API_KEY_HERE"
}
}
}
}4. Cursor / Windsurf
Add to .cursor/mcp.json:
{
"mcpServers": {
"yzturkey": {
"command": "uvx",
"args": ["yzturkey-mcp"],
"env": {
"YZTURKEY_API_KEY": "yzt_live_YOUR_API_KEY_HERE"
}
}
}
}💡 Example Prompt for Your Agent
"Web'de son 24 saatte yapay zeka ve robotik alanında en çok konuşulan 3 haberi araştır. 'Teknoloji Günlüğü' kanalımda yeni bir seri aç. Kanal DNA'sına uygun 3 video fikri hazırla, daha önce bu konuları işleyip işlemediğimizi
check_duplicate_ideaile kontrol et ve onaylarsam yzturkey video kuyruğuna ver."
🔒 Security & Privacy
Zero Secrets: This repository does not contain any API keys, credentials, or private tokens.
Client-Side Auth: All authentication is handled dynamically via
YZTURKEY_API_KEY.Hashed Storage: On
yzturkey.com, all API keys are hashed with SHA-256 and only the prefix is visible after creation.
📄 License
MIT License © 2026 yzturkey.com
Available Tools
14 toolscheck_duplicate_ideaA
Check if a video idea or concept has already been produced in this channel.
Uses 768-dimensional semantic embeddings (cosine similarity) to compare your idea against the channel's entire past archive. Returns matching past videos and whether it exceeds the duplicate threshold (>0.78).
Args: channel_id: Channel UUID or slug. concept_text: The proposed headline or core concept to test for uniqueness.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes | ||
| concept_text | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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 well by explaining the 768-dimensional semantic embedding approach, cosine similarity, the >0.78 duplicate threshold, and what is returned. It does not explicitly state read-only behavior or failure modes, but the 'Check if' phrasing and algorithm details provide substantial transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose. It then adds valuable technical context and a clean Args section. No sentence is wasted, and the structure makes the tool's behavior immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with an output schema present, the description is largely complete: it explains what the tool does, how it works, and what it returns. The main gap is the lack of explicit guidance on when to prefer this tool over the similar search_video_archive sibling, but the complexity is low enough that the provided details suffice for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 by providing concise meaning for both parameters: channel_id is a Channel UUID or slug, and concept_text is the proposed headline or core concept to test. This adds useful semantic information beyond the raw schema, though it could have included format or length expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: checking whether a video idea or concept has already been produced in a channel. It is specific about the verb, resource, and underlying comparison against the channel's past archive, distinguishing it from generic search or generation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied rather than explicit: it is for testing a concept's uniqueness before production, and the Arg description mentions 'to test for uniqueness.' However, it does not explicitly state when to use this tool over the similar sibling search_video_archive, nor provides any exclusions or alternative routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_channelA
Create a new channel (workspace) in yzturkey.com.
Args: name: Name of the channel (e.g. 'Tarih Meraklısı' or 'Daily Tech Shorts'). channel_context: Channel DNA instruction defining the tone, style, niche, and content rules. visual_style_id: Optional ID of the visual style preset to use for this channel. aspect_ratio: Video aspect ratio, typically '9:16' (Shorts/Reels/TikTok) or '16:9' (YouTube). language: Primary language code ('tr' for Turkish, 'en' for English). description: Brief description of the channel.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| language | No | tr | |
| description | No | ||
| aspect_ratio | No | 9:16 | |
| channel_context | No | ||
| visual_style_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states that a channel is created but does not mention permissions, side effects, uniqueness constraints, whether creation is reversible, or what is returned on success. For a mutation-oriented tool, this is a meaningful gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and then uses a compact Args list to document all six parameters without unnecessary prose. Every line adds meaningful information, and there is no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists and all six parameters are explained with examples, the description is largely complete for invoking the tool correctly. The only notable omission is any explicit guidance on prerequisite conditions or expected post-creation behavior, but the presence of an output schema partially mitigates this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for the schema's lack of explanatory text. It does so thoroughly: each parameter gets an explanation, examples for name, typical values for aspect_ratio, language code guidance, and a clear definition of channel_context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and resource: 'Create a new channel (workspace) in yzturkey.com.' It clearly distinguishes the action from sibling tools like list_channels, get_channel_details, and update_channel_settings by naming the create operation on a channel/workspace.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly frames this as the creation action, so an agent can infer when to use it versus update_channel_settings or get_channel_details. It does not explicitly name alternatives or state 'do not use for updating existing channels,' but the context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_seriesA
Create a new video series (batch) in a channel.
Args: channel_id: Channel UUID or slug. name: Name of the series (e.g. 'Gizemli Olaylar Sezon 1'). production_mode: Video engine mode: 'faceless' (image + audio + effects), 'veo' (Google Veo / Omni video generation), 'quiz', 'map', etc. video_model: Model wireKey if using veo mode (e.g. 'veo_3_1_t2v_fast_4s', 'abra_t2v_4s'). force_external_tts: If True, uses external Gemini TTS voiceover even when video model has embedded audio. duration_min_sec: Minimum target video length in seconds. duration_max_sec: Maximum target video length in seconds. labels: Comma-separated labels or tags. settings: Key-value dictionary of series override settings.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| labels | No | ||
| settings | No | ||
| channel_id | Yes | ||
| video_model | No | ||
| production_mode | No | faceless | |
| duration_max_sec | No | ||
| duration_min_sec | No | ||
| force_external_tts | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It clearly states that this operation creates a new resource and discloses some parameter behavior, such as force_external_tts forcing an external TTS voiceover. However, it does not address idempotency, duplicate-name behavior, permission requirements, or any side effects beyond creating the series. This is adequate but not fully transparent 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with a clear one-sentence purpose, followed by a tight, structured Args list. There is no filler or redundant restatement of the schema. Given the need to document nine parameters without schema descriptions, the length is justified and every line earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nine parameters, zero schema descriptions, and no annotations, the description is nearly complete for invoking the tool correctly. It covers all parameter semantics, required fields, and important operational details. The presence of an output schema means return values do not need to be explained. Minor gaps remain around duplicate handling and prerequisites, but the tool can be used correctly from this description alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no descriptions (0% coverage), so the description fully compensates by documenting all nine parameters with meaningful detail. It provides format guidance for channel_id (UUID or slug), examples for production_mode, wireKey examples for video_model, and explains the behavior of force_external_tts. This goes well beyond the bare schema titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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: 'Create a new video series (batch) in a channel.' This clearly distinguishes it from sibling tools like list_series and update_series_settings, and the channel scoping differentiates it from channel-level tools. The parenthetical 'batch' also clarifies the domain concept without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: use this when a new series needs to be created in a specific channel. However, there is no explicit when-to-use guidance, no mention of alternatives, and no exclusions such as 'use update_series_settings to modify an existing series' or 'use generate_video_batch to produce videos.' The guidance is sufficient but entirely implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_video_batchA
Generate a batch of videos in yzturkey.com for a list of topics or titles.
Creates the batch and themes, queues them for video production and scene generation.
Args: channel_id: Channel UUID or slug. topics: List of video topics or headlines (e.g. ['Dünyanın En Derin Çukuru', 'Mariana Çukurundaki Gizemler']). batch_id: Optional existing series/batch UUID to append these videos to. batch_name: Name for the batch if creating a new one (e.g. 'Derin Denizler #1'). module_type: Video engine: 'veo', 'faceless', 'quiz', 'map'. Default is 'veo'. production_mode: Optional production mode override.
| Name | Required | Description | Default |
|---|---|---|---|
| topics | Yes | ||
| batch_id | No | ||
| batch_name | No | ||
| channel_id | Yes | ||
| module_type | No | veo | |
| production_mode | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the side-effect disclosure burden and does so by explicitly saying it creates the batch/themes and queues them for video production and scene generation. It does not cover permissions or reversibility, but the core behavioral contract is far from a bare 'generate'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: a one-sentence purpose, a one-sentence side effect, then a clean Args list. Every line adds useful information with no boilerplate or repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter mutating tool with no annotations, the description is mostly complete: required arguments, optional append behavior, and async queueing are all covered, and an output schema exists to document returns. The vague production_mode override and lack of relation to duplicate-checking are the main remaining gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, so the Args block is essential and it covers all six parameters with types, examples, and allowed values (e.g., module_type 'veo'/'faceless'/'quiz'/'map', channel_id UUID or slug). Even optional parameters get semantic context, which fully compensates for the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: generate a batch of videos on yzturkey.com from a list of topics, and clarifies that it creates the batch/themes and queues production. This clearly separates it from channel and series management siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parameter notes imply usage patterns (append via batch_id, create new via batch_name), but the description never explicitly states when to choose this tool over related tools such as check_duplicate_idea or create_series. There is no when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_account_balanceA
Get your user account balance, remaining YZC credits, active subscription plan, and agent message quotas.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of indicating behavior. 'Get' clearly signals a read-only operation, and the description enumerates the specific data returned. It does not mention authentication or rate limits, but for a simple account getter this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that names the main resource first and then lists the specific data items. There is no redundant wording or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only getter with an output schema present, the description fully covers the tool's purpose and expected returned information. Nothing essential is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is effectively 100% due to the empty properties object. The description does not need to explain parameters; the baseline of 4 applies here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and clearly identifies the resource: the user's account balance, remaining YZC credits, active subscription plan, and agent message quotas. This is unambiguous and distinguishes it from sibling channel/series/video tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: whenever account balance, credits, plan, or quotas are needed. However, it does not explicitly state conditions for use or mention any alternatives, though no sibling tool overlaps with this purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_channel_detailsA
Get detailed information about a specific channel, including settings, characters, styles, and publish slots.
Args: channel_id: Channel UUID or slug.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of indicating the operation's nature. 'Get' clearly signals a read-only, non-destructive action, and listing the returned categories provides useful behavioral expectations. It does not mention auth or error behavior, but for a simple read operation 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and front-loaded with the main action and scope, followed by a single args note. Every sentence adds value, and there is no unnecessary filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter detail-retrieval tool with an output schema present, the description covers the essential purpose and parameter semantics. Return values are naturally handled by the output schema, and there is no missing information needed to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema only says channel_id is a string, while the description explicitly explains it accepts a 'Channel UUID or slug'. This adds crucial semantic meaning that the schema lacks, fully compensating for the 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('specific channel'), and enumerates the returned information: settings, characters, styles, and publish slots. This clearly differentiates it from sibling tools like list_channels or get_channel_stats by indicating a focused, single-item detail retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context of retrieving detailed information about one specific channel implies its use case, but the description does not explicitly name alternatives or state when not to use it. Sibling tools are not referenced, so the agent must infer the appropriate selection from the name and wording.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_channel_statsA
Get channel performance statistics, KPI summaries, and total video counts.
Args: channel_id: Optional channel UUID or slug.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the transparency burden. 'Get' implies a read-only operation, and 'Optional channel UUID or slug' discloses the accepted input format, but the description does not state what happens when channel_id is omitted, any permissions needed, or data freshness behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, front-loaded with the main purpose, and the Args line provides the one critical parameter detail without unnecessary elaboration. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter) and the presence of an output schema, the description is mostly complete. The main gap is the lack of clarity about the behavior when channel_id is omitted, but the output schema covers return-value expectations, so this is not a major deficiency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage and only declares the parameter as a nullable string. The description adds meaningful semantics by specifying that channel_id can be a UUID or slug and is optional, which goes beyond the raw schema and reduces ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose with a specific verb ('Get') and resource ('channel performance statistics, KPI summaries, and total video counts'). It semantically distinguishes this from the sibling get_channel_details by focusing on performance/KPI data rather than generic channel details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when channel performance/KPI data is needed, but it never explicitly states when to prefer this over get_channel_details or any other sibling. There are no exclusions, alternatives, or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_queue_statusA
Inspect active rendering and processing jobs in the yzturkey video pipeline.
Returns the list of videos currently being rendered, scene completion counts, and progress percentages.
Args: channel_id: Optional channel UUID or slug to filter by.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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 clearly indicates a read-only inspection operation and describes the returned data. It does not mention authentication, rate limits, or empty-queue behavior, but for a simple status-read tool the operational behavior is sufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the core purpose, and then lists return contents and the only argument. Every sentence earns its place, and the Args section is clearly formatted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple one-parameter read-only tool with an output schema present. The description covers what the tool does, what it returns, and what the optional parameter means, making it complete for an agent to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only shows channel_id as an optional string/null with a default of null. The description adds real meaning by explaining it is a channel UUID or slug used to filter the queue status. Since there is only one parameter and it is fully explained beyond the schema, this is well handled.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('inspect') and a specific resource ('active rendering and processing jobs in the yzturkey video pipeline'), and clarifies what is returned: videos currently being rendered, scene completion counts, and progress percentages. This clearly differentiates it from siblings like search_video_archive or generate_video_batch.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: this tool is for inspecting active/current queue jobs, not historical results. It does not explicitly name an alternative or say 'use search_video_archive for completed videos,' so it stops short of a full when/when-not explanation, but the intended use is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_series_detailsA
Get details of a specific series, including all themes/videos inside it and their statuses.
Args: series_id: Series/Batch UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| series_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. The word 'Get' implies a read-only operation, and the description discloses the returned content. However, it does not explicitly confirm non-mutating behavior, mention auth requirements, error cases, or any operational limits, leaving room for clearer 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise: one purpose sentence and a short Args block. The main function is front-loaded, every word earns its place, and there is no redundant detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a single parameter and the presence of an output schema, the description covers the essential return aspects (themes/videos and their statuses). It doesn't need to fully describe the output structure because the schema exists. It omits edge cases or error handling, but that is acceptable for a straightforward read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description's Args block adds meaningful context: series_id is a 'Series/Batch UUID', going beyond the schema's bare string type. This is sufficient for the single-parameter interface, though it could have been slightly more detailed about the expected UUID format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), resource ('details of a specific series'), and enumerates what is included (all themes/videos and their statuses). This clearly distinguishes it from list_series (which likely lists series) and update_series_settings (which modifies).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it: when you have a specific series_id and need composed details including themes/videos. However, it does not explicitly state when to prefer this over sibling tools like list_series, nor does it offer any exclusions or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_channelsA
List all social media channels (workspaces) belonging to your yzturkey account.
Returns channel names, IDs, slugs, Channel DNA (channelContext), visual styles, aspect ratios, and total batch/video counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral transparency burden. The 'Returns...' wording and explicit list of output fields (names, IDs, slugs, channelContext, visual styles, aspect ratios, batch/video counts) signal a read-only listing operation and disclose the response content. It does not discuss auth or rate limits, but these are not critical for a simple list call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the first sentence states the action and scope, and the second lists the return fields. Every sentence earns its place with no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with an output schema, the description is complete enough for an agent to select and invoke it correctly. It clarifies scope ('all channels', 'your account') and enumerates the returned data, leaving no critical gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema already fully covers parameter semantics. The description adds no parameter-specific detail, consistent with the baseline of 4 for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'List all social media channels (workspaces)' belonging to the yzturkey account. It also enumerates the returned fields, making the tool's purpose distinct from get_channel_details, create_channel, and update_channel_settings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys that this tool is for account-wide enumeration of channels, and the 'all' scope plus zero parameters implies it is not for fetching a single channel's details. It does not explicitly name sibling alternatives, but the context is adequate for an agent to know when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_seriesA
List all video series (batches) inside a specific channel.
Args: channel_id: Channel UUID or slug.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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. The verb 'List' clearly indicates a read-only operation, but the description does not mention pagination, ordering, error behavior, or any practical constraints. It provides the core behavior but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose. The Args section is minimal and directly adds value by clarifying the accepted identifier formats. Every sentence 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter list operation, the description is largely complete: it states what is listed, the scope, and the accepted parameter format. The presence of an output schema covers return-value expectations. Minor gaps include lack of explicit read-only confirmation and absence of edge-case behavior, but these are not critical for a straightforward list call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only provides the parameter name and type, while the description adds that channel_id is a 'Channel UUID or slug.' This is meaningful semantic information that fully compensates for the 0% schema description coverage and is sufficient for an agent to supply the correct value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List') and resource ('video series (batches)') scoped to a specific channel, clearly distinguishing it from sibling tools like list_channels and get_series_details. The parenthetical '(batches)' adds helpful domain context without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that the tool requires a specific channel and lists all series within it, but it does not explicitly mention when to prefer this over related tools or when not to use it. Usage context is present but only at an implied level; no alternatives or exclusions are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_video_archiveA
Search past produced videos across your channel archive.
Args: channel_id: Optional channel UUID or slug to filter by. query: Search term (keyword, title, or concept). module_type: Filter by module: 'veo', 'faceless', 'quiz', 'map', 'photo_post'. status: Filter by status: 'published', 'completed', 'pending', 'queued', 'failed'. limit: Max results to return (1-50, default 10).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| status | No | ||
| channel_id | No | ||
| module_type | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it only restates the search operation and parameter filters. It does not disclose read-only behavior, auth requirements, rate limits, or how the archive is matched (e.g., partial match vs exact), leaving behavioral expectations mostly to inference.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One crisp purpose sentence followed by a compact Args block; every line adds value and no filler. The most important scope statement is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All five parameters are documented with allowed values and defaults, and the output schema covers return-shape expectations. The only notable gap is the absence of usage vs alternatives and explicit optionality for non-channel_id params, but invocation-critical information is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description compensates by explaining every parameter: channel_id filter, query search term, module_type allowed values, status allowed values, and limit range/default. This is exactly the enrichment the schema lacks.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence names a specific verb ('Search'), a precise resource ('past produced videos'), and a scope ('across your channel archive'), so an agent knows what the tool operates on. It does not explicitly contrast with sibling list_series/list_channels, but the search-vs-list distinction is fairly clear from the name and wording.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No sentence tells the agent when to prefer this over list_series/list_channels or when not to use it. The parameter list implies filtering/retrieval use, but there is no explicit guidance about search semantics or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_channel_settingsA
Update channel settings or Channel DNA (channelContext).
Whenever you research new content or adjust the channel's creative direction, update the channelContext here to keep all future videos aligned with the channel DNA.
Args: channel_id: Channel UUID or slug. channel_context: Updated Channel DNA instruction. name: Updated channel name. description: Updated channel description. aspect_ratio: '9:16' or '16:9'. language: 'tr' or 'en'. visual_style_id: Preset visual style UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| language | No | ||
| channel_id | Yes | ||
| description | No | ||
| aspect_ratio | No | ||
| channel_context | No | ||
| visual_style_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose a meaningful behavioral effect: updating channelContext keeps all future videos aligned with the channel DNA. However, it does not clarify whether null fields mean 'leave unchanged', whether the update is reversible, or what side effects occur beyond future alignment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured: a direct opening statement, one useful usage sentence, then a clear Args list. Nothing is redundant, though the Args list is somewhat long because there are seven parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter mutation tool with no annotations and no schema descriptions, this description covers purpose, usage, parameter meaning, and downstream effect. An output schema exists, so return values need not be explained. The main remaining gap is update semantics for null/omitted fields, but overall the agent has enough to call it correctly in most cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the Args list compensates by covering all 7 parameters with useful meaning. It adds concrete constraints such as 'Channel UUID or slug', allowed aspect ratios, allowed languages, and 'Preset visual style UUID', going beyond the bare schema property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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: 'Update channel settings or Channel DNA (channelContext)'. It clearly identifies what is modified and distinguishes itself from sibling tools like update_series_settings by focusing on channel-level settings and DNA.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit trigger: 'Whenever you research new content or adjust the channel's creative direction, update the channelContext here'. This tells the agent when the tool is appropriate. It does not explicitly mention alternatives or exclusions, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_series_settingsA
Update series (batch) settings, production parameters, and override options.
Args: series_id: Series/Batch UUID. name: New name for the series. production_mode: 'faceless', 'veo', 'quiz', etc. video_model: Model wireKey. force_external_tts: Boolean override for TTS. duration_min_sec: Minimum duration in seconds. duration_max_sec: Maximum duration in seconds. labels: Comma-separated tags. settings: Key-value dictionary of override settings.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| labels | No | ||
| settings | No | ||
| series_id | Yes | ||
| video_model | No | ||
| production_mode | No | ||
| duration_max_sec | No | ||
| duration_min_sec | No | ||
| force_external_tts | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral disclosure burden. It explains that the tool updates settings and override options, but does not disclose whether fields are partially or fully replaced, whether empty/null values clear settings, what permissions are required, whether changes are reversible, or what side effects may occur on linked series.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a concise summary line followed by a clean, scannable Args list. Every parameter line adds real value, and there is no redundant text or repetition of schema type information. The main purpose is front-loaded and the structure is easy for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a 9-parameter mutation tool with no annotations, the description explains each parameter but lacks broader context: no guidance on partial updates, no constraints on combinations, no clarification of what 'override options' means operationally, and no indication of whether successful updates return anything meaningful. Output schema exists, so return values are less critical, but behavioral context is still incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the Args list covers all 9 parameters with meaningful semantic hints: series_id is a UUID, production_mode has examples, video_model is a wireKey, durations are in seconds, labels are comma-separated, and settings is a key-value dictionary. This substantially compensates for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Update' with a clear resource: 'series (batch) settings, production parameters, and override options'. It names the resource type explicitly ('series/batch'), which distinguishes it from the sibling update_channel_settings and related series tools, so an agent can identify the right tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not state when to use this tool versus alternatives. It does not mention that get_series_details is for reading, create_series for creating, or update_channel_settings for channel-level updates. The intended usage is only implied by the tool name and first line, with no explicit exclusions or routing guidance.
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.
14 tool updates
v0.1.0- First observed
check_duplicate_idea - First observed
create_channel - First observed
create_series - First observed
generate_video_batch - First observed
get_account_balance - First observed
get_channel_details - First observed
get_channel_stats - First observed
get_queue_status - First observed
get_series_details - First observed
list_channels - First observed
list_series - First observed
search_video_archive - First observed
update_channel_settings - First observed
update_series_settings
TDQS
Scored across 14 tools
Most tools have clearly distinct purposes, with list/get/create/update pairs cleanly separated for channels and series. create_series and generate_video_batch have some conceptual overlap, but their descriptions make clear that one sets up series metadata while the other queues actual video production.
All tool names follow lowercase snake_case with a predictable verb_noun structure: list_*, create_*, get_*_details, update_*_settings, plus a few additional action verbs like generate_, search_, and check_. This makes the set highly consistent and easy to navigate.
14 tools is well-scoped for the domain, which spans account info, channel management, series management, video generation, archive search, duplicate detection, and queue monitoring. Each tool addresses a distinct workflow step without feeling padded.
The suite covers channel and series lifecycle operations well, with create/read/update coverage, plus video generation, search, duplicate checking, and monitoring. Missing delete endpoints for channels/series and lack of cancel/retry for queued jobs are notable but workable gaps.
Maintenance
Related MCP Connectors
YouTube transcripts, search, channel/playlist listings and upload tracking for AI agents.
Create and manage cinematic AI video renders through the Future Video Studio Agent API.
Build, run, schedule, and publish AI video pipelines to YouTube and TikTok from any MCP client.
Remote MCP server for AI.TV creators — delegate account operations to your AI agent over MCP.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to generate narrated videos from topics or scripts, with stock footage, home videos, or local AI clips.2MIT
- AlicenseAqualityBmaintenanceLet AI agents watch videos: local transcripts, speaker labels, scenes, chapters and exact-moment search from any video URL or file. Fully local, no API keys.42AGPL 3.0
- AlicenseBqualityCmaintenanceEnables AI agents to edit videos locally by inspecting media, applying templates, cutting clips, and delivering finished files, with memory of human preferences.183Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to manage YouTube channels directly, including video publishing, SEO optimization, playlist curation, community interaction, and traffic analytics, all through local OAuth.1MIT