Skip to main content
Glama

Blumen Komander München

Server Details

First German florist with a public MCP server. Search bouquets and order flowers via AI in Munich.

Ownership verified
Status
Healthy
Uptime
99.9% over 37 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
Severin2k/blumen-komander-mcp
GitHub Stars
0
Server Listing
blumen-komander-mcp

TDQS

A4.1/5.0

Scored across 11 tools

Disambiguation4/5

Each tool targets a distinct step in the flower ordering flow, but create_cart, add_to_cart, and update_cart all involve modifying a cart and could be confused without careful reading. check_availability and check_express also share a similar 'check delivery option' shape, though their purposes are clearly separated.

Naming Consistency5/5

All 11 tool names follow the same snake_case verb_noun pattern: search_flowers, create_cart, add_to_cart, update_cart, get_checkout_link, get_order_status, etc. This makes the set highly predictable and easy for an agent to navigate.

Tool Count5/5

With 11 tools, the server is well-scoped for a flower shop ordering domain. Each tool maps to a meaningful capability, from product discovery and imagery to cart handling, checkout, and order tracking, without unnecessary bloat.

Completeness4/5

The core lifecycle is covered: search flowers, view images, check delivery options, create and update a cart, add items, obtain a checkout link, and track orders. Minor gaps exist, such as no explicit remove-from-cart or cart-view tool, but agents can work around these using update_cart and create_cart.

Available Tools

11 tools
add_to_cartAInspect

Legt einen weiteren Artikel in einen bestehenden Warenkorb - einen zweiten Strauß oder Zubehör wie Vase, Grußkarte, Pralinen, Ballon oder Prosecco aus der Liste zubehoer von search_flowers. Braucht die cart_id aus create_cart. Solange nicht bezahlt wurde, ist das jederzeit möglich.

ParametersJSON Schema
NameRequiredDescriptionDefault
cart_idYesID des bestehenden Warenkorbs aus create_cart
quantityNoAnzahl (Standard: 1)
variant_idYesID der Variante, die dazu soll - ein weiterer Strauß oder Zubehör wie Vase, Grußkarte, Pralinen, Ballon oder Prosecco aus der Liste zubehoer von search_flowers
wunsch_textNoNur beim Wunschstrauß: Beschreibung, was gebunden werden soll

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already signal a non-read-only, non-idempotent mutation. The description adds useful behavioral context: it is possible anytime before payment, and each call adds an additional item, which aligns with idempotentHint=false. No contradictions 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?

The description is compact and front-loaded with the core action, followed by concrete examples and constraints. Every sentence contributes useful information without 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 4-parameter mutation tool with no output schema, the description covers prerequisites, item source, and the payment-state condition. It does not describe the response shape or error cases, but the provided information is sufficient for selecting and invoking the tool correctly in most flows.

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%, so all parameters are already documented. The description repeats and reinforces the cart_id and variant_id source hints, but does not add meaningfully beyond 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?

The description states a concrete action: adding another item to an existing cart, with specific examples (second bouquet, vase, card, etc.). It clearly differentiates from create_cart by requiring an existing cart_id and from search_flowers by referencing its zubehoer list.

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 explicit context: it requires a cart_id from create_cart, only adds to an existing cart, and is allowed until payment. It does not explicitly mention update_cart as the alternative for changing the cart, but the usage context is clear.

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

check_availabilityA
Read-only
Inspect

