1stay
Qué hace este MCP
Searches, details, books, retrieves, and prepares cancellations for hotel reservations through secure checkout and management flows.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['hotel_id', 'rate_code', 'check_in', 'check_out', 'guests'], 'properties': {'guests': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'Number of guests, 1-10'}, 'check_in': {'type': 'string', 'description': 'Check-in date in YYYY-MM-DD format (e.g. 2026-05-06)'}, 'hotel_id': {'type': 'string', 'description': 'Hotel ID from search or details'}, 'check_out': {'type': 'string', 'description': 'Check-out date in YYYY-MM-DD format (e.g. 2026-05-07)'}, 'rate_code': {'type': 'string', 'description': 'Valid, unexpired rate code for the selected hotel, dates, and room'}, 'external_reference_id': {'type': 'string', 'description': 'Caller-defined unique reference ID for idempotency and retrieval'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'message'], 'properties': {'taxes': {'type': 'number'}, 'nights': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'status': {'enum': ['ACTION_REQUIRED', 'ALREADY_CONFIRMED'], 'type': 'string'}, 'message': {'type': 'string'}, 'check_in': {'type': 'string'}, 'currency': {'type': 'string'}, 'subtotal': {'type': 'number'}, 'check_out': {'type': 'string'}, 'rate_plan': {'type': 'string'}, 'room_type': {'type': 'string'}, 'hotel_name': {'type': 'string'}, 'booking_fee': {'type': 'number'}, 'booking_type': {'type': 'string'}, 'checkout_url': {'type': 'string'}, 'idempotency_hit': {'type': 'boolean'}, 'avg_nightly_rate': {'type': 'number'}, 'total_with_taxes': {'type': 'number'}, 'expires_in_minutes': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'cancellation_policy': {'type': 'string'}, 'confirmation_number': {'type': 'string'}, 'booking_fee_currency': {'type': 'string'}, 'external_reference_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'reward_points_eligible': {'type': 'boolean'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['first_name', 'last_name', 'confirmation_number'], 'properties': {'last_name': {'type': 'string', 'description': 'Guest last name on the reservation'}, 'first_name': {'type': 'string', 'description': 'Guest first name on the reservation'}, 'confirmation_number': {'type': 'string', 'description': 'Hotel confirmation number'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'message'], 'properties': {'status': {'enum': ['ACTION_REQUIRED', 'already_cancelled'], 'type': 'string'}, 'booking': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'message': {'type': 'string'}, 'cancellation': {'anyOf': [{'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, {'type': 'null'}]}, 'cancellation_url': {'type': 'string', 'format': 'uri'}, 'cancellation_url_expires_at': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['confirmation_number'], 'properties': {'verification_token': {'type': 'string', 'description': 'Booking-scoped verification token required for anonymous access. Developer API key-authenticated access does not require it.'}, 'confirmation_number': {'type': 'string', 'description': "Hotel confirmation number shown in the guest's confirmation email"}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['reward_points_eligible', 'booking_type', 'action_handoff', 'available_actions'], 'properties': {'room': {}, 'hotel': {}, 'guests': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'nights': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'status': {'type': 'string'}, 'pricing': {'type': 'object', 'required': ['room_total', 'taxes', 'hotel_fees', 'hotel_total', 'currency'], 'properties': {'taxes': {'type': 'number'}, 'currency': {'type': 'string'}, 'hotel_fees': {'type': 'number'}, 'room_total': {'type': 'number'}, 'hotel_total': {'type': 'number'}, 'service_fee': {'type': 'number'}}, 'additionalProperties': False}, 'check_in': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'check_out': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'created_at': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'booking_type': {'type': 'string'}, 'cancellation': {'anyOf': [{'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, {'type': 'null'}]}, 'action_handoff': {'type': 'string'}, 'available_actions': {'type': 'object', 'required': ['resend_confirmation', 'preview_cancellation'], 'properties': {'resend_confirmation': {'type': 'object', 'required': ['tool', 'arguments', 'instruction'], 'properties': {'tool': {'type': 'string', 'const': 'resend_confirmation'}, 'arguments': {'type': 'object', 'required': ['confirmation_number'], 'properties': {'confirmation_number': {'type': 'string'}}, 'additionalProperties': False}, 'instruction': {'type': 'string'}}, 'additionalProperties': False}, 'preview_cancellation': {'type': 'object', 'required': ['tool', 'arguments', 'instruction'], 'properties': {'tool': {'type': 'string', 'const': 'cancel_booking'}, 'arguments': {'type': 'object', 'required': ['confirmation_number'], 'properties': {'last_name': {'type': 'string'}, 'first_name': {'type': 'string'}, 'confirmation_number': {'type': 'string'}}, 'additionalProperties': False}, 'instruction': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'confirmation_number': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'reward_points_eligible': {'type': 'boolean'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['hotel_id', 'check_in', 'check_out'], 'properties': {'rooms': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Number of rooms. 1Stay currently supports exactly one room per search and reservation; omit this field or set it to 1.'}, 'guests': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'Number of guests, 1-10 (default 2)'}, 'check_in': {'type': 'string', 'description': 'Check-in date in YYYY-MM-DD format (e.g. 2026-05-06)'}, 'hotel_id': {'type': 'string', 'description': 'Hotel ID from search results'}, 'check_out': {'type': 'string', 'description': 'Check-out date in YYYY-MM-DD format (e.g. 2026-05-07)'}, 'accessible': {'type': 'boolean', 'description': 'When true, returns accessible (ADA) room types instead of standard ones. Default false because hotels list many near-identical accessible variants. The response always reports accessible_rooms_available.'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['hotel', 'rooms', 'accessible_rooms_available'], 'properties': {'stay': {'type': 'object', 'required': ['check_in', 'check_out', 'guests', 'rooms', 'nights'], 'properties': {'rooms': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'guests': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'nights': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'check_in': {'type': 'string'}, 'check_out': {'type': 'string'}}, 'additionalProperties': False}, 'hotel': {'type': 'object', 'required': ['hotel_id', 'address', 'amenities', 'photos'], 'properties': {'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'chain': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'photos': {'type': 'array', 'items': {'type': 'object', 'required': ['description'], 'properties': {'url': {'type': 'string'}, 'thumbnail': {'type': 'string'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'review': {}, 'address': {'type': 'object', 'required': ['line1', 'line2', 'city', 'state', 'postal_code', 'country'], 'properties': {'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'line1': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'line2': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'state': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'country': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'postal_code': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'hotel_id': {'type': 'string'}, 'amenities': {'type': 'array', 'items': {}}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'check_in_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'check_out_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'rooms': {'type': 'array', 'items': {'type': 'object', 'required': ['room_id', 'name', 'rate_plans'], 'properties': {'name': {'type': 'string'}, 'room_id': {'type': 'string'}, 'bed_type': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'rate_plans': {'type': 'array', 'items': {'type': 'object', 'required': ['rate_code', 'total_with_taxes', 'avg_nightly_rate', 'subtotal', 'taxes', 'currency', 'nightly_breakdown', 'cancellation_policy', 'cancel_by_datetime', 'guarantee_policy', 'reward_points_eligible', 'booking_type'], 'properties': {'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'taxes': {'type': 'number'}, 'currency': {'type': 'string'}, 'subtotal': {'type': 'number'}, 'meal_plan': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'rate_code': {'type': 'string'}, 'refundable': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}, 'booking_fee': {'type': 'number'}, 'booking_type': {'type': 'string'}, 'booking_terms': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'avg_nightly_rate': {'type': 'number'}, 'guarantee_policy': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'total_with_taxes': {'type': 'number'}, 'nightly_breakdown': {'type': 'array', 'items': {}}, 'cancel_by_datetime': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'cancellation_policy': {'type': 'string'}, 'booking_fee_currency': {'type': 'string'}, 'reward_points_eligible': {'type': 'boolean'}}, 'additionalProperties': False}}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'max_occupancy': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'room_name_confidence': {'enum': ['high', 'medium', 'low'], 'type': 'string'}}, 'additionalProperties': False}}, 'message': {'type': 'string'}, 'next_step': {'type': 'string'}, 'availability_status': {'enum': ['available', 'unavailable'], 'type': 'string'}, 'accessible_rooms_note': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'rate_quote_expires_at': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'rate_quote_ttl_seconds': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'accessible_rooms_available': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['first_name', 'last_name'], 'properties': {'email': {'type': 'string', 'description': 'Email address used when booking'}, 'last_name': {'type': 'string', 'description': 'Guest last name on the reservation'}, 'first_name': {'type': 'string', 'description': 'Guest first name on the reservation'}, 'check_in_date': {'type': 'string', 'description': 'Optional check-in date (YYYY-MM-DD) to narrow repeat stays'}, 'last_four_card': {'type': 'string', 'description': 'Last 4 digits of the card used to book'}, 'confirmation_number': {'type': 'string', 'description': 'Hotel confirmation number'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'confirmation_number', 'verification_token', 'verification_token_expires_at', 'action_handoff'], 'properties': {'hotel': {'type': 'string'}, 'status': {'type': 'string'}, 'check_in': {'type': 'string'}, 'check_out': {'type': 'string'}, 'guest_name': {'type': 'string'}, 'action_handoff': {'type': 'string'}, 'booking_status': {'type': 'string'}, 'available_actions': {'type': 'object', 'required': ['resend_confirmation', 'preview_cancellation'], 'properties': {'resend_confirmation': {'type': 'object', 'required': ['tool', 'arguments', 'instruction'], 'properties': {'tool': {'type': 'string', 'const': 'resend_confirmation'}, 'arguments': {'type': 'object', 'required': ['confirmation_number'], 'properties': {'confirmation_number': {'type': 'string'}}, 'additionalProperties': False}, 'instruction': {'type': 'string'}}, 'additionalProperties': False}, 'preview_cancellation': {'type': 'object', 'required': ['tool', 'arguments', 'instruction'], 'properties': {'tool': {'type': 'string', 'const': 'cancel_booking'}, 'arguments': {'type': 'object', 'required': ['confirmation_number'], 'properties': {'last_name': {'type': 'string'}, 'first_name': {'type': 'string'}, 'confirmation_number': {'type': 'string'}}, 'additionalProperties': False}, 'instruction': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'verification_token': {'type': 'string'}, 'confirmation_number': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'verification_token_note': {'type': 'string'}, 'confirmation_number_status': {'enum': ['available', 'pending'], 'type': 'string'}, 'verification_token_expires_at': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'email': {'type': 'string', 'format': 'email', 'pattern': "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", 'description': 'Guest email address. Used only to find a match; confirmation is sent only to the email address already on file.'}, 'last_name': {'type': 'string', 'description': 'Guest last name. Required with first_name and email when the confirmation number is unavailable.'}, 'first_name': {'type': 'string', 'description': 'Guest first name. Required with last_name and email when the confirmation number is unavailable.'}, 'confirmation_number': {'type': 'string', 'description': 'Hotel confirmation number. Use this after a verified lookup.'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'message'], 'properties': {'status': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['check_in', 'check_out'], 'properties': {'rooms': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Number of rooms. 1Stay currently supports exactly one room per search and reservation; omit this field or set it to 1.'}, 'cursor': {'type': 'string', 'description': 'Pagination cursor from previous search response'}, 'radius': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Search radius in miles, 1-100 (default 25). Applies only when the search resolves to coordinates - explicit latitude/longitude, or a venue, landmark or address that is geocoded. It is ignored for city searches, which resolve to a city code; the response reports which happened in resolution_type.'}, 'check_in': {'type': 'string', 'description': 'Check-in date in YYYY-MM-DD format (e.g. 2026-05-06). Must be today through 340 days from today.'}, 'currency': {'type': 'string', 'description': 'Currency code (default USD)'}, 'latitude': {'type': 'number', 'description': 'Latitude â\x80\x94 must be provided together with longitude'}, 'location': {'type': 'string', 'description': "City, address, venue, or landmark (e.g. 'Nashville, TN' or 'Times Square, NYC'). Required unless latitude and longitude are both provided."}, 'check_out': {'type': 'string', 'description': 'Check-out date in YYYY-MM-DD format (e.g. 2026-05-07). Must be after check_in.'}, 'longitude': {'type': 'number', 'description': 'Longitude â\x80\x94 must be provided together with latitude'}, 'search_id': {'type': 'string', 'description': 'Search ID paired with a pagination cursor from previous results'}, 'max_results': {'type': 'integer', 'maximum': 6, 'minimum': 1, 'description': 'Max hotels to return, max 6 (default 6). Results are a representative selection across different hotel brands, not a ranking. Use the returned cursor to load more pages.'}, 'guests_per_room': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'Guests per room, 1-10 (default 2)'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['results', 'total_results', 'check_in', 'check_out', 'cursor', 'has_more'], 'properties': {'rooms': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'cursor': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['hotel_id', 'name', 'photo', 'total_stay', 'avg_nightly_rate', 'nights', 'currency', 'amenities', 'reward_points_eligible', 'booking_type'], 'properties': {'name': {'type': 'string'}, 'chain': {'type': 'string'}, 'photo': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'nights': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'review': {}, 'address': {'type': 'object', 'properties': {'city': {'type': 'string'}, 'line1': {'type': 'string'}, 'state': {'type': 'string'}, 'country': {'type': 'string'}, 'postal_code': {'type': 'string'}}, 'additionalProperties': {}}, 'currency': {'type': 'string'}, 'hotel_id': {'type': 'string'}, 'amenities': {'type': 'array', 'items': {}}, 'total_stay': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'booking_fee': {'type': 'number'}, 'star_rating': {'type': 'number'}, 'booking_type': {'type': 'string'}, 'avg_nightly_rate': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'booking_fee_currency': {'type': 'string'}, 'reward_points_eligible': {'type': 'boolean'}}, 'additionalProperties': False}}, 'check_in': {'type': 'string'}, 'has_more': {'type': 'boolean'}, 'check_out': {'type': 'string'}, 'search_id': {'type': 'string'}, 'total_results': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'guests_per_room': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'resolution_type': {'type': 'string'}, 'resolved_location': {'type': 'string'}, 'conversion_applied': {'type': 'boolean'}, 'requested_currency': {'type': 'string'}, 'returned_currencies': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'keyword': {'type': 'string', 'description': 'Optional tool filter keyword, such as book, search, cancel, or details'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['tools', 'total'], 'properties': {'tools': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'description'], 'properties': {'name': {'type': 'string'}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}
Cambios recientes en herramientas
Servidores MCP similares
Itaim Bibi
Provides an Itaim Bibi neighborhood directory with local place search, menus, events, offers, services, bookings, reservations, t…
Tatuapé
Provides a Tatuapé neighborhood directory with local place search, menus, events, offers, services, bookings, reservations, ticke…
Agenda SP
Provides São Paulo cultural agenda and local directory features, including events, venues, restaurants, offers, bookings, reserva…
Vila Buarque
Provides a neighborhood directory for local places, restaurants, menus, events, offers, services, reservations, bookings, and pur…
Centro
Provides a Centro neighborhood directory with local place search, menus, events, offers, services, bookings, reservations, ticket…
Bela Vista
Provides a Bela Vista neighborhood directory with local place search, menus, events, offers, services, bookings, reservations, ti…
Jardins
Provides a Jardins neighborhood directory with local place search, menus, events, offers, services, bookings, reservations, ticke…
Aclimação
Provides a neighborhood directory for Aclimação with local places, restaurant menus, events, offers, services, bookings, reservat…