Skip to main content
Glama

Classify item facets

classify_facets
DestructiveIdempotent

Store your agent's facet classifications and tags on a saved item. Use after analyzing its evidence; use query_by_facets to retrieve labeled items or classify_hook for provider-run hook classification.

Instructions

Store your agent's facet classifications and tags on a saved item. Use after analyzing its evidence; use query_by_facets to retrieve labeled items or classify_hook for provider-run hook classification. Validates supplied labels, replaces those facet values and adds deduplicated tags. Missing performance tier and length bucket can be derived from saved metadata. Returns applied facets and tag counts; no model call runs here.

Input Schema

NameRequiredDescriptionDefault
tagsNoFree-form labels to attach to the saved item or draft.
topicNoStored topic label used to classify or select examples.
formatNoContent format label, such as tutorial or talking_head; see get_facet_taxonomy.
video_idYesStable saved-item identifier from a search or capture result; not necessarily a YouTube ID.
hook_typeNoStored opening-hook classification to write or match; see get_facet_taxonomy for hook labels.
length_bucketNoDuration bucket: short, medium, long or deep; see get_facet_taxonomy.
performance_tierNoChannel-relative performance label: over, average or under.
production_styleNoFree-form description of how the item was produced.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.12.1

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare the mutation profile (destructiveHint=true, idempotentHint=true), and the description adds real value beyond them: it says supplied labels are validated, that facet values are replaced while tags are added with deduplication, that missing performance_tier/length_bucket are derived from saved metadata, and that no model call runs. The one residual ambiguity for a destructive tool is whether omitting a facet parameter leaves the existing value untouched or clears it; that is not stated.

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

Conciseness5/5

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

Four sentences, front-loaded with what the tool does and what to use instead, then write semantics, then the derivation default, then the return shape. No filler and no repetition of the title.

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

Completeness4/5

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

For an 8-parameter destructive mutation with no output schema, the description covers purpose, routing, write semantics, defaults, and the return payload (applied facets and tag counts). It stops short of stating what happens on validation failure or whether the replace is all-or-nothing, which matters given destructiveHint=true and no output schema.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description goes further by telling the agent that performance_tier and length_bucket may be omitted because they can be derived from saved metadata, which directly affects how the caller fills the schema. It also signals that supplied labels are validated, so invalid enum/string values will be rejected. Slight deduction because per-parameter meaning is left entirely to the schema.

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

Purpose5/5

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

States a specific verb and resource (store facet classifications and tags on a saved item) and immediately names the two sibling tools it is not: query_by_facets (retrieval) and classify_hook (provider-run hook classification). An agent can distinguish it from the large sibling list without opening any schema.

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?

Gives an explicit precondition ("Use after analyzing its evidence") and routes to alternatives by function ("use query_by_facets to retrieve labeled items or classify_hook for provider-run hook classification"). This is when-to-use plus named alternatives, not implied usage.

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

Deploy Server

Other Tools