Prüft ob Blumen Komander München an einem bestimmten Datum in eine bestimmte PLZ liefern kann. Lieferung ist bei Blumen Komander immer kostenlos - keine Liefergebühr. Gibt Same-Day Cutoff zurück.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYesLieferdatum im Format YYYY-MM-DD
postalCodeNoZiel-Postleitzahl in München (z.B. 80799)

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, and the description goes beyond by adding that delivery is always free and that the tool returns the same-day cutoff. This adds useful behavioral context without contradicting the read-only nature.

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 with no filler: the primary purpose is front-loaded, followed by the free-delivery fact and the return value. Every sentence earns its place.

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 simple read-only tool with two well-documented parameters, the description covers the key behaviors. However, it does not clarify the optional nature of postalCode or the format/meaning of the same-day cutoff, and there is no output schema to fill that gap.

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%, with both date and postalCode already documented for format and example. The description merely echoes 'date' and 'PLZ' without adding new semantic details, so the baseline 3 applies.

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 clearly states the tool checks delivery availability for Blumen Komander Munich by date and postal code, using specific verbs and resources. It does not explicitly distinguish itself from the sibling check_express, though its scope (date/PLZ) is unambiguous.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives such as check_express or other delivery-related siblings. The description only states what the tool does, not when it should be selected.

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

check_expressA
Read-only
Inspect

Fragt den Preis für eine Express-Lieferung per Kurier an, ohne etwas anzulegen. Der Preis kommt live vom Kurierdienst und gilt etwa 15 Minuten. Vor create_cart mit express: true aufrufen und dem Kunden den Zuschlag nennen - die normale Lieferung ist kostenlos, Express kostet extra.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesVollständige Lieferadresse, z. B. 'Leopoldstraße 1, 80802 München'

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint. The description adds valuable context: the price is fetched live from the courier and valid for about 15 minutes, which is time-sensitive behavior beyond the annotations. It also reinforces the no-side-effect nature. No contradiction.

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 sentences, each earning its place: purpose, live/validity behavior, and explicit workflow instruction. The description is front-loaded with the core action and contains no 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 simple one-parameter read-only tool with no output schema, the description covers purpose, side-effect-free behavior, price validity, and the exact call sequence relative to create_cart. The only minor gap is that the return format is not explicitly described, but 'Preis anfragen' makes the returned value inferable.

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% for the single 'address' parameter, which already includes a full example. The description does not add parameter-specific detail beyond the workflow context, so the baseline of 3 applies.

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 ('Fragt den Preis an') with a clear resource (Express-Lieferung per Kurier) and explicitly disclaims side effects ('ohne etwas anzulegen'), distinguishing it from create_cart. It is non-tautological and immediately clear what the tool does.

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?

Provides explicit when-to-use guidance: 'Vor create_cart mit express: true aufrufen' and explains the pricing context (normal delivery free, express costs extra). It names the exact adjacent workflow, leaving no ambiguity about the calling sequence.

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

check_order_detailsA
Read-only
Inspect

Prüft, welche Angaben für eine Bestellung schon vorliegen und welche noch fehlen - ohne einen Warenkorb anzulegen und ohne etwas zu buchen. Alle Parameter sind freiwillig, die KI kann also jederzeit mit dem aktuellen Zwischenstand fragen. Die Antwort trennt fehlende Pflichtangaben von fehlenden freiwilligen Angaben, erklärt zu jeder, wofür sie gebraucht wird bzw. was ohne sie passiert, und liefert unter 'dem_kunden_sagen' einen fertigen Satz für den Kunden sowie den kompletten Bestellablauf. Vor create_cart aufrufen, damit der Kunde den ganzen Ablauf kennt, ohne die Website zu öffnen.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNoStadt
emailNoE-Mail des Bestellers
phoneNoTelefonnummer Empfänger
quantityNoAnzahl
address_1NoStraße und Hausnummer
last_nameNoNachname Empfänger
first_nameNoVorname Empfänger
variant_idNoID der gewählten Produktvariante
postal_codeNoPLZ
billing_cityNoStadt Rechnungsadresse
delivery_dateNoLieferdatum YYYY-MM-DD
greeting_cardNoText für die Grußkarte
payment_providerNoZahlungsart
billing_address_1NoStraße Rechnungsadresse
billing_last_nameNoNachname Rechnungsadresse
billing_first_nameNoVorname Rechnungsadresse
billing_postal_codeNoPLZ Rechnungsadresse

TDQS

A4.7/5.0
Behavior5/5

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

