Skip to main content
Glama

Youfiliate Smart Links

Server Details

Create geo-targeted affiliate smart links, pull analytics, and rewrite YouTube descriptions.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
andrewmpierce/youfiliate-mcp
GitHub Stars
0

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 18 of 18 tools scored. Lowest: 3.5/5.

Server CoherenceA
Disambiguation5/5

Every tool targets a distinct resource or action: smart link CRUD and health, YouTube connection and migration, preferences, and analytics. Even similar stats tools are clearly separated by aggregate vs. per-link scope.

Naming Consistency5/5

All tools follow the consistent 'youfiliate_verb_noun' pattern in snake_case. Verbs like create, get, update, delete, list, check, connect, disconnect, preview, start, rollback are used predictably.

Tool Count5/5

18 tools cover smart link management, YouTube integration, and analytics without being excessive. Each tool serves a specific purpose, and the count is appropriate for the domain's complexity.

Completeness5/5

The tool surface provides full CRUD for smart links, health checks, stats (individual and aggregate), preferences, and a complete YouTube migration lifecycle (connect, preview, start, status, list, rollback). No obvious gaps.

Available Tools

18 tools
youfiliate_connect_youtubeAInspect

Initiate YouTube OAuth connection. Returns a URL the user must open in their browser.

    The user must open the returned URL in their web browser to authorize
    Youfiliate to access their YouTube channel. The OAuth callback is handled
    in the browser — this tool only returns the authorization URL.

    Does NOT read or modify any YouTube data. The OAuth flow is completed
    in the user's browser.

    Common errors:
    - Already connected: disconnect first with `youfiliate_disconnect_youtube`.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

The description adds significant behavioral context beyond annotations. It explains that the OAuth callback happens in the user's browser, the tool only returns the URL, and it explicitly states that it does not read or modify YouTube data. This complements the annotations (readOnlyHint=false, destructiveHint=false) by clarifying the tool's side effects on the server state vs. YouTube data. No contradiction with annotations.

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

Conciseness5/5

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

The description is concise yet comprehensive, using multiple paragraphs to structure information. The first sentence states the purpose, followed by user instructions, a clarification about data modification, and common errors. Every sentence adds value without redundancy. The length is appropriate for the tool's complexity.

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?

Given the tool's simplicity and the presence of an output schema and annotations, the description is sufficiently complete. It covers the OAuth process, user actions needed, error scenarios, and the tool's limitations. The only minor gap is the lack of parameter documentation, but the parameter is optional and self-explanatory from its schema. Overall, it provides a full picture.

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

Parameters2/5

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

The input schema has a single parameter (response_format) with a default value and enum, but the description does not mention or explain this parameter. With schema description coverage at 0%, the description should compensate, but it fails to add any meaning beyond what the schema already provides. The parameter is simple, but the omission reduces usefulness for an agent.

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

Purpose5/5

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

The description clearly states it initiates YouTube OAuth connection and returns a URL. It uses specific verbs ('Initiate', 'returns a URL') and specifies the resource ('YouTube OAuth connection'). It distinguishes itself from sibling tools by explicitly noting that it does not read or modify YouTube data, which differentiates it from tools like youfiliate_disconnect_youtube or youfiliate_get_youtube_status.

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

Usage Guidelines4/5

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

The description provides context on when to use the tool (to initiate OAuth) and includes a common error scenario ('Already connected: disconnect first with youfiliate_disconnect_youtube'). However, it does not explicitly state when not to use it or mention alternatives like checking status with youfiliate_get_youtube_status before connecting. The guidance is clear but lacks explicit exclusion criteria.

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

youfiliate_disconnect_youtubeA
DestructiveIdempotent
Inspect

Disconnect your YouTube account from Youfiliate.

    IMPORTANT: Always confirm with the user before executing this action.
    The `confirm` parameter must be set to true. This removes stored OAuth
    tokens. You will need to reconnect to use the auto-migration feature.

    Does NOT modify any YouTube data or video descriptions.

    Common errors:
    - Not connected: no YouTube account to disconnect.
    - confirm=False: you must set confirm=True after getting user confirmation.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior5/5

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

Description adds context beyond annotations: explains removal of OAuth tokens, idempotent effect, and that it does not modify YouTube data. No contradictions with annotations.

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

Conciseness5/5

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

Efficiently structured with paragraphs and bullet points. Every sentence provides essential information. No redundancy.

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?

