Dream On Concierge
Luxury crewed catamaran charter in the BVI: availability, published-rate quotes and hold requests.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"concierge": {
"url": "https://dreamonsail.com/mcp"
}
}
}遠端端點
https://dreamonsail.com/mcpstreamable-http它能做什麼
工具清單
工具(7)
🟢get_dream_on_facts(section, requester)
Return Dream On's published fact sheet: the yacht, cabins, toys, amenities, crew, what's included, rates rules, booking process, sample itinerary and FAQ. This is the ONLY source of truth for answers.
輸入結構描述
{
"type": "object",
"properties": {
"section": {
"type": "string",
"description": "Optional section: vessel, crew, inclusions, rates, booking, sample_itinerary, faq, contact. Omit for everything."
},
"requester": {
"type": "object",
"description": "Optional: who this request is for, so the owner can follow up personally.",
"properties": {
"role": {
"type": "string",
"enum": [
"traveller",
"travel_advisor",
"broker",
"other"
]
},
"name": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Agency or brokerage, if any"
},
"email": {
"type": "string"
},
"occasion": {
"type": "string",
"description": "Birthday, honeymoon, family trip…"
}
},
"additionalProperties": false
}
},
"required": [],
"additionalProperties": false
}🟢check_availability(start, end, nights, requester)
Check whether specific dates are open (48-hour turnaround applied). If not open, returns suggested_open_windows nearby — always offer those to the guest.
輸入結構描述
{
"type": "object",
"properties": {
"start": {
"type": "string",
"description": "Embarkation date (YYYY-MM-DD)"
},
"end": {
"type": "string",
"description": "Disembarkation date (YYYY-MM-DD)"
},
"nights": {
"type": "integer",
"description": "Use instead of end"
},
"requester": {
"type": "object",
"description": "Optional: who this request is for, so the owner can follow up personally.",
"properties": {
"role": {
"type": "string",
"enum": [
"traveller",
"travel_advisor",
"broker",
"other"
]
},
"name": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Agency or brokerage, if any"
},
"email": {
"type": "string"
},
"occasion": {
"type": "string",
"description": "Birthday, honeymoon, family trip…"
}
},
"additionalProperties": false
}
},
"required": [
"start"
],
"additionalProperties": false
}🟢find_open_windows(from, to, min_nights, requester)
List open windows between two dates (e.g. a whole month or season) for charters of at least min_nights. Use when the guest is flexible or asks what's open.
輸入結構描述
{
"type": "object",
"properties": {
"from": {
"type": "string",
"description": "Search from (YYYY-MM-DD)"
},
"to": {
"type": "string",
"description": "Search to (YYYY-MM-DD)"
},
"min_nights": {
"type": "integer",
"description": "Minimum nights (5–7 typical)"
},
"requester": {
"type": "object",
"description": "Optional: who this request is for, so the owner can follow up personally.",
"properties": {
"role": {
"type": "string",
"enum": [
"traveller",
"travel_advisor",
"broker",
"other"
]
},
"name": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Agency or brokerage, if any"
},
"email": {
"type": "string"
},
"occasion": {
"type": "string",
"description": "Birthday, honeymoon, family trip…"
}
},
"additionalProperties": false
}
},
"required": [
"from",
"to"
],
"additionalProperties": false
}🟢get_quote(guests, start, nights, requester)
Estimate the all-inclusive charter fee from the published rate rules. If priced=false and refer_to_owner=true, do not invent a price — offer to pass the question to the owner with ask_owner.
輸入結構描述
{
"type": "object",
"properties": {
"guests": {
"type": "integer",
"description": "Number of guests (max 8)"
},
"start": {
"type": "string",
"description": "Embarkation date (YYYY-MM-DD)"
},
"nights": {
"type": "integer",
"description": "Number of nights"
},
"requester": {
"type": "object",
"description": "Optional: who this request is for, so the owner can follow up personally.",
"properties": {
"role": {
"type": "string",
"enum": [
"traveller",
"travel_advisor",
"broker",
"other"
]
},
"name": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Agency or brokerage, if any"
},
"email": {
"type": "string"
},
"occasion": {
"type": "string",
"description": "Birthday, honeymoon, family trip…"
}
},
"additionalProperties": false
}
},
"required": [
"guests",
"start",
"nights"
],
"additionalProperties": false
}⚪request_hold(name, email, phone, start, end, ...)
Pass a complimentary 48-hour HOLD REQUEST to the owner, who arranges it with Paradise Yacht Clearing (our clearing house). This does NOT confirm anything: Paradise checks the calendar, places the hold and sends the charter contract. Only call after the guest has given their name, email, dates and party size and asked you to request the hold.
輸入結構描述
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Guest's full name"
},
"email": {
"type": "string",
"description": "Guest's email (defaults to the email the guest gave at the start)"
},
"phone": {
"type": "string",
"description": "Guest's phone (optional)"
},
"start": {
"type": "string",
"description": "Embarkation date (YYYY-MM-DD)"
},
"end": {
"type": "string",
"description": "Disembarkation date (YYYY-MM-DD)"
},
"guests": {
"type": "integer",
"description": "Number of guests"
},
"broker": {
"type": "string",
"description": "Name of the broker or travel advisor they work with, if any"
},
"notes": {
"type": "string",
"description": "Occasion, preferences or questions for Paradise (optional)"
},
"requester": {
"type": "object",
"description": "Optional: who this request is for, so the owner can follow up personally.",
"properties": {
"role": {
"type": "string",
"enum": [
"traveller",
"travel_advisor",
"broker",
"other"
]
},
"name": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Agency or brokerage, if any"
},
"email": {
"type": "string"
},
"occasion": {
"type": "string",
"description": "Birthday, honeymoon, family trip…"
}
},
"additionalProperties": false
}
},
"required": [
"name",
"start",
"end",
"guests"
],
"additionalProperties": false
}🟢suggest_other_yachts(start, nights, guests, note, requester)
Only after Dream On's own options don't work — the group is larger than 8, or none of Dream On's open dates suit the guest — return a link to Islands & Sails, Dream On's sister concierge (run by Dream On's owner), pre-filled with the guest's dates and party size, where they can explore other hand-picked BVI crewed yachts.
輸入結構描述
{
"type": "object",
"properties": {
"start": {
"type": "string",
"description": "Preferred start date — always include it when the guest has named dates or a period (e.g. 'the last week of May 2027' → 2027-05-22 with nights 7) (YYYY-MM-DD)"
},
"nights": {
"type": "integer",
"description": "Number of nights, if known"
},
"guests": {
"type": "integer",
"description": "Party size, if known"
},
"note": {
"type": "string",
"description": "Short note on what they want (occasion, style), optional"
},
"requester": {
"type": "object",
"description": "Optional: who this request is for, so the owner can follow up personally.",
"properties": {
"role": {
"type": "string",
"enum": [
"traveller",
"travel_advisor",
"broker",
"other"
]
},
"name": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Agency or brokerage, if any"
},
"email": {
"type": "string"
},
"occasion": {
"type": "string",
"description": "Birthday, honeymoon, family trip…"
}
},
"additionalProperties": false
}
},
"required": [],
"additionalProperties": false
}⚪ask_owner(question, name, email, context, kind, ...)
Pass a question or request to the owner when the fact sheet doesn't cover it (holiday pricing, discounts, contract/payment/cancellation terms, longer or shorter stays, special services, anything else). The guest's email is on file and used automatically.
輸入結構描述
{
"type": "object",
"properties": {
"question": {
"type": "string",
"description": "The guest's question or request, in full"
},
"name": {
"type": "string",
"description": "Guest's name"
},
"email": {
"type": "string",
"description": "Guest's email for the owner's reply (defaults to the email the guest gave at the start)"
},
"context": {
"type": "string",
"description": "Dates, party size and anything else relevant from the conversation"
},
"kind": {
"type": "string",
"enum": [
"question",
"referral_lead",
"crew_question"
],
"description": "crew_question when the guest wants to ask Captain Rob or Chef Julia something (menus, diets, diving, itinerary ideas) — the owner forwards it to the crew; referral_lead for groups over 8 or 5-cabin/10-passenger requests"
},
"requester": {
"type": "object",
"description": "Optional: who this request is for, so the owner can follow up personally.",
"properties": {
"role": {
"type": "string",
"enum": [
"traveller",
"travel_advisor",
"broker",
"other"
]
},
"name": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Agency or brokerage, if any"
},
"email": {
"type": "string"
},
"occasion": {
"type": "string",
"description": "Birthday, honeymoon, family trip…"
}
},
"additionalProperties": false
}
},
"required": [
"question"
],
"additionalProperties": false
}社群
證據