Skip to main content
Glama

Studio Natali – hair salon booking (Říčany, CZ)

Server Details

Book a haircut with Vilma Strakatá, Studio Natali Říčany (CZ): prices, free times, SMS-verified.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A4.1/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct role in the booking flow: browsing hairdressers, browsing services, checking availability, starting a booking, and confirming it. There is no overlap or ambiguity between the tools.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: list_hairdressers, list_services, find_available_times, request_booking, confirm_booking. The naming is uniform and predictable.

Tool Count5/5

Five tools is well-scoped for a booking-focused server. Each tool maps to a necessary step in the customer journey without redundancy or bloat.

Completeness4/5

The core booking lifecycle is covered: discover services/hairdressers, check availability, request booking, and confirm with SMS code. Minor gaps exist such as no cancellation or viewing existing bookings, but these are not essential to completing a new reservation.

Available Tools

5 tools
confirm_bookingPotvrdit rezervaci kódem z SMSBInspect

Finish the booking with the 6-digit code the customer received by SMS. At most 3 attempts per verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
smsCodeYes
verificationTokenYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already carry readOnlyHint=false, idempotentHint=false, destructiveHint=false, so the description doesn't need to restate mutation. It adds the 3-attempt limit, which is a useful behavioral detail beyond the schema, but doesn't discuss side effects, reversibility, or error behavior. 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?

Two concise sentences front-load the core purpose ('Finish the booking') and add the key constraint (3 attempts) without any filler. Every word earns its place.

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

Completeness2/5

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

There is no output schema, so the description should describe return behavior. It also leaves verificationToken unexplained and doesn't state what happens on failure/success. The attempt limit is helpful, but the definition is incomplete for a tool that finalizes a booking.

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 has 0% description coverage, so the description must compensate for both parameters. It explicitly covers smsCode ('6-digit code the customer received by SMS'), but verificationToken is only vaguely implied by 'per verification' and never named or explained. This leaves a required parameter underdocumented.

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

Purpose4/5

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

Description clearly states a specific action ('Finish the booking') with the resource (booking) and the mechanism (6-digit SMS code). This distinguishes it from siblings like request_booking, though it doesn't explicitly name alternatives, so not a 5.

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 the use case: after the customer has received the SMS code, the agent finishes the booking. It gives a clear condition for use (having the code) and a constraint (at most 3 attempts), but doesn't explicitly say when NOT to use it or name the alternative.

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

find_available_timesVolné termínyA
Read-only
Inspect

Find free start times on a given day for the selected services. The salon works Monday–Friday; weekends and Czech public holidays are closed.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYesDay in YYYY-MM-DD (Europe/Prague).
serviceIdsYesService ids from list_services.
hairdresserIdNoOptional; defaults to the hairdresser offering the first service.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already mark the operation read-only; the description adds the useful behavioral constraint that the salon is closed weekends and Czech public holidays. It does not cover edge cases like no availability or response format, but this is acceptable for a read-only lookup with annotation support.

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?

Two sentences with no filler: the first states the core action and target, the second adds a relevant operating-hours constraint. All content earns its place and is front-loaded.

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 a read-only lookup tool with a fully documented schema and readOnlyHint, the essentials are present: date, services, optional hairdresser, timezone, and open days. The lack of an output schema and no explicit statement about the response format is a minor gap, but it does not prevent correct invocation.

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 coverage is 100%, so date, serviceIds, and optional hairdresserId are fully documented in the schema. The description mentions 'given day' and 'selected services' but adds no parameter-level meaning beyond what the schema already provides, matching the baseline.

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 action ('Find free start times'), a precise resource ('a given day for the selected services'), and implicitly differentiates itself from the confirm/request/list siblings by being an availability lookup. The working-hours sentence adds scope without blurring the purpose.

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 gives clear context: it should be used to discover free start times for selected services on a specific date, and it notes closed days. It does not explicitly name alternatives or when-not-to-use cases, but the context is sufficient to distinguish it from the booking and list siblings.

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

list_hairdressersKadeřniceA
Read-only
Inspect

List hairdressers who accept online bookings.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, covering the safety profile. The description adds the inclusion criterion 'who accept online bookings,' which is useful, but it does not disclose other behavioral details such as response contents or ordering. It does not contradict 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?

A single sentence that is front-loaded with the action and key filter. Every word earns its place, and there is no redundant filler.

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 a zero-parameter, read-only list tool, the description is nearly complete: it states what is listed and the key eligibility filter. It does not detail return fields, but the tool name and simple nature of the operation make this a minor gap rather than a functional one.

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?