Given simple tool with one parameter, annotations cover destructive and idempotent nature, and description covers all needed context: confirmation, side effects, and errors. Output schema exists, so return values are covered.

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 already describes confirm parameter well. Description adds value by explaining token removal and auto-migration consequence. Schema coverage is high, so baseline is 3; extra context raises to 4.

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?

Description explicitly states 'Disconnect your YouTube account from Youfiliate' with a clear verb and resource. It distinguishes itself from sibling tools like connect_youtube and get_youtube_status by its specific action.

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

Usage Guidelines4/5

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

Provides explicit requirement to confirm with user and set confirm=true. Lists common errors, including when not connected. Could mention alternatives like reconnecting, but clear enough.

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

youfiliate_get_aggregate_statsA
Read-onlyIdempotent
Inspect

Get aggregate click analytics across all your smart links.

Returns total clicks, top countries, devices, and referrers across your entire account for the specified period. Does NOT modify any data.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already mark read-only, idempotent, non-destructive. Description adds explicit statement 'Does NOT modify any data', reinforcing behavioral traits without contradiction.

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?

Very concise, bulleted list, front-loaded with main purpose. No extraneous text.

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?

Covers purpose, behavior, and key parameters. With output schema present, return values are sufficiently hinted. No gaps for this simple tool.

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?

Description mentions 'specified period' vaguely but does not detail parameters beyond schema. Schema descriptions exist for period and response_format, but description adds no extra semantics.

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?

Description clearly states it gets aggregate click analytics across all smart links, listing specific metrics. Distinct from sibling tools like get_smart_link_stats (per-link) and list_smart_links.

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?

Implies usage for account-wide stats over a period, and explicitly says it does not modify data. Does not explicitly contrast with alternatives, but context hints at differentiation.

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

youfiliate_get_migration_statusA
Read-onlyIdempotent
Inspect

Get the status and progress of a specific migration.

    Returns detailed status including videos processed, links created,
    and any errors. Does NOT modify any data.

    Common errors:
    - Migration not found: check the ID or use `youfiliate_list_migrations`.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior5/5

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

The description explicitly states 'Does NOT modify any data,' which aligns with annotations (readOnlyHint=true, destructiveHint=false). It also details what the return includes (videos processed, links created, errors), adding value beyond the annotations.

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

Conciseness5/5

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

The description is concise and front-loaded: the first sentence states the purpose, followed by relevant details and common errors. Every sentence is valuable and well-structured.

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?

Given the simple parameter (one UUID), presence of output schema, and annotations covering safety, the description provides sufficient context. It mentions the key return fields and error handling, making it complete for an agent to use.

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

Parameters3/5

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

The input schema has one required parameter 'id' with a UUID pattern description. The tool description does not elaborate on the parameter beyond what the schema provides. Since schema description coverage is 0% (the description does not mention parameter semantics), and the parameter is straightforward, a score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Get the status and progress of a specific migration.' The verb 'Get' and resource 'migration status' are specific, and it distinguishes from sibling tools like 'youfiliate_list_migrations' or 'youfiliate_start_migration'.

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

Usage Guidelines4/5

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

The description provides guidance on when to use this tool (to get detailed status of a specific migration) and includes common error handling ('Migration not found: check the ID or use youfiliate_list_migrations'). It falls short of explicitly stating when not to use it, but it is clear enough.

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

youfiliate_get_preferencesA
Read-onlyIdempotent
Inspect

Get your current smart link preferences/defaults.

Returns default settings applied to newly created smart links. Does NOT create or modify any data.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint; the description adds that it returns default settings and does not modify data, consistent with annotations.

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

Conciseness5/5

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

The description is three short sentences, each adds value, front-loaded, and avoids unnecessary detail.

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

Completeness4/5

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

Given the output schema and annotations, the description covers purpose and behavior adequately. The optional parameter is minor; overall it's sufficiently complete.

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

Parameters3/5

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

The description does not mention the response_format parameter. Schema description coverage is 0%, and the description does not compensate for the parameter's meaning, though the parameter is simple.

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

Purpose5/5

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

The description clearly states the tool gets smart link preferences/defaults, with a specific verb and resource. It distinguishes from sibling tools like youfiliate_update_preferences.

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 when to use by stating it returns default settings for new smart links and explicitly says it does not modify data, providing clear guidance for safe use.

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

youfiliate_get_youtube_statusA
Read-onlyIdempotent
Inspect

Check if your YouTube account is connected.

    Returns connection status, channel name, and scope information.
    Does NOT modify any data or initiate any connections.

    Common errors:
    - Not connected: use `youfiliate_connect_youtube` to connect.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

