Skip to main content
Glama

Final POS – Custom POS Builder

Create category

hub_create_category

Create a product category. Call get_categories FIRST — a second "Drinks" is easy to make and there is no merge. Pass parentId to make it a subcategory; leave it out for a top-level one. The cabinet's own form asks for a description, so ask the merchant for one rather than inventing it. This does NOT move any product into the category — do that with update_product and its categoryIds.

Input Schema

NameRequiredDescriptionDefault
nameYesCategory name as the merchant said it, e.g. "Beverages"
imageNoImage URL, or a Lucide icon reference like "lucide:coffee"
parentIdNoParent category id from get_categories — a name is rejected. Omit for top level
sortOrderNoPosition among its siblings, lowest first. Omit to leave it unsorted
descriptionNoShort description shown in the cabinet

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered. The description goes further by disclosing that duplicates cannot be merged (irreversibility-adjacent) and that no products are moved as a side effect, plus guidance to source the description from the merchant. It stops short of auth/permission or response-shape detail, so a 4 rather than 5.

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?

Five tight sentences, each carrying distinct information (purpose, prerequisite, parameter branching, field-sourcing rule, exclusion+alternative). Front-loaded with the core action and no filler or restatement of the title.

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?

With no output schema and a create tool whose annotations already state the safety profile, the description supplies everything needed to invoke it correctly: dedup prerequisite, nesting behavior, field guidance, and explicit scope boundaries. Nothing material is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so baseline is 3. The description still adds semantic value beyond the schema: parentId controls subcategory vs top-level nesting, and the description field should be supplied by the merchant rather than invented. That is real meaning layered on top of the structured fields.

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?

Opens with a specific verb+resource ('Create a product category') and immediately distinguishes itself from the update path by stating what it does NOT do (move products into the category). An agent can separate it from hub_update_category, hub_import_categories, and hub_create_product 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 prerequisite ('Call get_categories FIRST'), the reason (duplicates are easy to make and there is no merge), and a named alternative for the adjacent task ('do that with update_product and its categoryIds'). This is exactly the when-to-use / when-not / alternative structure the dimension rewards.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.