The description goes beyond the readOnlyHint annotation by explicitly stating it does not create a cart or book anything. It also describes the output structure, including how missing required vs optional fields are handled and the 'dem_kunden_sagen' field, providing rich behavioral context.

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

Conciseness4/5

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

The description is three sentences and well-structured, with the main purpose first, then usage and output details. It is slightly verbose with some repetition (e.g., 'damit der Kunde' appears twice), but remains focused and clear.

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 tool with 17 optional parameters and no output schema, the description provides sufficient context: the purpose, when to use it, and what the response contains. It could mention error cases or more about edge scenarios, but overall it is complete enough for an agent to use it correctly.

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 schema already covers all parameters with descriptions (100% coverage). The tool description adds that all parameters are optional and the AI can query with the current status, which is a useful general semantic note but does not detail individual parameters.

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 the tool's purpose: checking which order details are present and which are missing. It also explicitly differentiates itself from sibling tools like create_cart by noting it does not create a cart or book anything.

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 provides explicit usage guidance: it should be called before create_cart so the customer knows the entire process without opening the website. It also clarifies that all parameters are optional and the tool can be used at any time with the current status.

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

create_cartAInspect

Legt einen Warenkorb bei Blumen Komander an und fügt einen Blumenstrauß hinzu. Setzt Lieferdatum, Lieferadresse, Zahlungsmethode und optional eine Grußkarte. PFLICHTANGABEN: gewählter Strauß, Lieferdatum, Vor- und Nachname des Empfängers, Straße und Hausnummer, PLZ, E-Mail des Bestellers. FREIWILLIG, aber dem Kunden aktiv anbieten: Telefonnummer des Empfängers (sonst kann der Fahrer nicht anrufen, wenn niemand öffnet), Grußkartentext (sonst kommt der Strauß ohne Karte), abweichende Rechnungsadresse (sonst gilt die Lieferadresse), Zahlungsart (Standard Kreditkarte/Apple Pay/Google Pay = stripe, sonst paypal oder sepa), Anzahl (Standard 1) und Ort (Standard München). Die Antwort enthält unter 'angaben' eine Liste aller nicht ausgefüllten Felder samt Kennzeichnung Pflicht/freiwillig und dem Satz 'dem_kunden_sagen' - diesen Hinweis dem Kunden weitergeben, damit er den kompletten Ablauf kennt, ohne die Website zu öffnen. Den vollständigen Bestellablauf liefert get_shop_info unter 'bestellablauf'.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNoStadt (Standard: München)
emailYesE-Mail des Bestellers
phoneNoTelefonnummer Empfänger
expressNotrue = Express-Lieferung per Kurier noch heute. Der Preis wird live bei Uber angefragt und als eigene Position berechnet. Vorher check_express aufrufen und dem Kunden den Preis nennen. Nicht mit Abholung kombinierbar.
quantityNoAnzahl (Standard: 1)
address_1NoStraße und Hausnummer - Pflicht bei Lieferung, entfällt bei Abholung
last_nameYesNachname Empfänger
first_nameYesVorname Empfänger
variant_idYesID der gewählten Produktvariante
pickup_timeNoNur bei Abholung: Wunschuhrzeit, z. B. '14:00'. Öffnungszeiten Mo-Fr 08:00-18:30, Sa 08:00-13:00.
postal_codeNoPLZ - Pflicht bei Lieferung, entfällt bei Abholung
wunsch_textNoNur beim Wunschstrauß: Beschreibung, was gebunden werden soll. Ohne diesen Text kann der Wunschstrauß nicht gebunden werden, er ist dort Pflicht.
billing_cityNoStadt Rechnungsadresse
delivery_dateYesLieferdatum YYYY-MM-DD, bei Abholung das Abholdatum
delivery_modeNolieferung (Standard) oder abholung im Laden, Heßstraße 37, 80798 München
greeting_cardNoText für die Grußkarte
payment_providerNoZahlungsmethode: stripe (Kreditkarte, Apple Pay, Google Pay), paypal oder sepa (SEPA-Lastschrift). Standard: stripe.
billing_address_1NoStraße Rechnungsadresse
billing_last_nameNoNachname Rechnungsadresse
billing_first_nameNoVorname Rechnungsadresse
billing_postal_codeNoPLZ Rechnungsadresse

