Tool tree
create_bookingAction
Prepara y solicita confirmación manual del usuario en pantalla para la reserva de vuelo en ATI Viajes. Valida que los datos estén completos y enfoca el botón de confirmación para que el usuario humano autorice personalmente la operación. No emite reservas ni genera PNRs de forma autónoma.
View tool JSON
{
"name": "create_booking",
"kind": "act",
"impl": "imperative",
"description": "Prepara y solicita confirmación manual del usuario en pantalla para la reserva de vuelo en ATI Viajes. Valida que los datos estén completos y enfoca el botón de confirmación para que el usuario humano autorice personalmente la operación. No emite reservas ni genera PNRs de forma autónoma.",
"inputSchema": {
"type": "object",
"properties": {
"offer_id": {
"type": "string",
"description": "Identificador único de la oferta de vuelo a reservar (opcional si ya estás en la pantalla de checkout)."
}
}
}
}fill_passenger_detailsAction
Autocompleta en pantalla los nombres y apellidos de los pasajeros y los datos de contacto (email y teléfono) de forma transparente.
View tool JSON
{
"name": "fill_passenger_details",
"kind": "act",
"impl": "imperative",
"description": "Autocompleta en pantalla los nombres y apellidos de los pasajeros y los datos de contacto (email y teléfono) de forma transparente.",
"inputSchema": {
"type": "object",
"properties": {
"passengers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"passenger_index": {
"type": "number",
"description": "Índice del pasajero (0 para primer pasajero, 1 para el segundo, etc.)"
},
"first_name": {
"type": "string",
"description": "Nombre del pasajero según documento"
},
"last_name": {
"type": "string",
"description": "Apellido del pasajero según documento"
}
},
"required": [
"first_name",
"last_name"
]
}
},
"contact": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email de contacto del titular de la reserva"
},
"phone": {
"type": "string",
"description": "Teléfono de contacto"
}
}
}
},
"required": [
"passengers"
]
}
}get_checkout_summaryAnswer
Obtiene el resumen de la oferta seleccionada en checkout, desglose de tarifas, campos requeridos por pasajero y las 3 garantías de ATI Viajes ('Reservá sin pagar', 'Un experto revisa tu reserva', 'Cancelación sin costo').
View tool JSON
{
"name": "get_checkout_summary",
"kind": "answer",
"impl": "imperative",
"description": "Obtiene el resumen de la oferta seleccionada en checkout, desglose de tarifas, campos requeridos por pasajero y las 3 garantías de ATI Viajes ('Reservá sin pagar', 'Un experto revisa tu reserva', 'Cancelación sin costo').",
"inputSchema": {
"type": "object",
"properties": {}
}
}get_flight_detailsAnswer
Obtiene el detalle ampliado de una oferta de vuelo por offer_id, incluyendo desglose de equipaje (mano, cabina, bodega), políticas de reembolso, cabina y segmentos operados.
View tool JSON
{
"name": "get_flight_details",
"kind": "answer",
"impl": "imperative",
"description": "Obtiene el detalle ampliado de una oferta de vuelo por offer_id, incluyendo desglose de equipaje (mano, cabina, bodega), políticas de reembolso, cabina y segmentos operados.",
"inputSchema": {
"type": "object",
"properties": {
"offer_id": {
"type": "string",
"description": "Identificador único de la oferta de vuelo (offer_id)."
}
},
"required": [
"offer_id"
]
}
}get_flight_offersAnswer
Obtiene el listado de ofertas de vuelos activas. Soporta 'wait: true' para esperar automáticamente a que finalice la carga de los resultados en pantalla.
View tool JSON
{
"name": "get_flight_offers",
"kind": "answer",
"impl": "imperative",
"description": "Obtiene el listado de ofertas de vuelos activas. Soporta 'wait: true' para esperar automáticamente a que finalice la carga de los resultados en pantalla.",
"inputSchema": {
"type": "object",
"properties": {
"wait": {
"type": "boolean",
"description": "Recomendado: si es true, la herramienta esperará de forma asíncrona a que los vuelos terminen de cargarse en pantalla antes de responder."
},
"timeout_ms": {
"type": "number",
"description": "Tiempo máximo de espera en milisegundos cuando wait: true (por defecto 8000 ms)."
},
"max_results": {
"type": "number",
"description": "Límite opcional de ofertas a retornar (por defecto 50 ofertas, máximo 100)."
},
"max_stops": {
"type": "number",
"description": "Filtro para limitar la cantidad máxima de escalas (usar 0 para vuelos directos únicamente)."
},
"nonstop": {
"type": "boolean",
"description": "Alias opcional para max_stops: 0. Si es true, filtra solo vuelos sin escalas."
},
"sort_by": {
"type": "string",
"enum": [
"price_asc",
"duration_asc",
"recommended"
],
"description": "Criterio de ordenamiento: 'price_asc' (más económico primero), 'duration_asc' (más rápido primero), 'recommended' (recomendado). Por defecto 'price_asc'."
}
}
}
}navigate_to_flights_searchAction
Navega al buscador principal de vuelos de ATI Viajes.
View tool JSON
{
"name": "navigate_to_flights_search",
"kind": "act",
"impl": "imperative",
"description": "Navega al buscador principal de vuelos de ATI Viajes.",
"inputSchema": {
"type": "object",
"properties": {}
}
}search_airportsAnswer
Busca códigos IATA de aeropuertos y ciudades por nombre (ej. 'Buenos Aires' -> 'BUE' / 'EZE' / 'AEP', 'Miami' -> 'MIA', 'Madrid' -> 'MAD'). Usar 'BUE' para buscar en todos los aeropuertos de Buenos Aires.
View tool JSON
{
"name": "search_airports",
"kind": "answer",
"impl": "imperative",
"description": "Busca códigos IATA de aeropuertos y ciudades por nombre (ej. 'Buenos Aires' -> 'BUE' / 'EZE' / 'AEP', 'Miami' -> 'MIA', 'Madrid' -> 'MAD'). Usar 'BUE' para buscar en todos los aeropuertos de Buenos Aires.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Nombre de la ciudad, país o código IATA parcial a buscar (ej. 'Buenos Aires', 'MIA', 'Madrid')."
}
},
"required": [
"query"
]
}
}search_flightsAction
Inicia la búsqueda de vuelos en ATI Viajes especificando origen (IATA), destino (IATA), fechas y pasajeros. Si el usuario ingresó un nombre de ciudad en vez del código IATA, usa primero 'search_airports'. Redirige a los resultados. IMPORTANTE: Para leer las ofertas cargadas, ejecutar 'get_flight_offers' con 'wait: true'.
View tool JSON
{
"name": "search_flights",
"kind": "act",
"impl": "imperative",
"description": "Inicia la búsqueda de vuelos en ATI Viajes especificando origen (IATA), destino (IATA), fechas y pasajeros. Si el usuario ingresó un nombre de ciudad en vez del código IATA, usa primero 'search_airports'. Redirige a los resultados. IMPORTANTE: Para leer las ofertas cargadas, ejecutar 'get_flight_offers' con 'wait: true'.",
"inputSchema": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"description": "Código IATA de origen (ej. 'BUE' para todo Buenos Aires, 'EZE', 'AEP', 'COR', 'MDZ')."
},
"destination": {
"type": "string",
"description": "Código IATA de destino (ej. 'MIA', 'MAD', 'BCN', 'PUJ', 'CUN')."
},
"departure_date": {
"type": "string",
"description": "Fecha de salida en formato ISO YYYY-MM-DD (ej. '2026-10-15')."
},
"return_date": {
"type": "string",
"description": "Fecha de regreso opcional en formato ISO YYYY-MM-DD (ej. '2026-10-25'). Búsqueda de ida y vuelta si se especifica."
},
"adults": {
"type": "number",
"description": "Cantidad de pasajeros adultos de 18 años o más (por defecto 1)."
},
"children_ages": {
"type": "array",
"items": {
"type": "number"
},
"description": "Lista de edades de todos los menores entre 0 y 17 años (ej. [0, 4, 10, 15]). El Hub de ATI Viajes clasificará automáticamente infantes en regazo (0-1 año) y menores (2-17 años)."
},
"cabin": {
"type": "string",
"enum": [
"Y",
"C",
"F"
],
"description": "Clase de cabina deseada. 'Y' (Económica), 'C' (Ejecutiva/Business), 'F' (Primera). Por defecto 'Y'."
},
"currency": {
"type": "string",
"enum": [
"ARS",
"USD"
],
"description": "Moneda de visualización para los precios ('ARS' o 'USD'). Por defecto 'ARS'."
},
"nonstop": {
"type": "boolean",
"description": "Alias para vuelos sin escala. Si es true, busca exclusivamente vuelos directos."
}
},
"required": [
"origin",
"destination",
"departure_date"
]
}
}select_flight_offerAction
Selecciona una oferta de vuelo por su offer_id e inicia la reserva posicionando al usuario en el checkout. Acción con efecto en la interfaz.
View tool JSON
{
"name": "select_flight_offer",
"kind": "act",
"impl": "imperative",
"description": "Selecciona una oferta de vuelo por su offer_id e inicia la reserva posicionando al usuario en el checkout. Acción con efecto en la interfaz.",
"inputSchema": {
"type": "object",
"properties": {
"offer_id": {
"type": "string",
"description": "Identificador único de la oferta de vuelo a seleccionar."
}
},
"required": [
"offer_id"
]
}
}