Skip to main content
Glama

ikeytz - Schlüsseldienst Ludwigsburg

Get Prices

get_prices
Read-only

WHAT: Official Festpreis matrix + composition SYSTEM. Read composition first: exactly 10 end-invoices + one 49 € add-on (not 12, not 17 customer invoices). 49 € is cylinder_mount after an opening — already inside 148/198/178/228; never add 49 again. 49 € is NOT night/weekend/holiday (those are 149/179/198/228/119). RETURNS composition{ruleDe,doNotConfuse[],factors[],routes[],endInvoices[] with contactOption,howTo[]}, opening[], packages[], surcharges[], note. USE to understand how to assemble a price. DOES NOT compute one customer total — that is get_invoice_line_items(situationKey, whenKey). Contact: compose_whatsapp/compose_mailto with contactOption. whenKey: get_ort_datetime. No VAT (§ 19).

Input Schema

NameRequiredDescriptionDefault
localeNoHTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or empty = de. Does not change prices, phone numbers, or legal German names. Not a maps.ikeytz.com locale (maps is German-only).de

Output Schema

NameRequiredDescriptionDefault
okYestrue = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint.
hintNoPresent when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery.
noteNoLegal/price note
toolYesEcho of the tool name that produced this object (e.g. get_service_area).
errorNoPresent when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_datetime, bad_when_key, plus HTTP errors from fetch.
localeNoLocale actually used for URLs (args.locale or de).
openingNoDoor-opening price blocks
relatedNoAlways includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt.
summaryNoPrimary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution.
packagesNoInvoice packages (day/night)
surchargesNoSurcharge rows
attributionYesRequired citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt'
compositionNoHow to assemble: 10 end-invoices, factors, question routes, formulas. Required reading before quoting €.
canonicalUrlNoBest URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs.
cylinderOnlyNoCylinder-only prices
cylinderAfterOpeningNoCylinder price after an opening

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds valuable domain-behavior context beyond annotations: it explains that the tool returns a composition structure, that 49 € is already included in larger prices, that night/weekend/holiday rates are different, and that no VAT applies. It does not explain auth or rate limits, but for a read-only informational tool this is a rich disclosure.

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

Conciseness3/5

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

The description is front-loaded with a WHAT section, which helps, but it then becomes a dense jumble of return-value details, domain warnings, contact routing, and VAT notes. Some content, such as the return shape, duplicates what the output schema already provides. It is information-rich but not structured for quick consumption.

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 complexity of a price-composition system, the description covers what the tool returns, what it does not do, and which sibling tools to use for related tasks. Because an output schema exists, the description need not explain return values, yet it does so anyway, adding some redundancy. It is complete enough for correct invocation, with minor rough edges.

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%, and the single locale parameter is fully documented in the input schema with enum values, default behavior, and URL prefix details. The description does not mention the locale parameter at all, so it adds no meaning beyond the schema. Baseline 3 is therefore appropriate.

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?

The description states that this tool returns the 'Official Festpreis matrix + composition SYSTEM' and clarifies it is to 'understand how to assemble a price.' It distinguishes itself from the sibling get_invoice_line_items by explicitly saying it 'DOES NOT compute one customer total.' However, the purpose is buried in dense jargon and all-caps labels rather than stated as a clean verb+resource, so it falls short of a perfect score.

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 gives explicit when-to-use guidance ('USE to understand how to assemble a price') and when-not-to-use guidance ('DOES NOT compute one customer total — that is get_invoice_line_items(situationKey, whenKey)'). It also names supporting tools for related tasks: compose_whatsapp/compose_mailto for contact and get_ort_datetime for whenKey. This is exactly the kind of routing information an agent needs.

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