TDQS

A4.3/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false), the description discloses meaningful behavioral traits: it returns a list of unfilled fields under 'angaben' with a customer-facing message 'dem_kunden_sagen' to be relayed, and it describes the data points it sets (delivery date, address, payment method, optional card). 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.

Conciseness4/5

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

The description is long but densely informative, front-loaded with the core purpose and organized with clear labels such as PFLICHTANGABEN and FREIWILLIG. It could benefit from line breaks or bullet points, but nearly every sentence carries useful information and nothing feels redundant.

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 tool with 21 parameters and no output schema, the description is remarkably complete. It covers required vs optional fields, defaults, response structure, how to communicate the full flow to the customer, and points to get_shop_info for the complete ordering workflow. The schema provides the remaining parameter-level detail.

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

Parameters5/5

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

The schema covers 100% of parameters, so the baseline is 3, but the description adds substantial operational meaning: it marks fields as PFLICHTANGABEN, lists optional-but-recommended fields with customer-facing rationales (e.g., phone so the driver can call, greeting card text so the bouquet arrives with a card), and states defaults (stripe payment, quantity 1, city München).

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 opens with a specific action: 'Legt einen Warenkorb bei Blumen Komander an' and clarifies that it also adds a bouquet and sets delivery/payment/optional greeting card details. This clearly identifies a create-operation on a cart and inherently differentiates it from add_to_cart and update_cart.

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 context for using the tool is implied: you use it to create a cart and place an order. The description gives practical guidance on which optional fields to offer the customer and how to handle the response, but it never explicitly states when to use create_cart versus add_to_cart/update_cart, and no exclusions or alternative triggers are provided.

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

get_order_statusA
Read-only
Inspect

Fragt den Status einer bestehenden Bestellung bei Blumen Komander ab - eingegangen, in Vorbereitung, unterwegs oder geliefert, inkl. Lieferdatum. Zur Verifikation werden Bestellnummer (aus der Bestellbestätigung) und die E-Mail-Adresse des Bestellers benötigt. Gibt keine Adressdaten zurück.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesE-Mail-Adresse des Bestellers (zur Verifikation)
order_numberYesBestellnummer (z.B. 114, steht in der Bestellbestätigung)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so no safety contradiction exists. The description adds valuable behavioral context beyond the annotation: verification is required via order number and email, the tool returns status including delivery date, and it deliberately omits address data. This helps the agent set expectations correctly.

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 compact and front-loaded with the core purpose, followed by the verification requirements and a clear non-return statement. Every sentence earns its place; there is no filler or repetition of the tool name or 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 a simple read-only status tool with two fully documented parameters and no output schema, the description covers the main behavioral aspects: what it returns, what inputs are needed for verification, and what it deliberately excludes. It could be slightly more complete by mentioning what happens with invalid order numbers, but overall it is sufficient.

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%, so the schema already documents both parameters. The description reinforces the verification purpose and specifies that the order number comes from the order confirmation, but it does not add substantial new semantics beyond what the schema already provides. Baseline 3 is appropriate.

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: it queries the status of an existing order, listing the possible statuses and that it includes the delivery date. It also explicitly notes that no address data is returned, which differentiates it from sibling tools like check_order_details.

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: use this tool to check an order's status, and it states the required verification inputs (order number from the confirmation and buyer's email). It does not explicitly name alternative siblings or provide when-not-to-use guidance, but the exclusion of address data provides useful routing context.

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

get_product_imageA
Read-only
Inspect

