GetMyHotels

Search hotels, get live prices, and check out in chat. Guest search needs no sign-in.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
99%
Integridad del esquema
91%
Calidad de los nombres
98%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~4,381Tokens (definiciones de herramientas)
~1.9 KBTamaño de respuesta típico
Impacto significativo en la atención (3.42% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "getmyhotels": {
      "url": "https://mcp.getmyhotels.com"
    }
  }
}

Puntos de conexión remotos

https://mcp.getmyhotels.comstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (18)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search(query, destination, checkIn, checkOut, adults, ...)

Search GetMyHotels for hotels matching a query. Returns a list of results with ids that can be passed to `fetch` for full details. Provide the destination and travel dates in the query.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Natural-language search, e.g. 'hotels in Lisbon 2026-08-10 to 2026-08-14 for 2 adults'."
    },
    "destination": {
      "type": "string",
      "description": "City, region, or place to search (e.g. 'Paris', 'Goa', 'Lower Manhattan')."
    },
    "checkIn": {
      "type": "string",
      "description": "Check-in date, ISO 8601 (YYYY-MM-DD)."
    },
    "checkOut": {
      "type": "string",
      "description": "Check-out date, ISO 8601 (YYYY-MM-DD). Must be after check-in."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Adults (1-10). Default 2."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 6,
      "description": "Children (0-6). Default 0."
    },
    "rooms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 6,
      "description": "Rooms (1-6). Default 1."
    },
    "childrenAges": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0,
        "maximum": 17
      },
      "description": "Age of each child at check-in. Length should equal `children`."
    },
    "guestNationality": {
      "type": "string",
      "description": "ISO 3166-1 alpha-2 guest nationality (e.g. 'US', 'GB'). Affects supplier pricing."
    },
    "keywords": {
      "type": "string",
      "description": "Optional free-text preferences, e.g. 'beachfront pool spa'."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢fetch(id)

Fetch the full record for a result id returned by `search` (a hotel) or for a booking reference (prefixed 'bk_'). Returns a document with id, title, text, url, and metadata.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "An id from `search` results, or a 'bk_'-prefixed booking ref."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢search_hotels(destination, checkIn, checkOut, adults, children, ...)

Search live hotel availability for a destination and date range. Returns a price-sorted list of hotels (JSON in the text), each with an opaque `ref` and an indicative stay price. To book: call `get_rooms` and pass the chosen room's `offerRef` to `get_checkout_quote` then `create_checkout`. For a hotel's other rooms (or a hotel not in the list), call `get_rooms`. Narrow with `keywords` (a hotel name, area, or amenities).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "destination": {
      "type": "string",
      "description": "City, region, or place to search (e.g. 'Paris', 'Goa', 'Lower Manhattan')."
    },
    "checkIn": {
      "type": "string",
      "description": "Check-in date, ISO 8601 (YYYY-MM-DD)."
    },
    "checkOut": {
      "type": "string",
      "description": "Check-out date, ISO 8601 (YYYY-MM-DD). Must be after check-in."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Adults (1-10). Default 2."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 6,
      "description": "Children (0-6). Default 0."
    },
    "rooms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 6,
      "description": "Rooms (1-6). Default 1."
    },
    "childrenAges": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0,
        "maximum": 17
      },
      "description": "Age of each child at check-in. Length should equal `children`."
    },
    "guestNationality": {
      "type": "string",
      "description": "ISO 3166-1 alpha-2 guest nationality (e.g. 'US', 'GB'). Affects supplier pricing."
    },
    "keywords": {
      "type": "string",
      "description": "Optional free-text preferences, e.g. 'beachfront pool spa'."
    }
  },
  "required": [
    "destination",
    "checkIn",
    "checkOut"
  ],
  "additionalProperties": false
}
🟢get_rooms(ref, supplierCode, supplierHotelId, checkIn, checkOut, ...)

List the bookable rooms for ONE hotel and date range. Each room's `offerRef` is what you pass to `get_checkout_quote` / `create_checkout`. Use the hotel `ref` from `search_hotels` or `search`. Call this to see all of a chosen hotel's rooms, or to refresh availability before checkout.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string",
      "description": "The hotel `ref` from search (e.g. 'tbo:1360717')."
    },
    "supplierCode": {
      "type": "string",
      "description": "Alternative to `ref`: supplier code."
    },
    "supplierHotelId": {
      "type": "string",
      "description": "Alternative to `ref`: supplier hotel id."
    },
    "checkIn": {
      "type": "string",
      "description": "Check-in date, ISO 8601 (YYYY-MM-DD)."
    },
    "checkOut": {
      "type": "string",
      "description": "Check-out date, ISO 8601 (YYYY-MM-DD)."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Adults (default 2)."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 6,
      "description": "Children (default 0)."
    },
    "rooms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9,
      "description": "Rooms (default 1)."
    }
  },
  "required": [
    "checkIn",
    "checkOut"
  ],
  "additionalProperties": false
}
🟢get_hotel_details(ref, supplierCode, supplierHotelId)

Get full property details (description, amenities, photos, policies, location) for a hotel, identified by its `ref` from `search_hotels` (or its supplierCode + supplierHotelId).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string",
      "description": "The hotel `ref` from search (e.g. 'tbo:1360717')."
    },
    "supplierCode": {
      "type": "string",
      "description": "Alternative to `ref`: supplier code."
    },
    "supplierHotelId": {
      "type": "string",
      "description": "Alternative to `ref`: supplier hotel id."
    }
  },
  "additionalProperties": false
}
🟢get_checkout_quote(ref, supplierCode, supplierHotelId, offerRef, supplierRoomId, ...)

Re-price a specific room live against the supplier before checkout (no booking, no charge). Use the `offerRef` and price/currency from `get_rooms`. Returns the authoritative grand total, a `rateValidUntil` timestamp, and any taxes/fees.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string",
      "description": "Hotel `ref` from `search_hotels` (e.g. 'TBO:1402689'). Alternative to supplierCode + supplierHotelId."
    },
    "supplierCode": {
      "type": "string",
      "description": "Supplier code (from `search_hotels`). Required if `ref` is omitted."
    },
    "supplierHotelId": {
      "type": "string",
      "description": "Supplier hotel id (from `search_hotels`). Required if `ref` is omitted."
    },
    "offerRef": {
      "type": "string",
      "description": "Opaque room offer from get_rooms."
    },
    "supplierRoomId": {
      "type": "string",
      "description": "Bookable room/rate id from the chosen room in `search_hotels`."
    },
    "checkIn": {
      "type": "string",
      "description": "Check-in date, ISO 8601 (YYYY-MM-DD)."
    },
    "checkOut": {
      "type": "string",
      "description": "Check-out date, ISO 8601 (YYYY-MM-DD)."
    },
    "rooms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9,
      "description": "Rooms (default 1)."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Adults (default 2)."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 6,
      "description": "Children (default 0)."
    },
    "childrenAges": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0,
        "maximum": 18
      },
      "description": "Age of each child."
    },
    "currency": {
      "type": "string",
      "description": "ISO 4217 currency of `price`/`totalPrice` (e.g. 'USD')."
    },
    "totalPrice": {
      "type": "number",
      "description": "The room's price from `search_hotels` — the TOTAL for the whole stay, not a nightly rate (used to detect price changes)."
    },
    "promoCode": {
      "type": "string",
      "description": "Optional promo code."
    }
  },
  "required": [
    "checkIn",
    "checkOut",
    "totalPrice",
    "currency"
  ],
  "additionalProperties": false
}
🔴create_checkout(ref, supplierCode, supplierHotelId, offerRef, supplierRoomId, ...)

Create a secure checkout for a chosen hotel room and return a getmyhotels.com URL where the guest completes payment. This does NOT charge the card — the guest pays on the hosted page. Confirm the hotel, room, dates, and price with the user before calling. Call `get_checkout_quote` first to confirm the live price.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string",
      "description": "Hotel `ref` from `search_hotels` (e.g. 'TBO:1402689'). Alternative to supplierCode + supplierHotelId."
    },
    "supplierCode": {
      "type": "string",
      "description": "Supplier code (from `search_hotels`). Required if `ref` is omitted."
    },
    "supplierHotelId": {
      "type": "string",
      "description": "Supplier hotel id (from `search_hotels`). Required if `ref` is omitted."
    },
    "offerRef": {
      "type": "string",
      "description": "Opaque room offer from get_rooms."
    },
    "supplierRoomId": {
      "type": "string",
      "description": "Bookable room/rate id from the chosen room in `search_hotels`."
    },
    "checkIn": {
      "type": "string",
      "description": "Check-in date, ISO 8601 (YYYY-MM-DD)."
    },
    "checkOut": {
      "type": "string",
      "description": "Check-out date, ISO 8601 (YYYY-MM-DD)."
    },
    "rooms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9,
      "description": "Rooms (default 1)."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Adults (default 2)."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 6,
      "description": "Children (default 0)."
    },
    "childrenAges": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0,
        "maximum": 18
      },
      "description": "Age of each child."
    },
    "currency": {
      "type": "string",
      "description": "ISO 4217 currency of `price`/`totalPrice` (e.g. 'USD')."
    },
    "hotelName": {
      "type": "string",
      "description": "Hotel name (from `search_hotels`)."
    },
    "roomName": {
      "type": "string",
      "description": "Room name (from the chosen room)."
    },
    "price": {
      "type": "number",
      "description": "Total to charge for the WHOLE stay (use `grandTotal` from `get_checkout_quote` verbatim — do not multiply it by the number of nights)."
    }
  },
  "required": [
    "hotelName",
    "roomName",
    "checkIn",
    "checkOut",
    "price",
    "currency"
  ],
  "additionalProperties": false
}
🟢get_booking(bookingToken)

Look up a hotel booking by its management token (sent in the confirmation email). Returns the booking status, hotel, dates, and guest details.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "bookingToken": {
      "type": "string",
      "description": "The booking management token from the confirmation email/URL."
    }
  },
  "required": [
    "bookingToken"
  ],
  "additionalProperties": false
}
🟢list_trips

List the signed-in user's saved trips (itineraries).

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟡save_trip(title, description, startDate, endDate, budget, ...)

Create a new saved trip (itinerary) for the signed-in user.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Trip title (1-255 chars)."
    },
    "description": {
      "type": "string",
      "description": "Optional notes (≤4000 chars)."
    },
    "startDate": {
      "type": "string",
      "description": "Trip start, ISO 8601 (YYYY-MM-DD)."
    },
    "endDate": {
      "type": "string",
      "description": "Trip end, ISO 8601 (YYYY-MM-DD)."
    },
    "budget": {
      "type": "number",
      "description": "Optional total budget."
    },
    "budgetCurrency": {
      "type": "string",
      "description": "ISO 4217 currency for the budget (e.g. 'USD')."
    }
  },
  "required": [
    "title",
    "startDate",
    "endDate"
  ],
  "additionalProperties": false
}
🟡add_trip_item(itineraryPublicId, day, type, title, description, ...)

Add an item (hotel, flight, activity, etc.) to a saved trip on a given day.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "itineraryPublicId": {
      "type": "string",
      "description": "The trip's public id (from `list_trips`/`save_trip`)."
    },
    "day": {
      "type": "integer",
      "minimum": 1,
      "maximum": 365,
      "description": "Day number within the trip."
    },
    "type": {
      "type": "string",
      "enum": [
        "hotel",
        "flight",
        "experience",
        "transfer",
        "activity",
        "meal",
        "note"
      ],
      "description": "Item type."
    },
    "title": {
      "type": "string",
      "description": "Item title (1-255 chars)."
    },
    "description": {
      "type": "string",
      "description": "Optional notes (≤2000 chars)."
    },
    "sortOrder": {
      "type": "integer",
      "minimum": 0,
      "description": "Order within the day (default 0)."
    }
  },
  "required": [
    "itineraryPublicId",
    "day",
    "type",
    "title"
  ],
  "additionalProperties": false
}
🟢list_my_bookings(page, limit)

List the signed-in user's hotel bookings.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number (default 1)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Page size (default 20)."
    }
  },
  "additionalProperties": false
}
🟢get_my_booking(publicId)

Get full details of one of the signed-in user's bookings by its public id.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "publicId": {
      "type": "string",
      "description": "The booking's public id."
    }
  },
  "required": [
    "publicId"
  ],
  "additionalProperties": false
}
⚪request_booking_action_code(publicId, action)

Email a 6-digit verification code to the booking owner, required before cancelling or modifying a booking. Step 1 of 2 — then call `cancel_booking`/`modify_booking` with the code.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "publicId": {
      "type": "string",
      "description": "The booking's public id."
    },
    "action": {
      "type": "string",
      "enum": [
        "cancel",
        "modify"
      ],
      "description": "Which action the code authorizes."
    }
  },
  "required": [
    "publicId",
    "action"
  ],
  "additionalProperties": false
}
🔴cancel_booking(publicId, verificationCode, reason)

