← Aruba Airport Transfers

For AI assistants

Help your guest choose a private airport transfer, island ride or hourly driver, calculate a current price, and review an editable trip on our website.

A quote is not a reservation. The guest reviews the trip, supplies their details and accepts the terms on our website. Book at least 24 hours ahead. Rides more than 24 hours ahead are confirmed immediately, including bookings that need a custom fare. Christmas Eve, Christmas Day, New Year’s Eve and New Year’s Day require availability confirmation within 24 hours. Each ride in a round trip has its own confirmation status. The day before each confirmed ride, we’ll email you your driver’s name, phone number and detailed meeting instructions. The four planning tools create no booking or message. The additional tools below require explicit guest permission. No tool charges or refunds a card.

Connect and plan

Public MCP endpoint: https://arubaairporttransfers.com/aat-site/api/v1/mcp.php. Use Streamable HTTP POST. No API key is required. Both current stateless and legacy initialized MCP clients are supported.

For direct HTTP integrations: OpenAPI specification, tool schemas, current service facts. POST a JSON object to v1/quote.php, v1/assess.php or v1/handoff.php.

Airport round trips

Provide ride for the arrival and return_ride for the departure. Each can have its own date, passenger count, bags and stay area. Both go into one guest request. The 9% tax and card fee is rounded separately for each ride.

{
  "ride": {
    "service": "airport", "direction": "arrival",
    "area": "north", "passengers": 2
  },
  "return_ride": {
    "service": "airport", "direction": "departure",
    "area": "north", "passengers": 2
  }
}

This example can be priced without inventing a travel date or flight. Missing details are listed in the result and completed by the guest. All money fields are whole US dollars, not cents. Check quote.state and status; a manual-review result has no agreed total.

Ask instead of guessing

Dates and times use Aruba local time (UTC−4). For arrivals, date and time are the scheduled landing. For departures they are the pickup; flight_date and departure_time describe the departing flight, which may be the next day. Requests need at least 24 hours’ notice.

Use the catalog’s exact area IDs. Unknown routes, groups of 10–16, child seats, oversized luggage and accessibility needs require follow-up on fare or arrangements. That is separate from reservation confirmation: ordinary rides more than 24 hours ahead can confirm while the fare or equipment arrangement is pending. Bag counts do not guarantee fit. Island rides do not serve Arikok National Park. The hourly driver is transport, not a guided sightseeing tour.

Use only the documented fields. Never send names, contact information, exact addresses or consent through the public planning endpoints. Use only the explicitly authorized draft and inquiry tools for their documented personal fields. Never send card details or verification codes to an assistant. A handoff contains only planning choices in a URL fragment. It is an editable suggestion, not an authorization or a guaranteed price. The website removes the fragment and checks the current price before submission.

Confirmed public basics are available now. The comprehensive transfer knowledge base is being expanded with our operations team. For details not covered here, ask our Aruba team; do not infer transfer policies from sightseeing tours.

Examples for each service

These public planning inputs contain no guest contact details. POST one to v1/quote.php for a quote, v1/assess.php for missing details and requirements, or v1/handoff.php for an editable guest link. None reserves a ride. Download the example inputs and expected prices.

Airport One Way
{
  "ride": {
    "service": "airport",
    "direction": "arrival",
    "area": "north",
    "passengers": 2
  }
}

$65 USD for this whole party, including the fee.

Airport Round Trip
{
  "ride": {
    "service": "airport",
    "direction": "arrival",
    "area": "north",
    "passengers": 2
  },
  "return_ride": {
    "service": "airport",
    "direction": "departure",
    "area": "north",
    "passengers": 2
  }
}

$130 USD for this whole party, including the fee.

Island Ride
{
  "ride": {
    "service": "island",
    "pickup_area": "north",
    "dropoff_area": "south",
    "passengers": 4
  }
}

$109 USD for this whole party, including the fee.

Private Driver
{
  "ride": {
    "service": "driver",
    "passengers": 2,
    "hours": 2
  }
}

$273 USD for this whole party, including the fee.

Custom Group
{
  "ride": {
    "service": "airport",
    "direction": "arrival",
    "area": "north",
    "passengers": 12
  }
}