Liefert das Foto eines Straußes als echtes Bild, nicht nur als Link - der Kunde sieht den Strauß also im Chat, ohne die Website zu öffnen. Braucht handle oder product_id aus der Antwort von search_flowers. Standardmäßig kommt nur das Hauptbild; mit alle_bilder: true kommen die weiteren Ansichten (höchstens 3 pro Aufruf). Gezielt für die ein bis drei Sträuße aufrufen, über die der Kunde wirklich spricht, nicht für alle Suchtreffer - jedes Bild kostet Kontext.

ParametersJSON Schema
NameRequiredDescriptionDefault
handleNoHandle des Produkts, z. B. 'mary'. Steht in der Antwort von search_flowers.
product_idNoAlternativ die Produkt-ID aus search_flowers, z. B. 'prod_...'
alle_bilderNotrue = alle vorhandenen Ansichten (höchstens 3). Standard: nur das Hauptbild.

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses key behavioral traits: the return is an actual image rather than a URL, the default returns only the main image, alle_bilder: true returns up to three additional views, and each call consumes context. This goes well beyond the annotation's minimal signal.

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 sentences with no fluff. The purpose is front-loaded, followed by required inputs, default behavior, and usage caution. Each sentence adds a distinct and necessary piece of information without repetition.

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?

The description is complete for a simple read-only tool with no output schema. It tells the agent what the response is (image), how to get it (handle or product_id), what variants exist (main vs. all images), and the practical usage constraint. No required information 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 the baseline is 3. The description adds meaning beyond the schema by clarifying that handle or product_id come specifically from the search_flowers response and by explaining the default vs. alle_bilder behavior and the three-image cap. This enriches parameter understanding, though the schema already describes the fields accurately.

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 and resource ('Liefert das Foto eines Straußes als echtes Bild') and explicitly differentiates from a plain link, which distinguishes it from link-generating siblings. It also references the source response from search_flowers, making its role within the toolset unmistakable.

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: call it only for the one to three bouquets the customer is actually discussing, not for all search hits, and warns that each image costs context. It ties the required parameters to the output of search_flowers, which effectively routes the agent to the correct parent tool.

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

get_shop_infoA
Read-only
Inspect

Gibt allgemeine Informationen über Blumen Komander zurück - Öffnungszeiten, Liefergebiet, Kontakt, verfügbare Zahlungsmethoden.

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, so the safety profile is covered. The description adds useful behavioral context beyond the annotation by listing what categories of information are returned. It does not describe output formatting, but that is not required for a simple read-only info getter.

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 a single, efficient sentence that front-loads the action and resource, then lists the key content areas. Every word earns its place and there is no redundancy or 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 tool with no output schema, the description is complete: it tells the agent exactly what information will be provided. The listed categories are sufficiently specific for an agent to know when to call this tool and what to expect in return.

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 the schema is already fully descriptive with an empty properties object. The description adds no parameter-specific detail, but none is needed; a baseline of 4 is appropriate for a parameterless tool.

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 ('Gibt ... zurück') and a clear resource ('allgemeine Informationen über Blumen Komander'), then enumerates the exact content categories (opening hours, delivery area, contact, payment methods). This clearly differentiates it from siblings like get_order_status or search_flowers, which serve entirely different purposes.

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 provides clear context for when to use the tool: whenever general shop information is needed. It does not explicitly name alternatives, but no sibling tool covers shop-level information, so the usage context is unambiguous and no exclusions are necessary.

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

search_flowersA
Read-only
Inspect

Sucht verfügbare Blumensträuße bei Blumen Komander München. Filtert nach Anlass, Farbe, Stil und Budget. Gibt standardmäßig 24 Sträuße zurück, treffer_gesamt nennt die tatsächliche Zahl - mit offset lassen sich weitere nachladen. Zubehör wie Vasen, Ballons, Pralinen und Grußkarten steht getrennt unter zubehoer und ist kein Blumenvorschlag. Zu einem Strauß liefert get_product_image das Foto.

