Charter Boats

boats.charter/charter-boats · v1.0.0 · productivity

Charter Boats is healthy: it completed an MCP handshake in 1073 ms and exposes 45 tools.

Search 14,000+ charter boats with live prices, plus marinas, anchorages, routes and itineraries.

Endpoint: https://charter.boats/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count45
Latency1073 ms
Last checked (UTC)2026-10-17T00:50:42.487Z

Health history

Checked (UTC)StatusLatencyError
2026-10-17T00:50:42.487ZHealthy1073
2026-10-15T18:00:12.138ZHealthy1819
2026-10-15T18:00:12.031ZHealthy2094
2026-10-14T17:10:44.625ZHealthy1347

Tools (45)

search_boatsSearch charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `limit` of those, so phrase counts from it ("8 of 48 available") and re-call with a higher limit when the guest wants more. Pass the guest's
search_locationsFind marinas, harbours and anchorages three ways: by NAME (q), by POPULARITY within an area (region/country/city — ranked on observed AIS vessel traffic for a month), or by REACH from a place you already have (`from` + `within_nm`) — where boats are actually recorded sailing to from there, with meas
search_poisFind restaurants, fuel, groceries, attractions near a location, or search by POI name. POIs carry no ratings — rank and describe them by what they are and how close they are.
search_routesFind sailing passages between destinations with distance and difficulty.
search_tripsFind existing curated sailing itineraries by location, name, duration, activities.
search_contentSearch articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For developer questions about our API (endpoints, keys, params), use type=api to search the API docs at docs.charter.boats.
get_boat_detailsGet full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dates it is actually free (priced date ranges plus bookable slots for the year ahead). Use when the user asks about a specific boat, and whenev
get_boat_standoutsWhat stands out about ONE boat for one week, measured against similar boats: its pros and its cons, each with how it compares ("47.9 ft (better than 99%)", "€2000 security deposit (typical €1700)", "Rare kit: [0.8%] Cool Box" — n% of those boats have it). Use when the guest asks what is special abou
compare_boatOne boat against the 10 closest published boats of the same type in the same country: specs and the all-in weekly price (EUR, at max guests, the figure search compares) for each of the next 52 weeks. Pass `id` (a boat), or `boat_type` and `country` (optionally `region`, `city`) to describe one. The
get_poi_detailsGet full details of a point of interest by ID: description, opening hours, address, contact, nearby marinas, special offers. Use when user is viewing or asks about a specific POI. POIs carry NO rating or review count — do not claim one or ask the guest to check it.
get_location_detailsGet full details of a marina, anchorage or bay by ID: description, amenities, contact, boat count and cheapest day rate, PLUS what only we know from tracked AIS traffic — how busy it is in each month of the year, how boats use it (share of overnight visits, typical day-stop length, what time it fill
get_trip_detailsGet full details of a sailing itinerary/trip by ID: day-by-day stops, distances, activities, highlights, notes. Use when user is viewing or asks about a specific trip.
list_boatsThe operator's own fleet: every boat of each company the key holder belongs to, published or not, with its company's name, specs, pricing source, changeover settings and photos. Start here: it gives the boat ids and company ids every other operator tool takes. An empty list means the account belongs
get_boatOne of the operator's boats in full, as its edit page shows it: every editable field, photos with their ids, videos, equipment (hidden items included) and `locked_fields`, the fields MMK or Nausys rewrite on every sync.
update_boatChange details of one of the operator's boats; only the fields sent change, and a field listed in `locked_fields` is ignored because the partner sync owns it. The answer carries `is_published` and `missing`, what the boat still lacks to be listed. Read the current value with its read tool first; thi
set_equipment_visibilityHide an equipment item from the boat's public listing and search, or show it again; the same item under another wording follows it. Use the item's name as get_boat lists it in `equipment_items`. Returns the new state.
update_boat_imagesHide one photo, show a hidden one again, or set the photo order (the first is the cover); send one of the three. Photo ids come from get_boat. Returns the boat with its photos as they now stand. New photos are uploaded on the boat's edit page.
delete_boat_imageDelete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id.
get_companyThe company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` refunded when the guest cancels at least `cancel_refund_days` before the charter), the X-Lock switch (in `settings`) and the member and boat c
update_companyChange company details; only the fields sent change. Any member may change the public profile; contact email, bank, tax and invoicing details are the owner's, and a request naming one from anyone else is refused whole. Read the current value with its read tool first; this call returns the value as i
get_cancellation_limitsWhat the company's payment schedule means for its cancellation policy: per boat source, the share paid in advance and how many days before the charter the rest is due, with the largest refund each notice period covers from money already collected. Read beside get_company's `cancel_refund_percent` an
set_cancellation_policySet the company's cancellation policy, company owners only: a guest who cancels at least `cancel_refund_days` before the charter gets `cancel_refund_percent` of the charter price back. The policy applies to the company's MMK and Nausys bookings only; its direct boats follow charter.boats terms, so a
set_cross_lockSwitch X-Lock for a company, company admins and owners only. With X-Lock on, every block, option or booking placed on one partner calendar (MMK or Nausys) also places a hold on the boat's other partner calendar. `sync_existing` true also places or releases those holds for the bookings and blocks alr
list_discountsThe company's active discounts: codes guests type at checkout, automatic ones, and the pay-in-full discount, each with its value, booking window (`start_date`..`end_date`), stay window (`stay_from`..`stay_to`) and the boats it covers (`all_boats`, else `boat_ids`). An empty list means the company ru
create_discountCreate a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount.
update_discountChange a discount; only the fields sent change. Read the current value with its read tool first; this call returns the value as it now stands.
delete_discountEnd a discount: guests can no longer use it; bookings already made keep it.
get_pricingThe season prices of the fleet: per boat, every week-price row with its id, date span (month/day, repeating every year), `price_per_day` and `source`. Rows with `source` mmk or nausys come from the partner and change there; rows with `source` direct are the operator's to edit with add_price, update_
add_priceAdd a season price to a boat the operator prices directly (pricing source direct). Returns the stored row.
update_priceChange a direct season price; only the fields sent change. Read the current value with its read tool first; this call returns the value as it now stands.
delete_priceDelete a direct season price; the dates it covered have no price until another row covers them.
list_boat_feesEvery extra and fee row of a boat, as its edit page lists them: amount, period, whether it is required, how it is collected, and its `source`. Rows with `source` direct are the operator's to edit.
add_feeAdd an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps.
update_feeChange a direct fee row; only the fields sent change. Read the current value with its read tool first; this call returns the value as it now stands.
delete_feeDelete a direct fee row.
list_calendarsThe external calendars (iCal feeds, a Google Calendar by its secret iCal address) connected to one boat, with their sync state. MMK and Nausys are linked automatically and are not listed here. An empty list means none is connected to that boat.
add_calendarConnect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once.
remove_calendarDisconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released.
sync_calendarPull one external calendar now. Returns how many events it brought in, or the error the feed gave.
get_availabilityThe company's fleet calendar: every boat with its partner links, and every event that takes dates — bookings, options, blocks and synced partner or iCal events — each with its source. Read it before add_block to see what a range already holds.
add_blockBlock dates on one of the operator's boats so they cannot be booked. On a partner-synced boat the hold is placed on that partner too, and with X-Lock on also on the other partner. Returns the stored block and how each hold went.
remove_blockRemove a block the operator placed, freeing its dates and releasing the partner holds it placed.
list_bookingsEvery booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold), unpaid `pending` or `accepted` is an Option that lapses at `hold_expires_at`, and a booking with money in is booked. Each row states the
get_bookingOne booking in full: stage (as in list_bookings), dates, guest, price lines, the operator's payout and `payout_schedule`, the payments coming to the operator with their due dates (empty until the booking is paid). Read-only.
get_earningsThe company's earnings: total and monthly payouts, payouts still pending on accepted bookings, and the latest bookings, in the currency the operator is paid in.