{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_xj7wma49z5yw","handle":"charter-boats","url":"https://wellknown.network/agents/charter-boats","links":{"self":"https://wellknown.network/agents/charter-boats/record.json","html":"https://wellknown.network/agents/charter-boats","markdown":"https://wellknown.network/agents/charter-boats/record.md","api":"https://wellknown.network/api/v1/agents/charter-boats","status":"https://wellknown.network/api/v1/agents/charter-boats/status","claim":"https://wellknown.network/agents/charter-boats/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/charter-boats/claim.json","badge":"https://wellknown.network/agents/charter-boats/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/charter-boats/history","tools":"https://wellknown.network/api/v1/agents/charter-boats/tools"},"ard":{"identifier":"urn:air:charter.boats:server:charter-boats","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Charter Boats","summary":"Search 14,000+ charter boats with live prices, plus marinas, anchorages, routes and itineraries.","description":"Search 14,000+ charter boats with live prices, plus marinas, anchorages, routes and itineraries.","publisher":{"name":"boats.charter","url":null},"homepage":"https://charter.boats/mcp","repository":"https://github.com/dkremsa/charter-boats-mcp","version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://charter.boats/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-10T16:52:47.658563Z","publishedAt":"2026-10-10T16:52:47.658563Z","registryName":"boats.charter/charter-boats"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"productivity.calendar","name":"Calendar & Scheduling","confidence":1,"provenance":"derived"},{"slug":"commerce.payments","name":"Payments","confidence":1,"provenance":"derived"},{"slug":"geo.maps","name":"Maps & Places","confidence":0.885,"provenance":"derived"},{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":0.54,"provenance":"derived"},{"slug":"commerce.pricing","name":"Pricing & Quotes","confidence":0.51,"provenance":"derived"},{"slug":"commerce.travel","name":"Travel & Booking","confidence":0.51,"provenance":"derived"}],"categories":["analytics","commerce","geo","productivity"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 5h ago.","lastOkAt":"2026-10-23T02:23:17.000Z","lastProbedAt":"2026-10-23T02:23:17.000Z","statusComputedAt":"2026-10-23T02:26:11.709Z","reliability30d":{"probes":41,"successRate":1,"p50Ms":59,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":41,"ok":41,"authBoundaryOk":0,"serviceOk":41,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-23T02:23:17.000Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":60,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against up to 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at m"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"b4200569fdb501ee972612ab13658a876343af52bd457c79711d8950dfa92a89","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T19:32:39.649Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":91,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against up to 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at m"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"b4200569fdb501ee972612ab13658a876343af52bd457c79711d8950dfa92a89","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T13:28:52.445Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":101,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against up to 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at m"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"b4200569fdb501ee972612ab13658a876343af52bd457c79711d8950dfa92a89","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T06:27:25.053Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":89,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against up to 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at m"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"b4200569fdb501ee972612ab13658a876343af52bd457c79711d8950dfa92a89","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T00:31:33.094Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":35,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against up to 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at m"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"b4200569fdb501ee972612ab13658a876343af52bd457c79711d8950dfa92a89","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-21T17:34:12.557Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":102,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against the 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at max"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"f9a95aa181a5d4fa7c5f395557de99540af7144cc896f11aa08458b7ffcdab48","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-21T06:27:45.300Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":54,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against the 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at max"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"f9a95aa181a5d4fa7c5f395557de99540af7144cc896f11aa08458b7ffcdab48","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-21T00:29:20.081Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":31,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against the 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at max"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"f9a95aa181a5d4fa7c5f395557de99540af7144cc896f11aa08458b7ffcdab48","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-20T17:26:32.654Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":69,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against the 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at max"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"f9a95aa181a5d4fa7c5f395557de99540af7144cc896f11aa08458b7ffcdab48","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-20T10:25:37.184Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":101,"error":null,"detail":{"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against the 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at max"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"toolCount":46,"toolsHash":"f9a95aa181a5d4fa7c5f395557de99540af7144cc896f11aa08458b7ffcdab48","serverName":"Charter Boats","capabilities":["resources","tools","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"search_boats","description":"Search charter boats by location, name, type, dates, capacity, budget. The response `total_matching` is the FULL count of matching boats — results are the top `"},{"name":"search_locations","description":"Find 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 m"},{"name":"search_pois","description":"Find 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 c"},{"name":"search_routes","description":"Find sailing passages between destinations with distance and difficulty."},{"name":"search_trips","description":"Find existing curated sailing itineraries by location, name, duration, activities."},{"name":"search_content","description":"Search articles and Q&A on charter.boats. Use for questions about booking process, costs, licenses, cancellation, deposits, check-in, packing, etc. For develope"},{"name":"get_boat_details","description":"Get full details of a specific boat: security deposit, cancellation policy, amenities, fees, seasonal prices, check-in/out times, location details — and the dat"},{"name":"get_boat_standouts","description":"What 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%)\", \"€20"},{"name":"compare_boat","description":"One boat against up to 10 closest published boats of the same type in the same country: specs and the all-in weekly price (in `currency`, EUR when omitted, at m"},{"name":"get_poi_details","description":"Get 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 ab"},{"name":"get_location_details","description":"Get 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"},{"name":"get_trip_details","description":"Get 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 specifi"},{"name":"list_boats","description":"The 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 set"},{"name":"get_boat","description":"One 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 `lock"},{"name":"update_boat","description":"Change 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. T"},{"name":"set_equipment_visibility","description":"Hide 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_b"},{"name":"update_boat_images","description":"Hide 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 "},{"name":"delete_boat_image","description":"Delete one photo of the boat for good. To take a photo off the listing and keep it, use update_boat_images with disable_id."},{"name":"get_company","description":"The company profile as its settings page holds it: public profile, contact, bank, tax and invoicing details, the cancellation policy (`cancel_refund_percent` re"},{"name":"update_company","description":"Change 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, a"},{"name":"get_cancellation_limits","description":"What 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 "},{"name":"set_cancellation_policy","description":"Set 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"},{"name":"set_cross_lock","description":"Switch 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 "},{"name":"list_discounts","description":"The 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`.."},{"name":"create_discount","description":"Create a discount; it comes out of the operator's payout, never out of the platform commission. Returns the stored discount."},{"name":"update_discount","description":"Change 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."},{"name":"delete_discount","description":"End a discount: guests can no longer use it; bookings already made keep it."},{"name":"get_pricing","description":"The 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"},{"name":"add_price","description":"Add a season price to a boat the operator prices directly (pricing source direct). Returns the stored row."},{"name":"update_price","description":"Change 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."},{"name":"delete_price","description":"Delete a direct season price; the dates it covered have no price until another row covers them."},{"name":"list_boat_fees","description":"Every 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"},{"name":"add_fee","description":"Add an extra or fee to a boat the operator prices directly. Returns the stored row and `warnings`, other rows it overlaps."},{"name":"update_fee","description":"Change 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."},{"name":"delete_fee","description":"Delete a direct fee row."},{"name":"list_calendars","description":"The 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 automa"},{"name":"add_calendar","description":"Connect an external calendar to a boat: its events block those dates on charter.boats. Returns the stored source; sync_calendar pulls it at once."},{"name":"remove_calendar","description":"Disconnect an external calendar: its blocked dates are freed, and the holds X-Lock placed for them on the partner calendars are released."},{"name":"sync_calendar","description":"Pull one external calendar now. Returns how many events it brought in, or the error the feed gave."},{"name":"get_availability","description":"The 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 "},{"name":"add_block","description":"Block 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"},{"name":"remove_block","description":"Remove a block the operator placed, freeing its dates and releasing the partner holds it placed."},{"name":"list_bookings","description":"Every booking on the operator's boats, newest charter first. `status` and `payment_status` give the stage: `waitlist` is On waitlist (queued behind another hold"},{"name":"get_booking","description":"One 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 wi"},{"name":"get_earnings","description":"The 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."},{"name":"get_opportunities","description":"The company's Opportunities, as the dashboard's Analysis page shows them, read-only. `boats`: every published boat in the dashboard's order (the charted ones fi"}],"package":null,"toolSurface":{"id":"ts_rkf9rbbk2g6r","endpointId":"ep_trgm5e2s5apx","hash":"b4200569fdb501ee972612ab13658a876343af52bd457c79711d8950dfa92a89","toolCount":46,"serverName":"Charter Boats","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-22T00:31:33.089Z","lastSeenAt":"2026-10-23T02:23:17.005Z","observations":5,"toolNames":["search_boats","search_locations","search_pois","search_routes","search_trips","search_content","get_boat_details","get_boat_standouts","compare_boat","get_poi_details","get_location_details","get_trip_details","list_boats","get_boat","update_boat","set_equipment_visibility","update_boat_images","delete_boat_image","get_company","update_company","get_cancellation_limits","set_cancellation_policy","set_cross_lock","list_discounts","create_discount","update_discount","delete_discount","get_pricing","add_price","update_price","delete_price","list_boat_fees","add_fee","update_fee","delete_fee","list_calendars","add_calendar","remove_calendar","sync_calendar","get_availability","add_block","remove_block","list_bookings","get_booking","get_earnings","get_opportunities"],"distinctSurfaces":10},"endpointFacts":[{"id":"ep_trgm5e2s5apx","url":"https://charter.boats/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-20T03:27:38.898Z","auth":{"observedAt":"2026-10-20T03:27:38.970Z","authRequired":false,"scheme":null,"resourceMetadata":{"url":"https://charter.boats/.well-known/oauth-protected-resource/mcp","resource":"https://charter.boats/mcp","authorizationServers":["https://charter.boats"],"scopesSupported":[]},"authorizationServer":{"url":"https://charter.boats/.well-known/oauth-authorization-server","issuer":"https://charter.boats","grantTypesSupported":["authorization_code"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["none"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":null},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":false,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-20T03:27:39.010Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"charter.boats","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-10-12T23:19:46.000Z","validTo":"2027-01-11T00:19:41.000Z","daysToExpiry":79,"sanCount":2,"fingerprint256":"3A:E8:24:4F:86:D9:0D:CA:EB:F0:56:C1:CE:7F:7D:DC:A8:5D:9B:CD:DA:D0:BC:A7:B1:3A:66:22:B7:58:9C:A1"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"boats.charter/charter-boats","url":"https://registry.modelcontextprotocol.io/v0/servers/boats.charter%2Fcharter-boats","firstSeenAt":"2026-10-11T22:18:57.154Z","fetchedAt":"2026-10-21T09:28:15.068Z","normalizedAt":"2026-10-21T09:28:15.068Z"}]},"firstSeenAt":"2026-10-11T22:18:57.154Z","updatedAt":"2026-10-23T02:27:55.195Z"}