ParametersJSON Schema
NameRequiredDescriptionDefault
colorNoGewünschte Farbe
limitNoWieviele Sträuße zurückgeben (Standard 24, höchstens 50)
styleNoStil des Straußes
offsetNoFür weitere Seiten: wieviele Treffer überspringen
maxPriceNoHöchstpreis in EUR
minPriceNoMindestpreis in EUR
occasionNoAnlass für die Blumen
flower_typeNoBlumenart

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the description only needs to add contextual behavior. It adds the default page size (24), the total-hit field (treffer_gesamt), offset-based pagination, and the separate accessory output (zubehoer) — all useful beyond annotations. No contradictions.

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 sentences, each with distinct value: core search, pagination/total count, and result scope (accessories excluded, image alternative). Information is front-loaded and no words are wasted.

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 no output schema, the description tells the agent about treffer_gesamt, zubehoer, and the image lookup path, which is sufficient for a search tool. It doesn't detail the bouquet item fields, but filters and enum values fill most gaps. For an 8-parameter search, this is adequately complete.

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% and every parameter already has a description. The tool description summarizes filters by occasion/color/style/budget and mentions limit/offset, but adds no new semantics beyond the schema. Baseline 3 is appropriate.

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 opens with a clear verb phrase ('Sucht verfügbare Blumensträuße') and specifies the vendor/location. It explicitly lists filtering dimensions and distinguishes the results from accessories and image retrieval via get_product_image, setting it apart from sibling tools.

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 clear context: this is for searching bouquets, with pagination behavior. It explicitly excludes accessories ('kein Blumenvorschlag') and points to get_product_image for photos, offering partial alternative routing. It does not mention every sibling or state explicit when-not conditions, but the purpose is evident.

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

update_cartA
Idempotent
Inspect

Ändert einen bestehenden Warenkorb, statt einen neuen anzulegen: Liefer- oder Abholdatum, Adresse, Telefonnummer, E-Mail, Grußkartentext, Abholzeit oder Zahlungsart. Nur die Felder übergeben, die sich ändern. Bei neuem Datum oder neuer PLZ wird das Liefergebiet erneut geprüft und bei einem Problem nichts geändert. Ein bereits bezahlter Warenkorb wird abgelehnt.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNoStadt
emailNoE-Mail des Bestellers
phoneNoTelefonnummer Empfänger
cart_idYesID des bestehenden Warenkorbs
address_1NoStraße und Hausnummer
last_nameNoNachname Empfänger
first_nameNoVorname Empfänger
pickup_timeNoNur bei Abholung: Wunschuhrzeit
postal_codeNoPLZ
delivery_dateNoNeues Lieferdatum YYYY-MM-DD, bei Abholung das Abholdatum
greeting_cardNoNeuer Grußkartentext. Leerer Text entfernt die Karte.
payment_providerNoAndere Zahlungsart wählen

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations, the description discloses key behavioral traits: it re-validates the delivery area when date or postal code changes, atomically makes no changes if there's a problem, and rejects already-paid carts. These are critical side effects not derivable from the annotations alone. There is 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?