Cancel one of the signed-in user's bookings. Requires the 6-digit `verificationCode` from `request_booking_action_code`. This may be irreversible and can trigger a refund per policy.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "publicId": {
      "type": "string",
      "description": "The booking's public id."
    },
    "verificationCode": {
      "type": "string",
      "description": "6-digit code from `request_booking_action_code`."
    },
    "reason": {
      "type": "string",
      "description": "Optional cancellation reason (≤1000 chars)."
    }
  },
  "required": [
    "publicId",
    "verificationCode"
  ],
  "additionalProperties": false
}
🔴modify_booking(publicId, verificationCode, checkIn, checkOut, specialRequests)

Change one of the signed-in user's bookings. Requires the 6-digit `verificationCode` from `request_booking_action_code`. Special-request edits always apply. A DATE change is pushed to the hotel supplier as a cancel-and-rebook at current availability, so it only works for suppliers that support amendment — for others (and when no room is available for the new dates) it returns an error asking you to cancel and rebook instead. A date change can shift the price and issue a new confirmation; the result's `supplierModifyStatus` says whether the supplier reservation was actually changed (`modified`), simulated (`simulated`), or the edit stayed local (`local_only`, e.g. special requests only). Never promise a date change went through unless `supplierModifyStatus` is `modified` or `simulated`.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "publicId": {
      "type": "string",
      "description": "The booking's public id."
    },
    "verificationCode": {
      "type": "string",
      "description": "6-digit code from `request_booking_action_code`."
    },
    "checkIn": {
      "type": "string",
      "description": "New check-in date, ISO 8601 (optional)."
    },
    "checkOut": {
      "type": "string",
      "description": "New check-out date, ISO 8601 (optional)."
    },
    "specialRequests": {
      "type": "string",
      "description": "New special requests (≤2000 chars, optional)."
    }
  },
  "required": [
    "publicId",
    "verificationCode"
  ],
  "additionalProperties": false
}
🟢list_payment_methods

List the signed-in user's saved payment cards (brand, last 4, expiry, default). Use the returned `publicId` with `create_one_click_checkout` to pre-select a card.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🔴create_one_click_checkout(ref, supplierCode, supplierHotelId, offerRef, supplierRoomId, ...)

Create a checkout for the signed-in user with a saved card pre-selected, and return a getmyhotels.com URL where they confirm + pay in one click. Does NOT charge the card — the user confirms on the hosted page. Get the `savedPaymentMethodPublicId` from `list_payment_methods`. Confirm the hotel, room, dates, and price with the user first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string",
      "description": "Hotel `ref` from `search_hotels` (e.g. 'TBO:1402689')."
    },
    "supplierCode": {
      "type": "string",
      "description": "Supplier code (if `ref` omitted)."
    },
    "supplierHotelId": {
      "type": "string",
      "description": "Supplier hotel id (if `ref` omitted)."
    },
    "offerRef": {
      "type": "string",
      "description": "Opaque room offer from get_rooms."
    },
    "supplierRoomId": {
      "type": "string",
      "description": "Bookable room/rate id from `search_hotels`."
    },
    "savedPaymentMethodPublicId": {
      "type": "string",
      "description": "Saved card `publicId` from `list_payment_methods`."
    },
    "hotelName": {
      "type": "string",
      "description": "Hotel name."
    },
    "roomName": {
      "type": "string",
      "description": "Room name."
    },
    "checkIn": {
      "type": "string",
      "description": "Check-in date, ISO 8601."
    },
    "checkOut": {
      "type": "string",
      "description": "Check-out date, ISO 8601."
    },
    "price": {
      "type": "number",
      "description": "Total for the WHOLE stay (use `grandTotal` from `get_checkout_quote` verbatim — do not multiply it by the number of nights)."
    },
    "currency": {
      "type": "string",
      "description": "ISO 4217 currency (e.g. 'USD')."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Adults (default 2)."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 6,
      "description": "Children (default 0)."
    },
    "rooms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9,
      "description": "Rooms (default 1)."
    }
  },
  "required": [
    "savedPaymentMethodPublicId",
    "hotelName",
    "roomName",
    "checkIn",
    "checkOut",
    "price",
    "currency"
  ],
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada18 herramientas
verificadoversión no registrada18 herramientas