Annotations already indicate readOnly, idempotent, and non-destructive. The description adds that it does not initiate connections and lists return fields, but does not disclose other behavioral details like rate limits.

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

Conciseness5/5

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

Three clear, front-loaded sentences covering purpose, behavior, and error handling with no redundancy.

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?

Given the presence of an output schema (as indicated by context), the description adequately covers all necessary aspects: purpose, return data, non-modification, common error, and alternative tool. No gaps remain.

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

Parameters2/5

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

The description does not mention the 'response_format' parameter, relying solely on the schema. With low schema description coverage (0%), the description should compensate but does not, though the parameter is simple and the schema provides basic info.

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

Purpose5/5

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

The description clearly states the tool checks YouTube connection status and returns specific data (channel name, scope). It distinguishes from sibling tools like youfiliate_connect_youtube.

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 explicitly says the tool does not modify data and provides an error scenario with a link to a specific alternative tool (youfiliate_connect_youtube) for when not connected.

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

youfiliate_list_migrationsA
Read-onlyIdempotent
Inspect

List your YouTube description migrations with pagination.

Returns a paginated list of all migrations. Does NOT modify any data.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description reinforces that it does not modify data, but adds no further behavioral insight (e.g., rate limits, response size). No contradiction with annotations.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the action and resource, and contains no extraneous information. Every sentence serves a purpose.

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

Completeness4/5

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

Given an output schema exists (context indicates true) and annotations provide safety info, the description adequately covers the tool's purpose and behavior. It could mention pagination details but remains sufficient for a simple list tool.

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% per context, yet the description provides no explanation of parameters (limit, offset, response_format). The description only mentions pagination without detailing how to use pagination parameters.

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

Purpose5/5

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

The tool name 'youfiliate_list_migrations' and description clearly state it lists YouTube description migrations with pagination. It distinguishes itself from sibling tools like 'get_migration_status' or 'start_migration' which handle individual migrations.

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 explicitly states the tool lists migrations and does not modify data, implying safe, read-only usage. However, it lacks explicit guidance on when to use this versus alternative tools or when not to use it.

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

youfiliate_preview_migrationA
Read-onlyIdempotent
Inspect

Preview a YouTube description migration without making changes.

    Performs a dry-run analysis showing how many videos and links would be
    affected. Does NOT modify any data or YouTube descriptions. Requires
    a connected YouTube account.

    Common errors:
    - YouTube not connected: connect first with `youfiliate_connect_youtube`.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already mark readOnly and idempotent. Description reinforces non-modification and adds useful error context, providing value beyond the annotations.

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

Conciseness5/5

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

Four concise sentences covering purpose, behavior, and error handling, with no redundancy.

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?

Covers all essential aspects: purpose, safety, prerequisites, and common errors. Output schema exists, so return format is already documented.

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

Parameters2/5

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

The description does not mention any parameters. With schema description coverage at 0% per context, the description fails to compensate, though the schema itself contains descriptions for each parameter.

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

Purpose5/5

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

The description clearly states the tool performs a dry-run preview of YouTube description migration without making changes, distinguishing it from migration execution tools like youfiliate_start_migration.

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?

Explicitly notes that no modification occurs and requires a connected YouTube account. Mentions common error and prerequisite tool (youfiliate_connect_youtube). Does not explicitly exclude cases where it should not be used, but the purpose is implied.

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

youfiliate_rollback_migrationA
Destructive
Inspect

Roll back a completed migration, restoring original YouTube descriptions.

    IMPORTANT: This modifies YouTube video descriptions. Always confirm with
    the user before executing. This reverts all video descriptions to their
    pre-migration state.

    The rollback runs asynchronously. Requires a connected YouTube account.

    Common errors:
    - Migration not found or not in a rollback-eligible state.
    - YouTube not connected: reconnect first.
    - confirm=False: must set confirm=True after user confirmation.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already indicate destructiveHint=true and readOnlyHint=false. The description adds value by revealing that the rollback runs asynchronously and modifies YouTube video descriptions, which is beyond the annotations. There is no contradiction.

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

Conciseness4/5

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

The description is structured into a concise header, an important note, and a list of common errors. It is front-loaded with the core purpose. Each sentence adds value, though the paragraph on common errors could be slightly more compact.

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

Completeness4/5

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

Given the present output schema (not shown) and annotations, the description covers the essential behavioral aspects: destructive action, async execution, user confirmation requirement, and prerequisites. It is complete enough for an agent to correctly invoke the tool.

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?

