The Flowers Directory
Server Details
Send flowers in the US: search arrangements, same-day florist delivery by ZIP, checkout links
- Status
- Healthy
- Uptime
- 100.0% over 42 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 9 tools
Most tools have clearly distinct roles across search, delivery checking, checkout, florist lookup, and order status. The main overlap is between get_checkout_link and create_prefilled_checkout, though their descriptions distinguish a plain purchase link from a saved, prefilled checkout flow.
The set is consistently snake_case and mostly follows a verb_noun pattern such as search_arrangements, get_arrangement_details, and check_delivery. next_available_delivery is the main deviation because it lacks an explicit verb, but it remains readable and predictable.
Nine tools is well-scoped for a florist directory and checkout-assistance server. Each tool covers a meaningful step in browsing, delivery validation, checkout preparation, or order lookup without obvious filler.
The surface covers discovery, arrangement details, delivery availability, location-specific guidance, checkout links, and order status. Direct order placement, cancellation, and live tracking are intentionally handled on the website or via support contacts, so the main remaining gap is limited post-order management.
Available Tools
9 toolscheck_deliveryCheck delivery on a dateARead-onlyIdempotentInspect
Check whether florist delivery is available to a US ZIP code on one specific date. Availability is per ZIP and date, not per arrangement. Same-day delivery requires ordering before 1:00 PM in the recipient's local time zone, Monday through Saturday. When a date is unavailable, the result includes a reason (Sunday, past date or past the same-day cutoff) when one is known.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | Yes | Recipient 5-digit US ZIP code. | |
| date | Yes | Requested delivery date, YYYY-MM-DD, in the recipient's local date. |
Output Schema
| Name | Required | Description |
|---|---|---|
| zip | Yes | |
| date | Yes | |
| note | Yes | |
| reason | No | |
| available | Yes | |
| same_day_cutoff | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe, idempotent, read-only, open-world call, so the bar is lower. The description still earns credit by disclosing business rules not in structured fields: the 1:00 PM local-time same-day cutoff, Monday–Saturday operation, and that failures return a reason when known.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, front-loaded with the core question the tool answers, then scope, then timing rules, then failure behavior. Slight redundancy in restating the same-day cutoff and reason cases separately, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values needn't be spelled out, yet the description still tells the agent the result carries a reason field. For a two-param read-only availability check, the timing rules and failure semantics close every gap an agent would encounter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both zip (5-digit US ZIP) and date (YYYY-MM-DD, recipient local date) are already fully documented. The description adds only the framing that availability is per ZIP and date and the local-time-zone cutoff, which is a modest gain over the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (check delivery availability), and pins the scope precisely: per US ZIP code and one specific date, explicitly 'not per arrangement.' That scope statement also separates it from arrangement-level siblings like get_arrangement_details and search_arrangements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicit usage is clear from 'one specific date,' and the Sunday/past-date notes hint at when a check will fail. However, it never names an alternative such as next_available_delivery for finding a workable date, so the agent must infer the routing from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_prefilled_checkoutCreate a prefilled checkout linkAInspect
Save delivery details for one arrangement on theflowersdirectory.com for 24 hours and return a checkout link that opens with the arrangement in the cart and those details filled in, plus the price breakdown (exact total when a ZIP is given). Takes the recipient's name, venue, room or unit, card message and special instructions, with the ZIP and delivery date. It does not place an order or take payment: the customer adds the street address and phone numbers, checks the details, pays and places the order on the site.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | Recipient ZIP code; fills the ZIP field and gives an exact total including tax. | |
| code | Yes | Arrangement product code, e.g. T163-1A. | |
| date | No | Requested delivery date, YYYY-MM-DD. Requires zip. Selected at checkout if available. | |
| client | No | Name of the assistant or app making the request (used only for attribution, e.g. "chatgpt"). | |
| venue_name | No | Funeral home, hospital, church or business name, if delivering to one. | |
| card_message | No | Message printed on the enclosure card, including who it is from. | |
| room_or_unit | No | Apartment, suite, floor or hospital room number. | |
| recipient_name | No | Recipient's full name (for a funeral, e.g. "Family of Jane Smith"). | |
| special_instructions | No | Notes for the florist, e.g. the deceased's name and service time for a funeral. |
Output Schema
| Name | Required | Description |
|---|---|---|
| pricing | Yes | |
| product | Yes | |
| delivery | No | |
| product_url | Yes | |
| checkout_url | Yes | |
| how_to_order | Yes | |
| expires_in_hours | Yes | |
| prefilled_fields | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond annotations: the 24-hour retention window, that it does nothing irreversible (no order, no payment), what exactly gets prefilled, and what the customer must still supply. This makes the non-idempotent, open-world write safe and predictable to reason about.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two front-loaded sentences that open with the effect and lifetime before listing inputs and non-goals. Dense but every clause carries information; only the input enumeration mildly duplicates the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema and annotations, the description covers the remaining gaps: lifetime of the saved data, safety boundaries, and division of labor between agent and customer. Nothing needed to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and every parameter already documents itself, including the zip→exact total relationship. The description groups parameters by purpose but adds no syntax or format detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb+resource: saves delivery details for one arrangement for 24 hours and returns a checkout link with the cart prefilled plus a price breakdown. The 'does not place an order or take payment' clause separates it from order-placement flows, though it never names the close sibling get_checkout_link, leaving a possible ambiguity unresolved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear context for when to use it: when the customer wants a prefilled link rather than an immediate order, with the exact handoff described (customer adds street address, phone, pays). No explicit when-not or named alternative (e.g. get_checkout_link) is given, so it falls 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.
find_local_floristsFind local floristsARead-onlyIdempotentInspect
List florists located in a US city from The Flowers Directory's city pages, with addresses, phone numbers when listed, and the date each listing was last verified. These are directory listings: an order placed through The Flowers Directory is made and delivered by a florist in the Florist One network, which may or may not be one of the listed shops.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | ZIP code; used to find the city when no city is given. | |
| city | No | City name, e.g. "Worcester". | |
| limit | No | ||
| state | No | State name or 2-letter code, e.g. "MA". |
Output Schema
| Name | Required | Description |
|---|---|---|
| city | Yes | |
| note | Yes | |
| state | Yes | |
| florists | Yes | |
| city_page | Yes | |
| total_listed | Yes | |
| location_note | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a read-only, idempotent, non-destructive, non-open-world lookup. The description adds meaningful behavioral context beyond the annotations: it identifies The Flowers Directory city pages as the source, notes that phone numbers are only included when listed, provides a last-verified date, and explains that ordering through The Flowers Directory may not involve one of the listed shops. That caveat is especially useful for preventing misuse.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted text. The core action and scope are front-loaded, and the important directory-listing caveat follows immediately. It is appropriately sized for a lookup tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's purpose, data source, returned fields, and an important limitation about ordering and fulfillment. Annotations cover safety traits and an output schema exists, so the description need not explain return values. Minor gaps remain around how zip and city inputs interact, but the schema already documents that behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, with most parameters documented in the schema itself. The description adds no parameter-specific details and does not compensate for the undocumented limit parameter. Given that the schema carries most of the parameter meaning, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: list florists in a US city from The Flowers Directory's city pages. It also states what the listing includes (addresses, phone numbers when available, last-verified date), making the tool's output scope clear. It does not explicitly name sibling tools, but it implicitly distinguishes directory lookup from ordering tools by clarifying that these are directory listings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for finding local florist listings in a US city, and the second sentence warns that these are directory listings rather than order-placement tools. However, it does not explicitly say when to use this versus siblings like check_delivery or search_arrangements, nor does it state exclusions or alternatives. Usage is therefore inferable but not fully guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_arrangement_detailsGet arrangement detailsARead-onlyIdempotentInspect
Return full details for one arrangement by product code: all photos, size (height x width when the florist network publishes it), full description, flowers and colors, occasions it suits, price and total before tax, the substitution policy, and delivery terms. Use it to show a customer exactly what they are buying.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Arrangement product code, e.g. T163-1A. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | No | |
| code | No | |
| note | No | |
| size | No | |
| image | No | |
| price | Yes | |
| title | No | |
| colors | No | |
| images | Yes | |
| best_for | No | |
| delivery | Yes | |
| occasions | No | |
| attributes | No | |
| categories | Yes | |
| description | No | |
| product_url | No | |
| delivery_fee | Yes | |
| flower_types | No | |
| total_before_tax | Yes | |
| substitution_policy | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description adds genuinely useful behavioral nuance beyond that: size is only present 'when the florist network publishes it', and the response includes tax-inclusive totals, a substitution policy and delivery terms — expectations an agent would otherwise have to discover by trial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and lookup key before the field inventory. The long run-on enumeration of returned fields partially duplicates the output schema, which is the only wasted effort.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with an output schema and full annotation coverage, the description supplies what is needed to invoke it correctly and know what to expect. Only the error/not-found path and the upstream source of the code are left unstated, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter already carries an example ('T163-1A'). The description only restates that the lookup is by product code, adding no format, casing, or validation detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Return full details for one arrangement') with an explicit retrieval key (product code) and enumerates exactly what comes back. It reads clearly against the sibling search_arrangements, since the singular 'one arrangement by product code' signals a detail fetch rather than a search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Use it to show a customer exactly what they are buying' gives a concrete decision context for calling the tool. It does not, however, say where the code comes from (presumably search_arrangements) or what to do when a code is unknown, so no exclusions or alternatives are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_checkout_linkGet a purchase link with pricingARead-onlyIdempotentInspect
Return the purchase link for an arrangement plus a price breakdown. With a recipient ZIP the breakdown includes the exact delivery fee, tax and order total; with a ZIP and date it also confirms delivery availability. Opening the link adds the arrangement to the cart and opens the cart panel; the customer clicks Checkout and enters the recipient address, delivery date, card message and payment there.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | Recipient ZIP code, for an exact total including tax. | |
| code | Yes | Arrangement product code, e.g. T163-1A. | |
| date | No | Requested delivery date, YYYY-MM-DD. Requires zip. | |
| client | No | Name of the assistant or app making the request (used only for attribution, e.g. "chatgpt"). |
Output Schema
| Name | Required | Description |
|---|---|---|
| pricing | Yes | |
| product | Yes | |
| delivery | No | |
| checkout_url | Yes | |
| how_to_order | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, open-world behavior, while the description adds important non-obvious context: opening the link adds the arrangement to the cart and opens the cart panel. No annotation contradiction; auth and rate-limit details are not covered but are not central here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the tool purpose, then pricing conditions, then the post-link checkout flow. There is no repetition, and the longer sentence carries useful behavioral detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained in detail. The description covers pricing conditions and link behavior; it only omits failure/unavailable-date behavior and explicit sibling routing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds conditional meaning for zip and date beyond the schema field descriptions: exact delivery fee, tax, total, and delivery availability with date. Code and client semantics remain delegated to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Return the purchase link for an arrangement plus a price breakdown.' It describes the checkout-link context well, though it does not explicitly name a sibling alternative, so differentiation is clear but not fully explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains how ZIP and ZIP+date change the result, but does not say when to choose this tool over check_delivery, create_prefilled_checkout, or next_available_delivery. Usage is implied by the checkout purpose rather than directly routed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_delivery_location_guidanceDelivery guidance for a venueARead-onlyIdempotentInspect
Return practical guidance for sending flowers to a specific kind of place: funeral_home, place_of_worship, hospital, residence, business, senior_living. Covers which arrangement types are appropriate and which to avoid, venue rules (such as hospital units that do not allow flowers), what details the florist needs, which checkout field each detail goes in, timing, and suggested search filters. With a city and state or ZIP, also lists funeral homes (for funeral_home) or hospitals (for hospital) in that city from the directory, with addresses.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | ZIP code; used to find the city when no city is given. | |
| city | No | City name, for local venue listings. | |
| limit | No | Maximum venue listings to return. | |
| state | No | State name or 2-letter code, used with city. | |
| location_type | Yes | One of: funeral_home, place_of_worship, hospital, residence, business, senior_living. Common words such as church, nursing home, office or home are accepted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| avoid | No | |
| label | Yes | |
| guides | No | |
| timing | No | |
| collect | No | |
| appropriate | No | |
| budget_note | No | |
| local_venues | No | |
| location_type | Yes | |
| checkout_fields | No | |
| suggested_searches | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, non-destructive), so the description's job is to add semantics — and it does: it discloses that directory listings appear only for funeral_home and hospital types and only when city+state or ZIP is supplied. It doesn't explain how the guidance degrades without a location, which is the remaining gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose in the first clause, with supporting enumeration after. The middle content list is dense but each item (venue rules, checkout field mapping, timing, search filters) tells the agent something it would otherwise have to discover by calling.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Return values need not be described since an output schema exists, and the description adequately conveys scope, the required location_type, and the conditional territory-listing behavior. A fuller definition would note behavior when location_type is residence/business (no directory listing) and any validation failures.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3; the description earns extra by explaining the interaction the schema cannot — that city/state or ZIP unlocks local venue listings and that listing type depends on location_type. It doesn't clarify what happens with city but no state, or how limit interacts, so not a 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description has a clear verb ('Return practical guidance') and a precisely enumerated resource (the six venue types) plus the content covered: arrangement suitability, venue rules, checkout fields, timing, and filters. It does not explicitly distinguish itself from the closest sibling, check_delivery, so an agent must infer the boundary between 'guidance' and 'delivery feasibility'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: this is the tool to consult when sending to a funeral_home, hospital, etc. The description does give a conditional trigger ('With a city and state or ZIP, also lists funeral homes... or hospitals'), but it never says when to prefer this over check_delivery or find_local_florists, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_order_statusLook up an orderARead-onlyIdempotentInspect
Look up an existing order placed on The Flowers Directory, using the order number from the confirmation email and the email address used at checkout. Returns the items, scheduled delivery date, delivery city and whether that date is upcoming, today or past. It does not provide live courier tracking; for delivery confirmation, changes or cancellations it returns the order-help phone and text numbers.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Email address the purchaser used at checkout. | ||
| order_number | Yes | Order number from the confirmation email, e.g. 123456789. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| tracking | Yes | |
| order_help | Yes | |
| order_total | Yes | |
| order_number | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and open-world behavior, so the safety profile is covered. The description adds real value beyond that: it enumerates what is returned (items, scheduled date, city, temporal status) and explicitly scopes out live tracking, which is the main behavioral surprise an agent could hit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the action and inputs, then the return payload, then the exclusion. Every sentence carries information; it is slightly longer than strictly necessary but no sentence is filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, yet the description still usefully summarizes the returned fields, and it flags the absence of live tracking plus the fallback contact route. Nothing an agent needs to call this correctly or set expectations is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters self-documented, so the baseline is 3. The description corroborates the semantics (confirmation email, checkout email) but adds no syntax or format detail beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('look up an existing order') plus the exact identifying inputs (order number from confirmation email, checkout email). It implicitly separates itself from tracking tools by stating it does not provide live courier tracking, though it never names the sibling check_delivery explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear usage context: use when you have the order number and checkout email. It also sets an explicit exclusion ('does not provide live courier tracking') and redirects to the returned help phone/text numbers for confirmation, changes or cancellations. It stops short of naming alternative sibling tools by name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
next_available_deliveryFind the next delivery datesARead-onlyIdempotentInspect
List up to 14 upcoming delivery dates available to a US ZIP code, with the earliest date, whether same-day delivery is still possible right now in the recipient's local time (1:00 PM cutoff), and how long is left before the cutoff.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | Yes | Recipient 5-digit US ZIP code. |
Output Schema
| Name | Required | Description |
|---|---|---|
| zip | Yes | |
| note | Yes | |
| state | Yes | |
| same_day | No | |
| delivery_fee | No | |
| delivery_days | No | |
| earliest_date | Yes | |
| earliest_label | No | |
| available_dates | Yes | |
| recipient_local_time | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds real behavioral context beyond the annotations: a cap of 14 dates, a 1:00 PM local-time same-day cutoff, and a remaining-time-before-cutoff value. The annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so this supplementary timing logic is the value-add — though it doesn't say what happens outside the US or when no dates are available.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the result set size, then the three derived fields. Every clause carries information; nothing is padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with full annotations and an output schema, the description covers the search domain, output shape, and the timing rule that governs same-day results. Nothing an agent needs in order to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter and schema coverage is 100%, with the schema already documenting the 5-digit US ZIP pattern. The description adds little beyond 'available to a US ZIP code' — it does not say whether the ZIP must be the recipient's or how invalid/unserviceable ZIPs behave. Baseline 3 applies since the schema does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: lists upcoming delivery dates scoped to a US ZIP code, plus the earliest date and same-day feasibility. An agent knows exactly what it returns, though it never distinguishes itself from the sibling check_delivery, which likely overlaps on deliverability questions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: an agent can infer this is for 'when can this be delivered' questions, but there is no explicit when-to-use, when-not-to-use, or pointer to check_delivery as the alternative. Nothing is stated about what to do when the ZIP is not serviceable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_arrangementsSearch flower arrangementsARead-onlyIdempotentInspect
Search The Flowers Directory catalog of fresh flower arrangements and plants for US florist delivery, by occasion (birthday, sympathy/funeral, get well, anniversary, romance, new baby, thank you and more), color, flower type, arrangement type (vase, basket, standing spray, wreath, casket spray and more), size, budget and free text. Every result includes the product code used by the other tools, the arrangement price, a photo URL, total_before_tax (price plus the flat $19.99 delivery fee) and, when known, structured attributes: arrangement type, size tier, height and width in inches, stem count, container and who it suits (sender_fit). Returns up to 20 matches, best match first.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | One of: small (under 14 in), medium (14 to 22 in), large (over 22 in), tribute (easel, casket and floor pieces for funerals). | |
| limit | No | ||
| query | No | Free-text keywords matched against the title and description, e.g. "blue hydrangea in a vase" or "standing spray". | |
| budget | No | Maximum all-in amount in USD before tax (arrangement price + $19.99 delivery). Use this for "around $110"-style requests. | |
| colors | No | Colors that should appear in the arrangement (any match). Known values: red, pink, white, yellow, purple, lavender, orange, blue, green, cream, peach, coral, burgundy, gold, mixed. | |
| occasion | No | One of: sympathy, birthday, romance, anniversary, get_well, new_baby, thank_you, mothers_day, congratulations, wedding, just_because. "funeral" is accepted as sympathy. | |
| min_price | No | Minimum arrangement price in USD. | |
| flower_types | No | Flower types that should appear (any match). Known values: roses, lilies, tulips, sunflowers, orchids, carnations, daisies, hydrangeas, alstroemeria, chrysanthemums, gerberas, lisianthus, snapdragons, dahlias, peonies, irises, delphinium, larkspur, gladiolus, calla lilies, freesia, ranunculus, asters, proteas, anthuriums, succulents, stock, poinsettia, plants, mixed. | |
| arrangement_type | No | One of: vase_arrangement, basket, floor_basket, table_arrangement, centerpiece, plant, dish_garden, wreath, standing_spray, standing_heart, standing_cross, casket_spray, casket_adornment, urn_tribute. Common words like "vase", "spray", "easel", "casket" or "urn" are accepted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| count | Yes | |
| filters | Yes | |
| currency | Yes | |
| products | Yes | |
| delivery_fee | Yes | |
| total_matches | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds real behavioral value on top: result cap of 20, best-match ordering, and the return payload including product code, photo URL, and total_before_tax defined as price plus the flat $19.99 delivery fee.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the search scope before the return contract. It is dense but nearly every clause carries a distinct fact (filters, result cap, price semantics, structured attributes); a slightly tighter split of the long return sentence would improve scanability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 9-parameter, all-optional search tool with an output schema and full annotation coverage, the description is complete enough to call correctly: it explains the filter surface, the ranking/cap behavior, and the price semantics an agent must reason about. Nothing needed for a correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is already 89%, so baseline is 3, but the description adds genuine nuance beyond the schema — notably that budget is all-in (price + $19.99 delivery) while min_price is arrangement price only, and it broadens the occasion vocabulary beyond the enum list. That distinction materially affects correct parameter use.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Search The Flowers Directory catalog of fresh flower arrangements and plants') with the delivery scope ('US florist delivery'). The filtering dimensions named (occasion, color, flower type, arrangement type, size, budget, free text) let an agent separate this discovery tool from the detail/checkout siblings 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context clear by enumerating the browsable dimensions and noting the return shape, so an agent knows this is the entry point for finding products. It does not, however, explicitly route to siblings ('use get_arrangement_details for full detail' or 'use check_delivery for serviceability'), so the when-not guidance is inferred rather than stated.
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.
9 tool updates
- Changed
check_delivery1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "available": { + "type": "boolean" + }, + "date": { + "type": "string" + }, + "note": { + "type": "string" + }, + "reason": { + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + }, + "required": [ + "code", + "message" + ], + "type": "object" + }, + "same_day_cutoff": { + "type": "string" + }, + "zip": { + "type": "string" + } + }, + "required": [ + "zip", + "date", + "available", + "same_day_cutoff", + "note" + ], + "type": "object" +}
- Changed
create_prefilled_checkout1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "checkout_url": { + "type": "string" + }, + "delivery": { + "properties": { + "available": { + "type": [ + "boolean", + "null" + ] + }, + "date": { + "type": "string" + }, + "note": { + "type": "string" + }, + "same_day_cutoff": { + "type": "string" + }, + "zip": { + "type": "string" + } + }, + "required": [ + "zip", + "date", + "available", + "note" + ], + "type": "object" + }, + "expires_in_hours": { + "type": "number" + }, + "how_to_order": { + "type": "string" + }, + "prefilled_fields": { + "items": { + "type": "string" + }, + "type": "array" + }, + "pricing": { + "properties": { + "currency": { + "type": "string" + }, + "delivery_fee": { + "type": [ + "number", + "null" + ] + }, + "note": { + "type": "string" + }, + "price": { + "type": [ + "number", + "null" + ] + }, + "tax": { + "type": [ + "number", + "null" + ] + }, + "total": { + "type": [ + "number", + "null" + ] + } + }, + "required": [ + "currency", + "tax", + "total", + "note" + ], + "type": "object" + }, + "product": { + "properties": { + "attributes": { + "properties": { + "arrangement_type": { + "type": "string" + }, + "container": { + "type": "string" + }, + "height_in": { + "type": "number" + }, + "sender_fit": { + "type": "string" + }, + "size_tier": { + "type": "string" + }, + "stem_count": { + "type": "integer" + }, + "width_in": { + "type": "number" + } + }, + "required": [], + "type": "object" + }, + "best_for": { + "type": "string" + }, + "code": { + "type": "string" + }, + "colors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "delivery_fee": { + "type": "number" + }, + "description": { + "type": "string" + }, + "flower_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "image": { + "type": [ + "string", + "null" + ] + }, + "occasions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "price": { + "type": "number" + }, + "title": { + "type": "string" + }, + "total_before_tax": { + "type": "number" + }, + "url": { + "type": "string" + } + }, + "required": [ + "price", + "delivery_fee", + "total_before_tax" + ], + "type": "object" + }, + "product_url": { + "type": "string" + } + }, + "required": [ + "product", + "pricing", + "checkout_url", + "how_to_order", + "product_url", + "prefilled_fields", + "expires_in_hours" + ], + "type": "object" +}
- Changed
find_local_florists1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "city": { + "type": "string" + }, + "city_page": { + "type": [ + "string", + "null" + ] + }, + "florists": { + "items": { + "properties": { + "address": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "verified_date": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "type": "array" + }, + "location_note": { + "type": "string" + }, + "note": { + "type": "string" + }, + "state": { + "type": "string" + }, + "total_listed": { + "type": "integer" + } + }, + "required": [ + "city", + "state", + "total_listed", + "florists", + "city_page", + "note" + ], + "type": "object" +}
- Changed
get_arrangement_details1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "attributes": { + "properties": { + "arrangement_type": { + "type": "string" + }, + "container": { + "type": "string" + }, + "height_in": { + "type": "number" + }, + "sender_fit": { + "type": "string" + }, + "size_tier": { + "type": "string" + }, + "stem_count": { + "type": "integer" + }, + "width_in": { + "type": "number" + } + }, + "required": [], + "type": "object" + }, + "best_for": { + "type": "string" + }, + "categories": { + "items": { + "type": "string" + }, + "type": "array" + }, + "code": { + "type": "string" + }, + "colors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "delivery": { + "properties": { + "days": { + "type": "string" + }, + "fee": { + "type": "number" + }, + "hand_delivered": { + "type": "string" + }, + "same_day_cutoff": { + "type": "string" + } + }, + "required": [ + "fee", + "same_day_cutoff", + "days" + ], + "type": "object" + }, + "delivery_fee": { + "type": "number" + }, + "description": { + "type": "string" + }, + "flower_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "image": { + "type": [ + "string", + "null" + ] + }, + "images": { + "items": { + "properties": { + "label": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "url" + ], + "type": "object" + }, + "type": "array" + }, + "note": { + "type": "string" + }, + "occasions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "price": { + "type": "number" + }, + "product_url": { + "type": "string" + }, + "size": { + "type": "string" + }, + "substitution_policy": { + "type": "string" + }, + "title": { + "type": "string" + }, + "total_before_tax": { + "type": "number" + }, + "url": { + "type": "string" + } + }, + "required": [ + "price", + "delivery_fee", + "total_before_tax", + "images", + "categories", + "substitution_policy", + "delivery" + ], + "type": "object" +}
- Changed
get_checkout_link1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "checkout_url": { + "type": "string" + }, + "delivery": { + "properties": { + "available": { + "type": [ + "boolean", + "null" + ] + }, + "date": { + "type": "string" + }, + "note": { + "type": "string" + }, + "same_day_cutoff": { + "type": "string" + }, + "zip": { + "type": "string" + } + }, + "required": [ + "zip", + "date", + "available", + "note" + ], + "type": "object" + }, + "how_to_order": { + "type": "string" + }, + "pricing": { + "properties": { + "currency": { + "type": "string" + }, + "delivery_fee": { + "type": [ + "number", + "null" + ] + }, + "note": { + "type": "string" + }, + "price": { + "type": [ + "number", + "null" + ] + }, + "tax": { + "type": [ + "number", + "null" + ] + }, + "total": { + "type": [ + "number", + "null" + ] + } + }, + "required": [ + "currency", + "tax", + "total", + "note" + ], + "type": "object" + }, + "product": { + "properties": { + "attributes": { + "properties": { + "arrangement_type": { + "type": "string" + }, + "container": { + "type": "string" + }, + "height_in": { + "type": "number" + }, + "sender_fit": { + "type": "string" + }, + "size_tier": { + "type": "string" + }, + "stem_count": { + "type": "integer" + }, + "width_in": { + "type": "number" + } + }, + "required": [], + "type": "object" + }, + "best_for": { + "type": "string" + }, + "code": { + "type": "string" + }, + "colors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "delivery_fee": { + "type": "number" + }, + "description": { + "type": "string" + }, + "flower_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "image": { + "type": [ + "string", + "null" + ] + }, + "occasions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "price": { + "type": "number" + }, + "title": { + "type": "string" + }, + "total_before_tax": { + "type": "number" + }, + "url": { + "type": "string" + } + }, + "required": [ + "price", + "delivery_fee", + "total_before_tax" + ], + "type": "object" + } + }, + "required": [ + "product", + "pricing", + "checkout_url", + "how_to_order" + ], + "type": "object" +}
- Changed
get_delivery_location_guidance1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "appropriate": { + "items": { + "type": "string" + }, + "type": "array" + }, + "avoid": { + "items": { + "type": "string" + }, + "type": "array" + }, + "budget_note": { + "type": "string" + }, + "checkout_fields": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "collect": { + "items": { + "type": "string" + }, + "type": "array" + }, + "guides": { + "items": { + "properties": { + "title": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "title", + "url" + ], + "type": "object" + }, + "type": "array" + }, + "label": { + "type": "string" + }, + "local_venues": { + "properties": { + "city": { + "type": "string" + }, + "city_page": { + "type": [ + "string", + "null" + ] + }, + "error": { + "type": "string" + }, + "location_note": { + "type": "string" + }, + "note": { + "type": "string" + }, + "state": { + "type": "string" + }, + "total_listed": { + "type": "integer" + }, + "type": { + "type": "string" + }, + "venues": { + "items": { + "properties": { + "address": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "verified_date": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [], + "type": "object" + }, + "location_type": { + "type": "string" + }, + "suggested_searches": { + "items": { + "properties": { + "args": { + "type": "object" + }, + "for": { + "type": "string" + } + }, + "required": [ + "for", + "args" + ], + "type": "object" + }, + "type": "array" + }, + "timing": { + "type": "string" + } + }, + "required": [ + "location_type", + "label" + ], + "type": "object" +}
- Changed
get_order_status1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "items": { + "items": { + "properties": { + "code": { + "type": [ + "string", + "null" + ] + }, + "delivery_city": { + "type": [ + "string", + "null" + ] + }, + "delivery_date": { + "type": [ + "string", + "null" + ] + }, + "name": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "string" + }, + "status_note": { + "type": "string" + }, + "venue": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "status", + "status_note" + ], + "type": "object" + }, + "type": "array" + }, + "order_help": { + "properties": { + "phone": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [], + "type": "object" + }, + "order_number": { + "type": "string" + }, + "order_total": { + "type": [ + "number", + "null" + ] + }, + "tracking": { + "type": "string" + } + }, + "required": [ + "order_number", + "order_total", + "items", + "tracking", + "order_help" + ], + "type": "object" +}
- Changed
next_available_delivery1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "available_dates": { + "items": { + "type": "string" + }, + "type": "array" + }, + "delivery_days": { + "type": "string" + }, + "delivery_fee": { + "type": "number" + }, + "earliest_date": { + "type": [ + "string", + "null" + ] + }, + "earliest_label": { + "type": [ + "string", + "null" + ] + }, + "note": { + "type": "string" + }, + "recipient_local_time": { + "type": [ + "string", + "null" + ] + }, + "same_day": { + "properties": { + "available_now": { + "type": [ + "boolean", + "null" + ] + }, + "cutoff": { + "type": "string" + }, + "minutes_until_cutoff": { + "type": "integer" + }, + "note": { + "type": "string" + } + }, + "required": [ + "cutoff", + "note" + ], + "type": "object" + }, + "state": { + "type": [ + "string", + "null" + ] + }, + "zip": { + "type": "string" + } + }, + "required": [ + "zip", + "state", + "earliest_date", + "available_dates", + "note" + ], + "type": "object" +}
- Changed
search_arrangements4 fields changed- added
Input schema / properties / arrangement_typeAdded value: +{ + "description": "One of: vase_arrangement, basket, floor_basket, table_arrangement, centerpiece, plant, dish_garden, wreath, standing_spray, standing_heart, standing_cross, casket_spray, casket_adornment, urn_tribute. Common words like \"vase\", \"spray\", \"easel\", \"casket\" or \"urn\" are accepted.", + "type": "string" +} - changed
Input schema / properties / flower_types / descriptionPrevious value: -"Flower types that should appear (any match). Known values: roses, lilies, tulips, sunflowers, orchids, carnations, daisies, hydrangeas, alstroemeria, chrysanthemums, gerberas, lisianthus, snapdragons, dahlias, peonies, irises, delphinium, larkspur, gladiolus, calla lilies, freesia, ranunculus, asters, proteas, anthuriums, succulents, plants, mixed."New value: +"Flower types that should appear (any match). Known values: roses, lilies, tulips, sunflowers, orchids, carnations, daisies, hydrangeas, alstroemeria, chrysanthemums, gerberas, lisianthus, snapdragons, dahlias, peonies, irises, delphinium, larkspur, gladiolus, calla lilies, freesia, ranunculus, asters, proteas, anthuriums, succulents, stock, poinsettia, plants, mixed." - added
Input schema / properties / sizeAdded value: +{ + "description": "One of: small (under 14 in), medium (14 to 22 in), large (over 22 in), tribute (easel, casket and floor pieces for funerals).", + "type": "string" +} - changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "count": { + "type": "integer" + }, + "currency": { + "type": "string" + }, + "delivery_fee": { + "type": "number" + }, + "filters": { + "properties": { + "arrangement_type": { + "type": [ + "string", + "null" + ] + }, + "budget": { + "type": [ + "number", + "null" + ] + }, + "colors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "flower_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "min_price": { + "type": [ + "number", + "null" + ] + }, + "occasion": { + "type": [ + "string", + "null" + ] + }, + "query": {}, + "size": { + "type": [ + "string", + "null" + ] + } + }, + "required": [], + "type": "object" + }, + "note": { + "type": "string" + }, + "products": { + "items": { + "properties": { + "attributes": { + "properties": { + "arrangement_type": { + "type": "string" + }, + "container": { + "type": "string" + }, + "height_in": { + "type": "number" + }, + "sender_fit": { + "type": "string" + }, + "size_tier": { + "type": "string" + }, + "stem_count": { + "type": "integer" + }, + "width_in": { + "type": "number" + } + }, + "required": [], + "type": "object" + }, + "best_for": { + "type": "string" + }, + "code": { + "type": "string" + }, + "colors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "delivery_fee": { + "type": "number" + }, + "description": { + "type": "string" + }, + "flower_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "image": { + "type": [ + "string", + "null" + ] + }, + "occasions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "price": { + "type": "number" + }, + "title": { + "type": "string" + }, + "total_before_tax": { + "type": "number" + }, + "url": { + "type": "string" + } + }, + "required": [ + "price", + "delivery_fee", + "total_before_tax" + ], + "type": "object" + }, + "type": "array" + }, + "total_matches": { + "type": "integer" + } + }, + "required": [ + "currency", + "delivery_fee", + "filters", + "total_matches", + "count", + "products" + ], + "type": "object" +}
3 tool updates
- Changed
create_prefilled_checkout1 field changed- changed
Input schema / properties / code / descriptionPrevious value: -"Product code from search_arrangements, e.g. T163-1A."New value: +"Arrangement product code, e.g. T163-1A."
- Changed
get_arrangement_details1 field changed- changed
Input schema / properties / code / descriptionPrevious value: -"Product code from search_arrangements, e.g. T163-1A."New value: +"Arrangement product code, e.g. T163-1A."
- Changed
get_checkout_link1 field changed- changed
Input schema / properties / code / descriptionPrevious value: -"Product code from search_arrangements, e.g. T163-1A."New value: +"Arrangement product code, e.g. T163-1A."
7 tool updates
- Added
create_prefilled_checkout - Added
find_local_florists - Added
get_arrangement_details - Added
get_delivery_location_guidance - Added
get_order_status - Added
next_available_delivery - Changed
search_arrangements1 field changed- changed
Input schema / properties / query / descriptionPrevious value: -"Free-text keywords matched against the title and description, e.g. \"blue hydrangea in a vase\"."New value: +"Free-text keywords matched against the title and description, e.g. \"blue hydrangea in a vase\" or \"standing spray\"."
3 tool updates
- First observed
check_delivery - First observed
get_checkout_link - First observed
search_arrangements
Related MCP Connectors
Send flowers in Israel: browse bouquets, check delivery days, get a quote and place an order in USD.
Send real gifts to 190+ countries: search, check delivery, get a secure checkout link.
Search local store inventory by US ZIP, verify same-day delivery, and check out on JENNi.
Compare flower delivery in Germany: find bouquets by text or photo, order at partner florists.
Related MCP Servers
- AlicenseAqualityDmaintenanceConnects conversational AI agents to live inventories of verified neighborhood retail stores through GPS-radius catalog search, zero-PII order reservations with direct merchant checkout links, real-time fulfillment tracking, and store trust reporting. Shoppers settle payment directly with merchants while orders trigger counter terminals and courier dispatch slips.241MIT
- AlicenseAqualityAmaintenanceLive USPS, UPS, FedEx and DHL Express parcel rates from a US origin, domestic or to Canada, the UK, Germany and Australia, from a plain-words item description: no scale, no account, no API key. Also creates checkout links, reports checkout status, tracks parcels bought on smklog.com and serves a monthly US parcel price index.51MIT
- AlicenseAqualityCmaintenanceEnables an AI assistant to browse restaurants and menus, manage a cart, reorder past orders, review checkout details, and place food delivery orders, returning a payment link to complete payment.13MIT
- AlicenseAqualityDmaintenanceEnables AI agents to search for products, manage shopping carts, and place grocery orders on Instacart using browser automation. It includes comprehensive tools for store discovery, product searching, and secure checkout with explicit user confirmation.11101 npm11MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.