Bota — car rental availability and bookings
Real availability, prices and bookings of car rental companies (rent-a-car), by conversation.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
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": {
"bota": {
"url": "https://mcp.bota-chat.com/mcp"
}
}
}Puntos de conexión remotos
https://mcp.bota-chat.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (8)
🟢list_rental_companies
List the car-rental companies that sell through Bota. Returns id, name, website, active channels, whether bookings can be completed from this server (booking_via_agents) and whether it is the demo company. Start here.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟢list_offices(company_id, language)
Rental offices (pickup/return locations) of a company: name, city, address, opening hours, timezone, coordinates. Use the office NAME in search_availability.
Esquema de entrada
{
"type": "object",
"properties": {
"company_id": {
"type": "string",
"description": "Company id from list_rental_companies."
},
"language": {
"type": "string",
"description": "Language of the conversation, BCP-47 (es, en, pt-BR, fr, de, it…). Defaults to 'en'. Bota also answers in the language the customer writes."
}
},
"required": [
"company_id"
],
"additionalProperties": false
}🟢search_availability(company_id, session_id, pickup_office, return_office, pickup_date, ...)
Search available vehicles with real prices for a company, office and dates. Prices are identical to the company's own web chat (mandatory charges, one-way and time rules included). Returns numbered offers; keep the session_id to select one.
Esquema de entrada
{
"type": "object",
"properties": {
"company_id": {
"type": "string",
"description": "Company id from list_rental_companies."
},
"session_id": {
"type": "string",
"description": "Session id returned by a previous call for this company. Omit on the first call; ALWAYS pass it back on the next ones so Bota keeps the conversation (offers, selection, customer details)."
},
"pickup_office": {
"type": "string",
"description": "Pickup office name (from list_offices) or id."
},
"return_office": {
"type": "string",
"description": "Return office name or id when different (one-way)."
},
"pickup_date": {
"type": "string",
"description": "YYYY-MM-DD, office-local."
},
"pickup_time": {
"type": "string",
"description": "HH:MM, office-local. Default 10:00."
},
"return_date": {
"type": "string",
"description": "YYYY-MM-DD, office-local."
},
"return_time": {
"type": "string",
"description": "HH:MM, office-local. Default 10:00."
},
"driver_age": {
"type": "integer",
"minimum": 18,
"maximum": 99
},
"promo_code": {
"type": "string"
},
"language": {
"type": "string",
"description": "Language of the conversation, BCP-47 (es, en, pt-BR, fr, de, it…). Defaults to 'en'. Bota also answers in the language the customer writes."
}
},
"required": [
"company_id",
"pickup_office",
"pickup_date",
"return_date"
],
"additionalProperties": false
}🟡chat(company_id, session_id, message, language)
Send a free-text message to the company's Bota agent within a session (questions about conditions, insurance, extras, changes…). Bota answers in the customer's language with the company's approved information. For companies with booking_via_agents=true the conversation can complete a booking.
Esquema de entrada
{
"type": "object",
"properties": {
"company_id": {
"type": "string",
"description": "Company id from list_rental_companies."
},
"session_id": {
"type": "string",
"description": "Session id returned by a previous call for this company. Omit on the first call; ALWAYS pass it back on the next ones so Bota keeps the conversation (offers, selection, customer details)."
},
"message": {
"type": "string",
"maxLength": 2000
},
"language": {
"type": "string",
"description": "Language of the conversation, BCP-47 (es, en, pt-BR, fr, de, it…). Defaults to 'en'. Bota also answers in the language the customer writes."
}
},
"required": [
"company_id",
"message"
],
"additionalProperties": false
}🟢select_offer(company_id, session_id, offer_number, language)
Choose one of the numbered offers returned by search_availability (same session). Bota then asks for extras or driver details as needed. Requires booking_via_agents=true.
Esquema de entrada
{
"type": "object",
"properties": {
"company_id": {
"type": "string",
"description": "Company id from list_rental_companies."
},
"session_id": {
"type": "string",
"description": "Session id returned by a previous call for this company. Omit on the first call; ALWAYS pass it back on the next ones so Bota keeps the conversation (offers, selection, customer details)."
},
"offer_number": {
"type": "integer",
"minimum": 1
},
"language": {
"type": "string",
"description": "Language of the conversation, BCP-47 (es, en, pt-BR, fr, de, it…). Defaults to 'en'. Bota also answers in the language the customer writes."
}
},
"required": [
"company_id",
"session_id",
"offer_number"
],
"additionalProperties": false
}🟡select_extras(company_id, session_id, extras, language)
Add optional extras (child seat, additional driver, coverage…) to the booking in progress using the extra ids returned after select_offer, or pass an empty list to continue without extras. Requires booking_via_agents=true.
Esquema de entrada
{
"type": "object",
"properties": {
"company_id": {
"type": "string",
"description": "Company id from list_rental_companies."
},
"session_id": {
"type": "string",
"description": "Session id returned by a previous call for this company. Omit on the first call; ALWAYS pass it back on the next ones so Bota keeps the conversation (offers, selection, customer details)."
},
"extras": {
"type": "array",
"items": {
"type": "string"
},
"description": "Extra ids to add; empty array = no extras."
},
"language": {
"type": "string",
"description": "Language of the conversation, BCP-47 (es, en, pt-BR, fr, de, it…). Defaults to 'en'. Bota also answers in the language the customer writes."
}
},
"required": [
"company_id",
"session_id",
"extras"
],
"additionalProperties": false
}🟡provide_customer_details(company_id, session_id, first_name, last_name, email, ...)
Submit the driver's details for the booking in progress. Only call it after the customer has explicitly accepted the company's terms (terms_accepted must be true). Bota then shows the summary to confirm.
Esquema de entrada
{
"type": "object",
"properties": {
"company_id": {
"type": "string",
"description": "Company id from list_rental_companies."
},
"session_id": {
"type": "string",
"description": "Session id returned by a previous call for this company. Omit on the first call; ALWAYS pass it back on the next ones so Bota keeps the conversation (offers, selection, customer details)."
},
"first_name": {
"type": "string",
"maxLength": 80
},
"last_name": {
"type": "string",
"maxLength": 120
},
"email": {
"type": "string",
"format": "email"
},
"phone": {
"type": "string",
"maxLength": 30
},
"notes": {
"type": "string",
"maxLength": 500
},
"flight_number": {
"type": "string",
"maxLength": 20
},
"terms_accepted": {
"type": "boolean"
},
"language": {
"type": "string",
"description": "Language of the conversation, BCP-47 (es, en, pt-BR, fr, de, it…). Defaults to 'en'. Bota also answers in the language the customer writes."
}
},
"required": [
"company_id",
"session_id",
"first_name",
"last_name",
"email",
"terms_accepted"
],
"additionalProperties": false
}⚪confirm_booking(company_id, session_id, confirmation_token, language)
Confirm the booking summarised by Bota. Pass the confirmation_token returned by the previous call (it proves the customer saw that exact summary). Creates the reservation in the company's reservation system and returns the confirmation code (and a payment link when the company requires prepayment).
Esquema de entrada
{
"type": "object",
"properties": {
"company_id": {
"type": "string",
"description": "Company id from list_rental_companies."
},
"session_id": {
"type": "string",
"description": "Session id returned by a previous call for this company. Omit on the first call; ALWAYS pass it back on the next ones so Bota keeps the conversation (offers, selection, customer details)."
},
"confirmation_token": {
"type": "string",
"description": "confirmation_token from the response that showed the booking summary."
},
"language": {
"type": "string",
"description": "Language of the conversation, BCP-47 (es, en, pt-BR, fr, de, it…). Defaults to 'en'. Bota also answers in the language the customer writes."
}
},
"required": [
"company_id",
"session_id",
"confirmation_token"
],
"additionalProperties": false
}Comunidad
Evidencia