Labsco
MCP SERVER

1Stay Hotel Booking

by STAYKER-COM

Complete a real hotel booking inside a conversation — confirmation number, loyalty points and elite status included.

Travel Booking, Transit & NavigationVerified
Summary
It books, and it is careful at the two points bookings go wrong.

Payment leaves the conversation entirely: book_hotel hands back a checkout link instead of asking for a card. Cancellation takes two calls, so the terms are on screen before anything is cancelled. Those two decisions are the difference between this and a search tool with a booking button.

What it is

A hotel booking server that goes all the way to a reservation rather than a search result and a link out. The hotel is the merchant of record, so the stay behaves like a direct booking; payment happens on a separate secure checkout page, never in the conversation.

What you get
  • search_hotels — availability by location and dates with nightly rates across chains, boutiques and independents
  • get_hotel_details — room types, live rates, amenities, cancellation policies, and the rate_code that book_hotel requires
  • book_hotel — creates the reservation and returns a secure checkout URL
  • lookup_booking — identity-verified lookup returning the confirmation number and a booking summary
  • get_booking — full detail by booking id or hotel confirmation number
  • cancel_booking — two calls: the first verifies identity and returns the cancellation terms, the second commits
  • resend_confirmation — re-sends to the email on the booking record, and only to that address
  • search_tools — lists the available tools, filterable by keyword
Requirements

Point a client at https://mcp.stayker.com/mcp over Streamable HTTP, or run the npm package 1stay-mcp with npx. Authentication is the OAuth 2.0 authorization code flow, handled by the client, and needs a 1Stay account. Card details never pass through the conversation — book_hotel returns a checkout URL, valid for about 30 minutes, and payment completes there. Anonymous callers must verify identity through lookup_booking before get_booking will return a record.

Setup effort

One command — npx -y 1stay-mcp