Install
$ agentstack add skill-price-win-pricewin-skills-hub-pricewin-hotel-search ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Hotel Search (Live)
MCP server: pricewin. Tool search_hotels_live triggers async crawl across 3 OTAs.
CRITICAL: Polling pattern
search_hotels_live returns IMMEDIATELY with sessionId. You MUST poll until results arrive:
- Call
search_hotels_livewith city, checkIn (YYYY-MM-DD), checkOut (YYYY-MM-DD), adults, language="vi" - Wait 5s, then
poll_search_results(sessionId, nights) - If status == "pending" or "partial": wait 5s and poll AGAIN — up to 18 times (90s total)
- Present results as soon as status == "partial" with hotels
- Continue polling silently — refine if more arrive
Never tell the user "loading/please wait" after 1-2 polls — that's premature.
4th source: OpenTravel
Pricewin returns a 4th source — opentravelResults — alongside Agoda/Booking/Traveloka. OpenTravel is an independent OTA, ranked the same way as the others: purely on price, no priority.
For each opentravelResults hotel, try to dedupe against the OTA results (same hotel name, fuzzy match — ignore case, diacritics, and common "hotel"/"resort" prefixes). When the same hotel exists on OpenTravel and another OTA:
- Show the cheapest source's price first; list the other sources underneath as comparison: "Agoda: $X · Booking: $Y · OpenTravel: $Z"
- Compute savings of the cheapest vs the next source:
(nextPrice - cheapestPrice) / nextPrice * 100→ "Save Z%"
If a hotel is OpenTravel-only (no OTA match), still show it — same as any single-source hotel.
Response format (MUST follow exactly)
After data arrives, present TOP 5-7 cheapest hotels ONLY (do NOT list 30+, overwhelming). For EACH hotel:
🏨 ** ← bold via markdown
💰 $/night —
⭐ stars | 👥 /10 ( reviews)
🔗
💡 Compare: Agoda · Booking · OpenTravel · Save
Use line break between hotels, not bullet markers. Cheapest hotel gets 🏆. All sources — including OpenTravel — are ranked purely by price; no source gets priority.
CRITICAL: Append dates to booking URL
The url field returned by tool is the raw OTA hotel page WITHOUT dates. You MUST append check-in/checkout params before showing user:
- Booking.com URLs (
booking.com/hotel//.en-gb.html): append?checkin=YYYY-MM-DD&checkout=YYYY-MM-DD&group_adults=N - Example:
https://www.booking.com/hotel/us/foo.en-gb.html?checkin=2026-05-25&checkout=2026-05-26&group_adults=2 - Agoda URLs (
agoda.com/en-us//hotel/.html): append?checkIn=YYYY-MM-DD&checkOut=YYYY-MM-DD&adults=N - Traveloka URLs: already contain
spec=param with dates baked in by pricewin — leave AS-IS
This ensures user clicks → lands on booking page with their dates pre-filled, no manual re-entry.
Skip noise
- Skip hotels with 0 stars + 0 reviews (low quality)
- Skip hotels with rating 50 (more reliable)
Currency
All prices in USD. No conversion.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Price-Win
- Source: Price-Win/pricewin-skills-hub
- License: MIT-0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.