Despite the context indicating 0% schema description coverage, the input schema actually includes descriptions for both id and confirm. However, the tool description does not add significant new parameter semantics beyond what the schema provides. It reiterates that confirm must be set to true after user confirmation, but does not explain id or other nuances.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Roll back a completed migration, restoring original YouTube descriptions.' It uses a specific verb ('roll back') and resource ('migration'), and distinguishes it from sibling tools like youfiliate_start_migration and youfiliate_preview_migration.

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

Usage Guidelines5/5

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

The description explicitly warns about the destructive nature ('Always confirm with the user before executing'), lists prerequisites ('Requires a connected YouTube account'), mentions asynchronous execution, and provides common errors including the need to set confirm=True. This gives clear when-to-use and 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.

youfiliate_start_migrationA
Destructive
Inspect

Start a YouTube description migration to convert links to smart links.

    IMPORTANT: This modifies YouTube video descriptions. Always confirm with
    the user before executing. Describe the scope (number of videos/links
    affected from the preview) and ask for explicit confirmation.

    The migration runs asynchronously. Use `youfiliate_get_migration_status`
    to track progress.

    Requires a connected YouTube account.

    Common errors:
    - YouTube not connected: connect first.
    - Migration already in progress: wait for it to complete.
    - confirm=False: must set confirm=True after user confirmation.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior5/5

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

Annotations mark destructiveHint=true, and the description adds behavioral details: 'This modifies YouTube video descriptions,' asynchronous execution, requirement for user confirmation, and common error scenarios. No contradictions with annotations; the description adds valuable context beyond the structured fields.

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

Conciseness4/5

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

The description is well-structured with a clear initial sentence, important usage note, and bullet points for common errors. It is front-loaded but slightly verbose with repeated emphasis on confirmation. Could be tightened without losing meaning.

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?

Given the tool's complexity (destructive, asynchronous, multiple parameters), the description covers prerequisites, async tracking, error handling, and confirmation requirement. The output schema exists so return values need not be explained. It is complete for an agent to use the tool safely.

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% (the tool description does not explain parameters). Although the input schema itself has descriptions, the tool description only partially compensates for the `confirm` parameter by noting it must be set to true after user confirmation. It fails to describe `auto_geo_rules` and `conversion_mode`, leaving gaps for a low-coverage scenario.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Start a YouTube description migration to convert links to smart links.' The verb 'start' and resource 'migration' are specific, and it distinguishes itself from sibling tools like `youfiliate_preview_migration` and `youfiliate_get_migration_status`.

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

Usage Guidelines5/5

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

The description explicitly instructs to always confirm with the user before executing, describes when to use `youfiliate_get_migration_status` to track progress, and lists common errors with solutions. It provides clear guidance on prerequisites (connected YouTube account) and when not to use (migration already in progress).

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

youfiliate_update_preferencesA
Idempotent
Inspect

Update your smart link preferences/defaults.

    Changes apply to newly created links only — existing links are
    not affected. Does NOT delete any data.

    Common errors:
    - Invalid redirect_type: must be '301' or '302'.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already indicate non-read-only, non-destructive, and idempotent. The description adds value by stating 'Does NOT delete any data', clarifying the scope to new links, and listing common errors. This enhances transparency beyond the annotations.

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

Conciseness5/5

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

The description is concise with three sentences, front-loading the purpose, and uses a bullet for common errors. Every sentence is useful and no fluff.

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

Completeness4/5

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

Given the tool's moderate complexity and the presence of an output schema, the description covers the main aspects: purpose, scope, non-destructiveness, and common errors. It could mention idempotency or authentication, but the annotations already cover idempotency, so it is sufficiently complete.

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

Parameters3/5

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

The input schema already provides descriptions for all parameters (e.g., default_redirect_type, default_geo_rules_enabled). The description only adds a note about the redirect_type validation, which is already captured by the schema's enum. Since schema coverage is high, the description's incremental contribution is minimal.

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

Purpose5/5

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

The description clearly states 'Update your smart link preferences/defaults', specifying the verb 'update' and the resource 'smart link preferences/defaults'. It distinguishes from sibling tools like 'get_preferences' (read-only) and 'create_smart_link' (individual link creation).

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 explains that changes apply only to newly created links, not existing ones, which is a key usage guideline. However, it does not explicitly compare to alternatives or state when not to use, so the guidance is clear but not exhaustive.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.