brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
pricewin-travel-searchSearch and compare live hotel and flight prices with the PriceWin MCP server, look up one named hotel, inspect OpenTravel direct listings, send a booking request to a partner hotel (no payment; the guest pays at the property), and cancel one. Use when the user asks to find hotels or flights for dates, compare travel prices, inspect a hotel or room, check a …
Independent GitHub snapshot · Automated classification · Original documentation governs
Use only the tools of the pricewin MCP server (https://mcp.price.win/mcp,
installed with the web-data/pricewin MCP component). Agents prefix them with the server name — for
example mcp__pricewin__search_hotels_live — and the steps below use the bare
tool names. Do not replace them with browser automation, shell commands, direct
API calls, or invented booking URLs.
All prices are in USD.
For a hotel search, obtain:
For a flight search, obtain:
Resolve unambiguous relative dates from the current date. Ask one concise follow-up when a required date, destination, or airport is genuinely ambiguous. Never invent a date or silently choose among multiple plausible airports.
Pass language matching the user's language when supported. Do not put
unrelated conversation or personal data in queryText.
search_hotels_live with the destination, dates, occupancy, and only
the filters the user actually requested.sessionId and nights from the response.poll_search_results with that sessionId and nights.Use hotelName, area, priceMin, or priceMax only when the user supplied
that constraint. Do not claim that a result is the cheapest in the whole
market; describe it as the cheapest among the sources returned for this search.
A failed or missing source does not invalidate results from other sources.
When the user names a single hotel rather than a city, call
get_ota_hotel_detail with hotelName and its city (or the Booking.com
propertyUrl from an earlier result) and the user's dates. It returns that
hotel's rooms, live prices, facilities and reviews from Booking.com.
Call get_hotel_detail only for a hotel identified as an OpenTravel direct
listing.
propertyId from opentravelResults.hotelName plus city only when the property is already known to be an
OpenTravel direct listing and no propertyId is available.Present the returned photos, amenities, availability, room capacity, total price, per-night price, and currency without changing their meaning. State clearly when availability or a price is missing.
For questions about a hotel itself — check-in and check-out times, facilities,
photos, description, room types — call get_hotel_info with the propertyId
of an OpenTravel direct listing, usually from opentravelResults of a search
already made. It needs no dates and returns no prices or availability; for
those, use get_hotel_detail. When the property has not published a field,
say so rather than filling it in.
Call get_cancellation_policy only after get_hotel_detail supplies both:
propertyId; andratePlanId.Pass the check-in date so the tool can compute an exact deadline. Report the returned non-refundable status, refund percentage, free-cancellation window, deadline, and summary. Never infer a policy or deadline when the tool does not return one.
search_flights_live with IATA codes, departure date, optional return
date, adults, and cabin.sessionId.poll_flight_results with that sessionId.Keep outbound and return legs distinct. Each leg is a separate one-way ticket with its own booking link: when you pair an outbound and a return flight, give the total as the sum of the two fares and say that each leg is booked separately. Never present a pair as one round-trip ticket, and do not imply that a fare is still available after the live result expires.
Only an OpenTravel direct listing can be booked this way; an Agoda, Booking.com or Traveloka result cannot, and the user follows its own link instead.
request_booking with the propertyId, roomTypeId, dates and the
guest's name, phone number and email. Ask for whichever of those three is
missing; they go to the hotel, which needs them to honour the reservation.confirmationCode it returns; check_booking_status reads the
request's state back with it.There is no payment step, now or later. Never ask how the guest wants to pay, and never mention a card, transfer, QR code, payment link or deposit — not even one the guest named earlier. The guest pays the property on arrival.
get_cancellation_policy first, with the propertyId, ratePlanId
and check-in date of the booked room, and tell the guest what they will get
back — or that the property has published no policy.request_cancel_token with the confirmation code and the email on the
booking. This cancels nothing; it emails a single-use token.cancel_booking with the code,
the token and the guest's reason.cancel_booking cannot be undone. If there is no token yet, the answer is
step 2, never step 4.
search_hotels_live, poll_search_results,
search_flights_live, poll_flight_results, get_ota_hotel_detail,
get_hotel_detail, get_hotel_info, get_cancellation_policy,
request_booking, check_booking_status, request_cancel_token, and
cancel_booking.