The tool has zero parameters and an empty schema, so there are no parameter semantics to document. The baseline of 4 for no-parameter tools is appropriate, and the description correctly adds no unnecessary parameter information.

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 uses a specific verb ('List') and resource ('hairdressers who accept online bookings'), clearly distinguishing it from siblings like list_services and request_booking. The filtering criterion is explicit and makes the tool's role obvious.

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

Usage Guidelines3/5

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

The description implies that this tool is for browsing available hairdressers before actions like find_available_times or request_booking, but it does not explicitly say when to prefer it over alternatives. Usage context is reasonable but left to inference.

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

list_servicesCeník a službyA
Read-only
Inspect

List all bookable hair services with id, price (price_type "starts_at" = starting price, CZK), duration in minutes, category and hairdresser id.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false. The description adds useful behavioral semantics beyond those: 'bookable' scoping, 'starts_at' as a starting price in CZK, duration units, and association with hairdresser IDs. 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?

A single well-organized sentence that front-loads the action and resource, then lists the relevant output fields with clarifications. Every part earns its place and there is no filler.

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?

For a parameterless, read-only list tool with no output schema, the description is sufficient: it names all key fields, clarifies price_type and currency, and states duration units. The sibling context makes its role in the booking flow clear.

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?

The tool has zero parameters and schema description coverage is 100%, so the description has no parameter burden. The baseline 4 applies because there is nothing meaningful to add.

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 states a specific verb ('List') and resource ('all bookable hair services'), then enumerates the returned fields. This clearly distinguishes it from sibling tools like list_hairdressers, which list people, and the booking tools, which perform actions.

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 gives clear context: this is a read-only catalogue for available services and their pricing/duration. It does not explicitly state when not to use it or name alternatives such as list_hairdressers or request_booking, so it stops short of a 5.

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

request_bookingPožádat o rezervaciAInspect

Start a booking. Sends a 6-digit verification code by SMS to the customer. Call only after the customer explicitly agreed to the terms and privacy notice (see server instructions). Returns verificationToken for confirm_booking.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYes
noteNo
timeYesStart time from find_available_times.
serviceIdsYes
customerNameYes
customerEmailYes
customerPhoneYesMobile number, e.g. +420 777 123 456. The SMS code goes here.
hairdresserIdNo
termsAcceptedYesMust be true: the customer agreed to the terms and privacy notice.

TDQS

A4/5.0
Behavior4/5

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

Annotations provide readOnlyHint=false and openWorldHint=true, and the description adds useful behavioral detail beyond those: it sends a 6-digit SMS code and requires prior customer consent. It would be stronger if it stated whether the slot is actually reserved at this point or only held, but the key side effects are disclosed.

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 with no filler. It front-loads the primary action, then states the side effect, the critical precondition, and the return value. Every sentence contributes to correct usage.

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

Completeness3/5

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

With nine parameters, no output schema, and sparse schema descriptions, the description covers the main behavioral contract but leaves gaps. It mentions the verificationToken return value and the terms precondition, yet it does not explain the overall booking lifecycle, what happens after verification, or the meaning of several required parameters. It is adequate but not fully complete for a tool of this complexity.

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 only 33%, so the description should compensate for undocumented parameters. It does not explain date, time, serviceIds, customerName, customerEmail, hairdresserId, or note. The only parameter-related behavior in the description is the termsAccepted precondition, which maps to the schema but adds little semantic value.

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 a specific verb and resource: 'Start a booking.' It further differentiates from sibling confirm_booking by explaining this step sends an SMS verification code and returns a verificationToken for the confirmation step, so an agent can identify the correct tool in the flow.

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 gives an explicit precondition: 'Call only after the customer explicitly agreed to the terms and privacy notice.' It also hints at sequencing by mentioning the token is for confirm_booking. It does not explicitly list exclusions or when-not-to-use alternatives, but the context is clear enough for correct usage.

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.

  1. 5 tool updates
    • First observedconfirm_booking
    • First observedfind_available_times
    • First observedlist_hairdressers
    • First observedlist_services
    • First observedrequest_booking

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to search products, inspect ingredients and nutrition facts, manage the shopping cart, and review order history on Vilgain.cz.
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables querying children's swimming course listings from plaveckaakademia.sk with complex filters and cross-category slot finding, all through natural language.
    GPL 3.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources