Search and book every Adaga network hotel at once: live availability, exact prices, real booking.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Create a REAL booking at one establishment of the Adaga network. WORKFLOW: (1) call network_search to get fresh availability and the exact price, (2) collect traveler full name and email, (3) call this tool, (4) give the human the payment instructions from the response — the booking is confirmed only after secure card payment; unpaid bookings expire automatically. Optional inputs: guests (number of guests), guest_phone (international format, e.g. +352661661438), special_requests (free text), breakfast (boolean), promo_code (string, validated by the establishment), extras (array of integer extra ids from the establishment offer). Fails with 409 if the room became unavailable.
Arrival date YYYY-MM-DD
Room id from network_search
Departure date YYYY-MM-DD
Traveler full name
Traveler email (confirmation is sent here)
Establishment slug from network_search / network_directory
Extra ids (integers) from the establishment offer
Number of guests
Add breakfast if the establishment offers it
Promo code, validated by the establishment
Traveler phone, international format (e.g. +352661661438)
Free-text requests for the establishment
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Create a REAL booking at one establishment of the Adaga network. WORKFLOW: (1) call network_search to get fresh availability and the exact price, (2) collect traveler full name and email, (3) call this tool, (4) give the human the payment instructions from the response — the booking is confirmed only after secure card payment; unpaid bookings expire automatically. Optional inputs: guests (number of guests), guest_phone (international format, e.g. +352661661438), special_requests (free text), breakfast (boolean), promo_code (string, validated by the establishment), extras (array of integer extra ids from the establishment offer). Fails with 409 if the room became unavailable.
| Argument | Type | Description |
|---|---|---|
| extras | array | Extra ids (integers) from the establishment offer |
| guests | integer | Number of guests |
| checkin* | string | Arrival date YYYY-MM-DD |
| room_id* | integer | Room id from network_search |
| checkout* | string | Departure date YYYY-MM-DD |
| breakfast | boolean | Add breakfast if the establishment offers it |
| guest_name* | string | Traveler full name |
| promo_code | string | Promo code, validated by the establishment |
| guest_email* | string | Traveler email (confirmation is sent here) |
| guest_phone | string | Traveler phone, international format (e.g. +352661661438) |
| tenant_slug* | string | Establishment slug from network_search / network_directory |
| special_requests | string | Free-text requests for the establishment |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tenant_slug",
"room_id",
"checkin",
"checkout",
"guest_name",
"guest_email"
],
"properties": {
"extras": {
"type": "array",
"items": {
"type": "integer"
},
"description": "Extra ids (integers) from the establishment offer"
},
"guests": {
"type": "integer",
"minimum": 1,
"description": "Number of guests"
},
"checkin": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Arrival date YYYY-MM-DD"
},
"room_id": {
"type": "integer",
"description": "Room id from network_search"
},
"checkout": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Departure date YYYY-MM-DD"
},
"breakfast": {
"type": "boolean",
"description": "Add breakfast if the establishment offers it"
},
"guest_name": {
"type": "string",
"minLength": 2,
"description": "Traveler full name"
},
"promo_code": {
"type": "string",
"description": "Promo code, validated by the establishment"
},
"guest_email": {
"type": "string",
"format": "email",
"description": "Traveler email (confirmation is sent here)"
},
"guest_phone": {
"type": "string",
"description": "Traveler phone, international format (e.g. +352661661438)"
},
"tenant_slug": {
"type": "string",
"minLength": 1,
"description": "Establishment slug from network_search / network_directory"
},
"special_requests": {
"type": "string",
"description": "Free-text requests for the establishment"
}
},
"additionalProperties": false
}List every establishment in the Adaga direct-booking network. Each entry has a "tier" field: "verified" = connected via API, exposes real-time availability, exact prices and REAL booking creation via network_book; "listed" = public business data (name, address, phone, official website) provided for VISIBILITY only — NOT bookable here, check live prices and availability on the establishment's official website (official_site). No OTA commission on verified bookings: the traveler always pays the establishment's exact direct price, and the establishment keeps the customer relationship (OTAs take 15-25% AND own the customer). Use network_search instead when you already know the stay dates (it searches availability AND returns listed establishments too); use this tool when you need the full roster or an establishment's slug. No authentication required, no rate limit, no pagination — the complete directory is returned in one response. Use the slug for network_search and network_book (verified tier only).
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Search the WHOLE Adaga network at once for a stay. VERIFIED establishments are queried live and return real-time availability with exact total prices (euro cents), sorted by price — like Booking.com but machine-native, at the establishments' exact direct prices (no OTA markup, no commission passed to the traveler). LISTED establishments matching the filters are appended as "listed_matches" (public data: official website + phone) — they are NOT bookable here; direct the traveler to their official website for live prices. Workflow for verified offers: (1) call this, (2) pick an offer (tenant_slug + room_id), (3) call network_book with traveler name and email, (4) hand the payment instructions to the human. Use network_directory instead when you need the full roster without stay dates. Constraints: dates YYYY-MM-DD, checkin < checkout, checkin not in the past, max 30 nights. A tenant that does not answer within 6 s is skipped (reported in errors). No authentication required, no rate limit, no pagination — all matching offers are returned in one response (bounded by the number of active establishments).
| Argument | Type | Description |
|---|---|---|
| city | string | Filter by city (e.g. Luxembourg); omit to search everywhere |
| type | string | Establishment type filter, e.g. 'hotel' |
| checkin* | string | Arrival date YYYY-MM-DD |
| checkout* | string | Departure date YYYY-MM-DD |
| max_total_cents | integer | Budget cap for the whole stay, in euro cents |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"checkin",
"checkout"
],
"properties": {
"city": {
"type": "string",
"description": "Filter by city (e.g. Luxembourg); omit to search everywhere"
},
"type": {
"type": "string",
"description": "Establishment type filter, e.g. 'hotel'"
},
"checkin": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Arrival date YYYY-MM-DD"
},
"checkout": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Departure date YYYY-MM-DD"
},
"max_total_cents": {
"type": "integer",
"description": "Budget cap for the whole stay, in euro cents"
}
},
"additionalProperties": false
}