Skip to main content
Glama

HairDora Salon Scheduling

Add a salon client

create_client
DestructiveIdempotent

Use this when someone asks to add a new client to a salon. Returns the client's id, name, salon and language; the phone and email given are saved but never returned. Not for changing an existing client.

Input Schema

NameRequiredDescriptionDefault
nameYesThe client's full name.
emailNoEmail address.
phoneNoMobile number, with the country code when known.
salonIdNoId of the salon, from list_salons. Leave it out when the user has one salon.
languageNoLanguage for their messages, as a code such as en, it or pt-BR. Defaults to the salon language.
requestIdYesA unique id you choose for this client, such as a UUID. Calling again with the same requestId returns the first client instead of adding a second one.

Output Schema

NameRequiredDescriptionDefault
clientYes
statusYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior4/5

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

The annotations already declare idempotentHint=true and destructiveHint=true, so the safety profile is partly covered. The description adds genuinely non-obvious behavior: phone and email are persisted but never echoed back, which prevents an agent from re-fetching to verify them. It does not discuss what happens on duplicate names or what destructiveHint means in practice for a create.

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

Conciseness5/5

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

Three short sentences: trigger first, then return behavior, then exclusion. Nothing is padded and every sentence carries information an agent would otherwise have to guess.

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?

With an output schema present and full parameter documentation, the remaining description burden is small, and the description covers trigger, return shape, and exclusion. The only gap is ambiguous mutation semantics (destructiveHint=true on a create) that the description leaves for the annotation to imply.

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

Parameters3/5

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

Schema description coverage is 100%, including requestId idempotency and the salonId default, so the schema carries the parameter burden. The description only adds the implication that phone and email may be absent ("given") and does not clarify required versus optional fields or formats.

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 gives a specific verb and resource ("add a new client to a salon") and frames it in the caller's own terms ("when someone asks to add a new client"). It also names what it is not ("Not for changing an existing client"), which separates it from update_client among the siblings.

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

Usage Guidelines4/5

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

It provides a clear trigger condition and an explicit exclusion for the modify case, which is the most likely confusion given siblings update_client and get_client. It does not name update_client by name or mention prerequisites, so it stops just short of full routing guidance.

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.

Resources