The description is compact, structured in three sentences: what it does, how to use it (partial update), and two important behaviors (delivery-area re-check, paid-cart rejection). Every sentence carries essential information with no redundancy or 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 12-parameter update tool with no output schema, the description covers the essential context: partial updates, validation triggers, atomicity on failure, and rejection conditions. It is sufficient for an agent to invoke the tool correctly and anticipate outcomes. No meaningful gaps remain.

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%, so the baseline is 3. The description lists the same set of fields as the schema and adds the general 'only changed fields' rule, but it doesn't add new per-parameter semantics beyond what the schema already supplies. It remains adequate without significantly enriching parameter definitions.

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 starts with 'Ändert einen bestehenden Warenkorb' (changes an existing cart), clearly distinguishing it from creating a new one. It then lists the specific fields that can be updated (delivery/pickup date, address, phone, email, greeting card, pickup time, payment method). This makes the tool's purpose unambiguous and differentiates it from siblings like create_cart and add_to_cart.

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 explicitly says 'Nur die Felder übergeben, die sich ändern' (only pass the fields that change), which is direct guidance for API usage. It also says 'statt einen neuen anzulegen' (instead of creating a new one), indicating when not to use this tool. However, it doesn't explicitly name alternative tools or provide a decision tree, so it stops short of full when-to-use-vs-alternatives coverage.

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. 4 tool updates
    • Addedadd_to_cart
    • Addedcheck_express
    • Changedcreate_cart8 fields changed
      • changedInput schema / properties / address_1 / description
        Previous value: -"Straße und Hausnummer"New value: +"Straße und Hausnummer - Pflicht bei Lieferung, entfällt bei Abholung"
      • changedInput schema / properties / delivery_date / description
        Previous value: -"Lieferdatum YYYY-MM-DD"New value: +"Lieferdatum YYYY-MM-DD, bei Abholung das Abholdatum"
      • addedInput schema / properties / delivery_mode
        Added value: +{
        +  "description": "lieferung (Standard) oder abholung im Laden, Heßstraße 37, 80798 München",
        +  "enum": [
        +    "lieferung",
        +    "abholung"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / express
        Added value: +{
        +  "description": "true = Express-Lieferung per Kurier noch heute. Der Preis wird live bei Uber angefragt und als eigene Position berechnet. Vorher check_express aufrufen und dem Kunden den Preis nennen. Nicht mit Abholung kombinierbar.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / pickup_time
        Added value: +{
        +  "description": "Nur bei Abholung: Wunschuhrzeit, z. B. '14:00'. Öffnungszeiten Mo-Fr 08:00-18:30, Sa 08:00-13:00.",
        +  "type": "string"
        +}
      • changedInput schema / properties / postal_code / description
        Previous value: -"PLZ"New value: +"PLZ - Pflicht bei Lieferung, entfällt bei Abholung"
      • addedInput schema / properties / wunsch_text
        Added value: +{
        +  "description": "Nur beim Wunschstrauß: Beschreibung, was gebunden werden soll. Ohne diesen Text kann der Wunschstrauß nicht gebunden werden, er ist dort Pflicht.",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "variant_id",
        -  "delivery_date",
        -  "first_name",
        -  "last_name",
        -  "address_1",
        -  "postal_code",
        -  "email"
        -]New value: +[
        +  "variant_id",
        +  "delivery_date",
        +  "first_name",
        +  "last_name",
        +  "email"
        +]
    • Addedupdate_cart
  2. 3 tool updates
    • Addedcheck_order_details
    • Addedget_product_image
    • Changedsearch_flowers2 fields changed
      • addedInput schema / properties / limit
        Added value: +{
        +  "description": "Wieviele Sträuße zurückgeben (Standard 24, höchstens 50)",
        +  "type": "number"
        +}
      • addedInput schema / properties / offset
        Added value: +{
        +  "description": "Für weitere Seiten: wieviele Treffer überspringen",
        +  "type": "number"
        +}
  3. 1 tool update
    • Addedget_order_status
  4. 1 tool update
    • Changedcreate_cart1 field changed
      • addedInput schema / properties / payment_provider
        Added value: +{
        +  "description": "Zahlungsmethode: stripe (Kreditkarte, Apple Pay, Google Pay), paypal oder sepa (SEPA-Lastschrift). Standard: stripe.",
        +  "enum": [
        +    "stripe",
        +    "paypal",
        +    "sepa"
        +  ],
        +  "type": "string"
        +}
  5. 5 tool updates
    • First observedcheck_availability
    • First observedcreate_cart
    • First observedget_checkout_link
    • First observedget_shop_info
    • First observedsearch_flowers

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server for the Roastify Developer API, letting AI agents browse the coffee catalog and generate packaging artwork, with paid tools settled in Bitcoin Lightning.
    Apache 2.0
  • A
    license
    B
    quality
    D
    maintenance
    A Minecraft MCP Server powered by Mineflayer API. It allows to control a Minecraft character in real-time, allowing AI assistants to build structures, explore the world, and interact with the game environment through natural language instruction
    8
    22
    35 npm
    743
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.