Fare requires team review; do not invent a total. Ordinary-date reservation confirmation occurs only after successful guest submission.

Return details and overnight flights

Supply each ride’s own passengers, checked_bags, cabin_bags, area, date, time and flight information. Never invent missing bag counts. On arrival, date/time mean scheduled landing. On departure, date/time mean pickup; flight_date and departure_time mean the flight. For a flight at 00:30 Tuesday with an agreed pickup Monday evening, preserve both actual local dates. Do not calculate a recommended pickup buffer without an approved rule or team guidance.

Read confirmation separately from the fare

Reading the booking form

The booking dialog #planner exposes non-sensitive observations for browser assistants. These attributes never authorize submission or replace guest consent, Stripe, or the verified server result.

Wait while submitting or checking the existing request. After uncertainty, use the existing Check my request action; never restart to work around it. A generic error, saved card, or visible quote is not success. Keep observing the visible instructions; these attributes do not expose guest details, credentials or payment data.

Guest approval, errors & recovery

  1. Before storing a private draft or sending a question, obtain the guest’s permission. Use the exact documented input schema. Keep the request key or UUID and identical payload for retries.
  2. Give the guest the returned approval URL without modifying it. Drafts expire after 24 hours. The guest reviews, edits and submits on the website, and chooses whether to share the outcome.
  3. For existing reservations, the guest verifies their recorded email on the website and grants one hour of access. An assistant never receives the code. Access can be revoked from the approval page.
  4. For changes, identify the explicit ride, preview the proposed action, show the cutoff and potential charge, then obtain approval. Submit the exact signed preview. A pending request is not a completed change; retrieve the reservation again to see the team’s resolution.

Use POST v1/operation.php with {"operation":"create_draft","arguments":{...}}, or the corresponding MCP tool. The other operation names and exact required fields are in OpenAPI. Never put private operation credentials in query parameters or public logs.

Quotes and public planning are read-only. Sending a question, storing a draft and submitting a reservation request are consequential operations. No tool charges, refunds, waives a fee, or directly completes a change/cancellation. Urgent pickup questions should go to the team by phone.

All eleven tools are available through MCP and direct HTTP; WebMCP is an optional browser capability. A reachable endpoint does not imply acceptance into any third-party assistant directory.

From planning to a real request

Help with an existing reservation

  1. Call request_transfer_reservation_access with the reference and a random request key. Give the guest the private approval URL; this step sends no email and reveals no reservation details.
  2. The guest verifies their recorded email and grants one hour of access on our website. Never ask for their verification code. Keep the separate operation credential private; do not give it to other people or put it in a URL.
  3. Use get_transfer_reservation to read that reservation’s rides and request statuses. Contact details, cards and internal notes are excluded.
  4. Use preview_transfer_reservation_request for an address, schedule or cancellation request. Select the explicit ride number returned by the reservation. Show the guest the change, the 60-minute cutoff for that ride and any potential charge.
  5. Only after the guest agrees, call submit_transfer_reservation_request with the exact signed preview. The team reviews it; a pending request does not change or cancel the ride. Retrieve the result with get_transfer_reservation.

Access expires automatically and the guest can revoke it through the original private link. Requests already submitted remain in the team’s queue. Route or price changes, flight-cancellation exceptions and urgent requests require team review; the assistant cannot approve a waiver or promise availability.

Reliable integration

For the six private operations, POST {"operation":"create_draft","arguments":{...}} to v1/operation.php. See the OpenAPI contract for all operations and response fields. Send questions to v1/question.php. All private credentials travel only in the JSON body over HTTPS.

Generate a cryptographically random 64-character lowercase hexadecimal request_key for each draft or access request. Preserve it and the exact input for retries. Use UUID v4 request IDs for inquiries and change previews. After a timeout or uncertain result, check or retry the original request. Never start a duplicate. A changed reservation, expired preview or crossed cutoff requires a new preview and renewed guest approval.

The website also registers the same tools with supporting WebMCP browsers. Human checkout works independently when that browser capability is unavailable.

Service facts · Booking terms · Privacy