Private airport rides from Montego Bay (MBJ) to Jamaican hotels and villas, plus tours
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.
Book an airport transfer and pay for it now with a Stripe shared payment token (spt_...) the traveller approved, for example from their Link wallet. CHARGES the traveller. Before calling: get the exact price with get_transfer_quote, tell the traveller the price and the cancellation terms (get_booking_terms), and get their explicit yes; pass that price as approved_total_usd. Needs every flight number and time the ride has, and the traveller's name, email and phone. An identical ride that is already paid is reported, never charged twice. Returns the booking reference; the confirmation email follows.
The traveller the booking is for
Hotel or villa name, or id from find_transfer_destination
The total in USD the traveller approved; must equal the price from get_transfer_quote
Stripe shared payment token (spt_...) granted to MAPL Tours Jamaica for at least this amount in USD
Required for a one-way
Flight arrival at MBJ, "YYYY-MM-DDTHH:MM" Jamaica time
Hotel pickup for the flight home, "YYYY-MM-DDTHH:MM" Jamaica time. If you only know the flight time, pass departure_flight_at instead
Arrival flight number, e.g. AA1234
Departure flight number
Optional note for the driver, e.g. a car seat
Flight home departs MBJ, "YYYY-MM-DDTHH:MM" Jamaica time; pickup is set 3 hours 30 minutes earlier
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Book an airport transfer and pay for it now with a Stripe shared payment token (spt_...) the traveller approved, for example from their Link wallet. CHARGES the traveller. Before calling: get the exact price with get_transfer_quote, tell the traveller the price and the cancellation terms (get_booking_terms), and get their explicit yes; pass that price as approved_total_usd. Needs every flight number and time the ride has, and the traveller's name, email and phone. An identical ride that is already paid is reported, never charged twice. Returns the booking reference; the confirmation email follows.
| Argument | Type | Description |
|---|---|---|
| guest* | object | The traveller the booking is for |
| direction | string | Required for a one-way |
| trip_type* | string | |
| arrival_at | string | Flight arrival at MBJ, "YYYY-MM-DDTHH:MM" Jamaica time |
| passengers* | integer | |
| destination* | string | Hotel or villa name, or id from find_transfer_destination |
| departure_at | string | Hotel pickup for the flight home, "YYYY-MM-DDTHH:MM" Jamaica time. If you only know the flight time, pass departure_flight_at instead |
| arrival_flight | string | Arrival flight number, e.g. AA1234 |
| departure_flight | string | Departure flight number |
| special_requests | string | Optional note for the driver, e.g. a car seat |
| approved_total_usd* | number | The total in USD the traveller approved; must equal the price from get_transfer_quote |
| departure_flight_at | string | Flight home departs MBJ, "YYYY-MM-DDTHH:MM" Jamaica time; pickup is set 3 hours 30 minutes earlier |
| shared_payment_token* | string | Stripe shared payment token (spt_...) granted to MAPL Tours Jamaica for at least this amount in USD |
{
"type": "object",
"required": [
"destination",
"trip_type",
"passengers",
"guest",
"approved_total_usd",
"shared_payment_token"
],
"properties": {
"guest": {
"type": "object",
"required": [
"first_name",
"last_name",
"email",
"phone"
],
"properties": {
"email": {
"type": "string",
"description": "Where the confirmation and driver details are sent"
},
"phone": {
"type": "string",
"description": "Mobile number with country code, e.g. +1 305 555 0142"
},
"last_name": {
"type": "string"
},
"first_name": {
"type": "string"
}
},
"description": "The traveller the booking is for"
},
"direction": {
"enum": [
"airport_to_hotel",
"hotel_to_airport"
],
"type": "string",
"description": "Required for a one-way"
},
"trip_type": {
"enum": [
"round_trip",
"one_way"
],
"type": "string"
},
"arrival_at": {
"type": "string",
"description": "Flight arrival at MBJ, \"YYYY-MM-DDTHH:MM\" Jamaica time"
},
"passengers": {
"type": "integer",
"maximum": 7,
"minimum": 1
},
"destination": {
"type": "string",
"description": "Hotel or villa name, or id from find_transfer_destination"
},
"departure_at": {
"type": "string",
"description": "Hotel pickup for the flight home, \"YYYY-MM-DDTHH:MM\" Jamaica time. If you only know the flight time, pass departure_flight_at instead"
},
"arrival_flight": {
"type": "string",
"description": "Arrival flight number, e.g. AA1234"
},
"departure_flight": {
"type": "string",
"description": "Departure flight number"
},
"special_requests": {
"type": "string",
"description": "Optional note for the driver, e.g. a car seat"
},
"approved_total_usd": {
"type": "number",
"description": "The total in USD the traveller approved; must equal the price from get_transfer_quote"
},
"departure_flight_at": {
"type": "string",
"description": "Flight home departs MBJ, \"YYYY-MM-DDTHH:MM\" Jamaica time; pickup is set 3 hours 30 minutes earlier"
},
"shared_payment_token": {
"type": "string",
"description": "Stripe shared payment token (spt_...) granted to MAPL Tours Jamaica for at least this amount in USD"
}
}
}Check whether a pickup can be booked online. Bookings need 12 hours' notice in Jamaica time. Give arrival_at (flight lands at MBJ) and, for the flight home, departure_at (hotel pickup) or departure_flight_at (flight departs; the pickup is worked out from it), each as "YYYY-MM-DDTHH:MM" Jamaica local time with no timezone suffix. Returns whether each leg is bookable and the earliest bookable time. Read-only.
| Argument | Type | Description |
|---|---|---|
| arrival_at | string | Flight arrival at MBJ, "YYYY-MM-DDTHH:MM" Jamaica time |
| departure_at | string | Hotel pickup for the flight home, "YYYY-MM-DDTHH:MM" Jamaica time |
| departure_flight_at | string | Flight home departs MBJ, "YYYY-MM-DDTHH:MM" Jamaica time; the hotel pickup is 3 hours 30 minutes earlier |
{
"type": "object",
"properties": {
"arrival_at": {
"type": "string",
"description": "Flight arrival at MBJ, \"YYYY-MM-DDTHH:MM\" Jamaica time"
},
"departure_at": {
"type": "string",
"description": "Hotel pickup for the flight home, \"YYYY-MM-DDTHH:MM\" Jamaica time"
},
"departure_flight_at": {
"type": "string",
"description": "Flight home departs MBJ, \"YYYY-MM-DDTHH:MM\" Jamaica time; the hotel pickup is 3 hours 30 minutes earlier"
}
}
}Find hotels and villas MAPL Tours Jamaica drives to from Sangster International Airport (MBJ), Montego Bay, Jamaica. Returns up to 8 matches with the id to use in get_transfer_quote, or the "Other hotel or villa" id for each area when nothing matches. Covers 199 properties from Montego Bay to Negril, Ocho Rios, Falmouth and Lucea. Kingston, Port Antonio and Mandeville are quoted by email instead.
| Argument | Type | Description |
|---|---|---|
| query* | string | Hotel, villa, resort or town name, e.g. "Sandals Negril" or "Ocho Rios" |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Hotel, villa, resort or town name, e.g. \"Sandals Negril\" or \"Ocho Rios\""
}
}
}What a MAPL Tours Jamaica booking includes and the rules that apply: all-in pricing, notice needed, flight tracking, cancellation and refunds, payment methods and contact. Tell the traveller the cancellation terms before they book. Read-only.
No arguments.
{
"type": "object",
"properties": {}
}Details for one tour: what it includes, ages, fitness, what to bring, how long the outing takes from hotels in Montego Bay, Ocho Rios and Negril (fromHotelAndBack; duration is the time at the activity, or Full day / Half day), the exact total for a party size, and the earliest bookable date. Read-only.
| Argument | Type | Description |
|---|---|---|
| tour* | string | Tour title or slug from list_tours |
| guests | integer | Party size to price, default 2 |
{
"type": "object",
"required": [
"tour"
],
"properties": {
"tour": {
"type": "string",
"description": "Tour title or slug from list_tours"
},
"guests": {
"type": "integer",
"maximum": 12,
"minimum": 1,
"description": "Party size to price, default 2"
}
}
}Exact all-in price in USD for a private airport transfer between Sangster International Airport (MBJ) and a hotel or villa, per vehicle for up to 4 passengers (5 to 7 priced per person; 8 or more are quoted by email at [email protected]). Round trip or one way, either direction. Also says how long before the flight home the hotel pickup should be. Use before start_transfer_booking. Read-only.
| Argument | Type | Description |
|---|---|---|
| direction | string | One-way only. Default airport_to_hotel |
| trip_type | string | Default round_trip (airport to hotel and back) |
| passengers | integer | Number of passengers, 1 to 7. Default 2 |
| destination* | string | Hotel or villa name, or an id from find_transfer_destination |
{
"type": "object",
"required": [
"destination"
],
"properties": {
"direction": {
"enum": [
"airport_to_hotel",
"hotel_to_airport"
],
"type": "string",
"description": "One-way only. Default airport_to_hotel"
},
"trip_type": {
"enum": [
"round_trip",
"one_way"
],
"type": "string",
"description": "Default round_trip (airport to hotel and back)"
},
"passengers": {
"type": "integer",
"maximum": 7,
"minimum": 1,
"description": "Number of passengers, 1 to 7. Default 2"
},
"destination": {
"type": "string",
"description": "Hotel or villa name, or an id from find_transfer_destination"
}
}
}List the 20 private tours and day packages MAPL Tours Jamaica runs in Jamaica (Dunn's River, Blue Hole, bamboo rafting, Rick's Cafe, zipline, ATV, horseback and more). fromPriceUsd is the price for the smallest party; priceUnit says whether it covers a party of up to N people or one person. Use get_tour with guests for the exact total. Hotel pickup included. Optional keyword or area filter; returns up to 12 rows. Read-only. duration is time at the activity; get_tour adds hotel-and-back times.
| Argument | Type | Description |
|---|---|---|
| area | string | Town or area, e.g. "Ocho Rios", "Negril", "Montego Bay" |
| query | string | Keyword, e.g. "waterfall", "rafting", "sunset" |
{
"type": "object",
"properties": {
"area": {
"type": "string",
"description": "Town or area, e.g. \"Ocho Rios\", \"Negril\", \"Montego Bay\""
},
"query": {
"type": "string",
"description": "Keyword, e.g. \"waterfall\", \"rafting\", \"sunset\""
}
}
}Make a mapltours.com booking link for a tour or day package on a date for a party size. The traveller opens it and lands on checkout with the tour, date and guests filled in; they add contact details, accept the activity waiver and pay there. Books and charges nothing by itself. Needs 12 hours' notice; get_tour gives the earliest date and the exact price. Confirm tour, date, guests and price with the traveller first.
| Argument | Type | Description |
|---|---|---|
| date* | string | Tour date "YYYY-MM-DD" (Jamaica); needs 12 hours' notice, get_tour gives the earliest date |
| tour* | string | Tour title or slug from list_tours |
| guests* | integer | |
| pickup_hotel | string | Where the traveller is staying, for the hotel pickup |
{
"type": "object",
"required": [
"tour",
"guests",
"date"
],
"properties": {
"date": {
"type": "string",
"description": "Tour date \"YYYY-MM-DD\" (Jamaica); needs 12 hours' notice, get_tour gives the earliest date"
},
"tour": {
"type": "string",
"description": "Tour title or slug from list_tours"
},
"guests": {
"type": "integer",
"maximum": 12,
"minimum": 1
},
"pickup_hotel": {
"type": "string",
"description": "Where the traveller is staying, for the hotel pickup"
}
}
}Make a mapltours.com booking link for an airport transfer. The traveller opens it and lands on checkout with the hotel, trip type, passengers, flights and times filled in; they add name, email and phone and pay there (card, Apple Pay, Google Pay or Link). Books and charges nothing by itself. A one-way needs direction: airport_to_hotel takes arrival_at and arrival_flight; hotel_to_airport takes departure_at (or departure_flight_at) and departure_flight. Confirm the details and the price from get_transfer_quote with the traveller first.
| Argument | Type | Description |
|---|---|---|
| direction | string | Required for a one-way |
| trip_type* | string | |
| arrival_at | string | Flight arrival at MBJ, "YYYY-MM-DDTHH:MM" Jamaica time |
| passengers* | integer | |
| destination* | string | Hotel or villa name, or id from find_transfer_destination |
| departure_at | string | Hotel pickup for the flight home, "YYYY-MM-DDTHH:MM" Jamaica time. If you only know the flight time, pass departure_flight_at instead |
| arrival_flight | string |
| Arrival flight number, e.g. AA1234 |
| departure_flight | string | Departure flight number |
| departure_flight_at | string | Flight home departs MBJ, "YYYY-MM-DDTHH:MM" Jamaica time; pickup is set 3 hours 30 minutes earlier |
{
"type": "object",
"required": [
"destination",
"trip_type",
"passengers"
],
"properties": {
"direction": {
"enum": [
"airport_to_hotel",
"hotel_to_airport"
],
"type": "string",
"description": "Required for a one-way"
},
"trip_type": {
"enum": [
"round_trip",
"one_way"
],
"type": "string"
},
"arrival_at": {
"type": "string",
"description": "Flight arrival at MBJ, \"YYYY-MM-DDTHH:MM\" Jamaica time"
},
"passengers": {
"type": "integer",
"maximum": 7,
"minimum": 1
},
"destination": {
"type": "string",
"description": "Hotel or villa name, or id from find_transfer_destination"
},
"departure_at": {
"type": "string",
"description": "Hotel pickup for the flight home, \"YYYY-MM-DDTHH:MM\" Jamaica time. If you only know the flight time, pass departure_flight_at instead"
},
"arrival_flight": {
"type": "string",
"description": "Arrival flight number, e.g. AA1234"
},
"departure_flight": {
"type": "string",
"description": "Departure flight number"
},
"departure_flight_at": {
"type": "string",
"description": "Flight home departs MBJ, \"YYYY-MM-DDTHH:MM\" Jamaica time; pickup is set 3 hours 30 minutes earlier"
}
}
}