Hotel + show bundling — pricetik_trip_plan now exposes includeTickets + ticketQuery (the agent-API backing supported them; the MCP schema previously hid them). Set includeTickets=true to bundle live-event tickets (concerts, theater, sports) matched to the destination and stay window into an eventTickets[] block; the trip-plan widget renders them as an "Event tickets" section with seller-checkout handoffs. Ticket amounts stay out of estimatedTotalUsd and the widget discloses it.
Live-event tickets get first-class treatment — pricetik_ticket_search gains city + dateFrom/dateTo filters ("a show in Vegas during my trip dates" resolves server-side), both ticket tools now render the interactive event-card widget instead of plain text, and pricetik_ticket_details accepts code as an id alias so widget drill-ins dispatch cleanly. Trip-plan ticket matching is constrained to the destination city + stay window.
Group trip sessions (6 new tools, trip vertical) — pricetik_group_trip_create / _get / _join / _add_option / _vote / _finalize. Shared multi-user planning: friends join by an 8-character share code, members propose candidates from any surface (hotel / activity / ticket / transfer), vote up/down (one vote per member per option, upsert), and the organizer finalizes. Coordinate-only by design — finalize returns handoffPolicy "user_completes_booking" and every traveler books their own pieces; PriceTik never auto-purchases. Gated behind the groupTripsV1Enabled master flag + per-tool flags.
MCP prompts capability — the server now advertises prompts and ships three one-click starters Claude Desktop surfaces natively: "Plan a trip", "Hotel + show night", and "Plan a group trip", each pre-wiring the right multi-tool choreography.
Group-plan widget (7th MCP Apps widget) — pricetik_group_trip_get renders the shared session as an interactive card: header (title, destination, dates, status, join code, member count) and candidate options grouped by surface with proposer notes, prices, and LIVE vote tallies. The up/down vote controls dispatch pricetik_group_trip_vote in-model with optimistic tally updates; per-row drill-ins route to each option's surface detail tool.
Widget coverage 14 → 20 tools — pricetik_compare (side-by-side deal grid with a cheaper-product verdict), pricetik_hotel_price_check (per-provider comparison + freshness stamp on the hotel card), pricetik_activity_compare (event-card rows), and pricetik_flexible_dates (stay-window rows priced by total cost with confidence badges) now return rich interactive UI instead of JSON text.
Search quality — surface=events now also returns a labeled "Event tickets" section (activities first, never interleaved; ticket rows carry city, eventDate, and the ticket-details drill-in), the hotels surface gains a trigram fallback when the semantic-embedding path misses, and semantic search (pgvector, MiniLM) extends to activities and live-event tickets via new embedding tables — every search surface is now semantic-first.
Cross-vertical trending deals — pricetik_trending_deals gains a surface param: shopping (default, legacy behavior preserved), hotels (biggest 7-day rate drops), events (activity rate drops), tickets (below their 30-day median via a new deterministic ticket deal-score with a reasons breakdown), or all (labeled per-surface sections rendered in the deal-grid widget). Surface pools are Redis-cached.
pricetik_coupons_for (new tool) — coupons + cashback probe for a retailer, product, or URL: active coupon codes from affiliate-feed offer data, per-retailer cashback rates, and a bestStack hint with estimated total savings. Sourced fields only — codes are never fabricated. Tool count 91 → 92.
Widget coverage 20 → 26 tools — transfer_search (the transfers surface's first rich UI), alternative_dates (shifted stay windows with savings badges), my_trips (trip rows with spend + departure countdown), and hotel/activity should_book rendering a new price-card decision view: Book now / Wait / Watch verdict chip, confidence, and reasoning, with the Buy commerce controls suppressed.
Master agent-API surface count: 92 tools across Shopping (23), Hotels (16), Events (13), Account (18), Trip Planner (11), Reference (4), Transfers (7) — 91 exposed via the stdio package, 1 auth-required Account tool REST-only.
Description cross-linking pass — pricetik_search documents the events surface's new "Event tickets" section and when to reach for pricetik_ticket_search instead, pricetik_compare_destinations clarifies activityDestinationCode is the short activity destination code (not the destination UUID), and pricetik_check_availability no longer implies activity rateKeys can be probed.