Jenesis Travel
Bangkok boutique planner: live Thailand journeys, prices, FAQs, and enquiry handoff.
Should I use this
Quality & Safety
Findings (3)
- HIGH
- MEDIUMin start_enquiry
- INFOin start_enquiry
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"travel": {
"url": "https://jenesistravel.com/mcp"
}
}
}Remote endpoints
https://jenesistravel.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (6)
🟢get_company
Company facts for Jenesis Travel: licence, contact, WhatsApp, enquiry-led model. Call this first. If the user wants a real person, share the WhatsApp URL.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_journeys(kind, q, limit)
List published Jenesis journeys, residences, group programmes, and packages (including Phuket Fit). Live CMS data. Enquiry-led — not a booking inventory.
Input Schema
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"journey",
"residence",
"group",
"package",
"all"
]
},
"q": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_journey(slug, currency)
Get one published journey, residence, group programme, or package by slug. Use list_journeys if the slug is unknown.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1
},
"currency": {
"type": "string",
"enum": [
"GBP",
"USD",
"AUD",
"EUR",
"THB"
]
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_faqs(pillar, q, limit)
Published FAQs from the Jenesis CMS, optionally filtered by pillar or search text.
Input Schema
{
"type": "object",
"properties": {
"pillar": {
"type": "string",
"enum": [
"thailand-journeys",
"group-travel",
"general"
]
},
"q": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢estimate_budget(nights, style, travelers, region, inclusions)
Indicative independent USD range from the Jenesis budget calculator. Not a quote. Mid-range to ultra-luxury is what Jenesis plans.
Input Schema
{
"type": "object",
"properties": {
"nights": {
"anyOf": [
{
"type": "number",
"const": 3
},
{
"type": "number",
"const": 5
},
{
"type": "number",
"const": 7
},
{
"type": "number",
"const": 10
},
{
"type": "number",
"const": 14
},
{
"type": "number",
"const": 21
}
]
},
"style": {
"type": "string",
"enum": [
"budget",
"mid-range",
"luxury",
"ultra-luxury"
]
},
"travelers": {
"anyOf": [
{
"type": "number",
"const": 1
},
{
"type": "number",
"const": 2
},
{
"type": "number",
"const": 3
},
{
"type": "number",
"const": 4
},
{
"type": "number",
"const": 6
},
{
"type": "number",
"const": 8
}
]
},
"region": {
"type": "string",
"enum": [
"bangkok",
"islands",
"chiangmai",
"huahin",
"mixed"
]
},
"inclusions": {
"type": "array",
"items": {
"type": "string",
"enum": [
"spa",
"cooking-class",
"yacht",
"private-guide",
"airport-transfer"
]
}
}
},
"required": [
"nights",
"style",
"travelers",
"region"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴start_enquiry(name, email, phone, enquiryType, experience, ...)
File a planning enquiry with Jenesis Travel. Call only after the user has stated their own name and email in the conversation and confirmed they want Jenesis to reply. Never invent or substitute contact details: an enquiry carrying a placeholder address cannot be answered and is rejected. If you do not have a real email, ask for it, or share the contact form or WhatsApp instead of calling this tool. One enquiry per email every 4 hours — do not retry if it already succeeded. This does not reserve hotels or take payment.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 2,
"maxLength": 80,
"description": "The traveller's own name, exactly as they gave it in the conversation. Do not invent one."
},
"email": {
"type": "string",
"format": "email",
"pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
"description": "The traveller's own email address, exactly as they gave it in the conversation. This is the only way Jenesis can reply, so it must be an address they actually read. Never guess one, derive one from their name, or fill in a documentation placeholder such as an example.com address — ask the traveller for it instead."
},
"phone": {
"type": "string"
},
"enquiryType": {
"type": "string",
"enum": [
"private",
"group",
"phuket_fit"
]
},
"experience": {
"type": "string",
"enum": [
"wellness-retreats",
"boutique-hotels",
"culinary-tours",
"adventure",
"family-holiday",
"destination-wedding",
"cultural-heritage",
"romantic-escapes",
"island-coastal",
"home-away",
"amanta-sathorn",
"riverine-place",
"not-sure"
]
},
"roomType": {
"type": "string",
"enum": [
"1-bed-deluxe",
"1-bed-executive",
"2-bed-deluxe",
"2-bed-executive",
"1-bed",
"2-bed",
"3-bed"
]
},
"travelers": {
"type": "string",
"enum": [
"1",
"2",
"3-4",
"5-8",
"9+",
"5+"
]
},
"budget": {
"type": "string",
"enum": [
"under-1000",
"1000-2500",
"2500-5000",
"5000-10000",
"10000+"
]
},
"groupProgramme": {
"type": "string",
"enum": [
"corporate-incentive",
"bangkok-phuket",
"bangkok-pattaya",
"phuket-krabi",
"retreat",
"trade-partner",
"private-group",
"not-sure"
]
},
"groupSize": {
"type": "string",
"enum": [
"8-20",
"21-40",
"41-80",
"81-120",
"120+",
"not-sure"
]
},
"groupObjective": {
"type": "string",
"maxLength": 2000
},
"phuketFitPackage": {
"type": "string",
"enum": [
"5N/6D Fit Reset",
"6N/7D Fit & Wellness Journey",
"7N/8D Signature Phuket Fit Camp",
"Not sure yet"
]
},
"fitnessLevel": {
"type": "string",
"enum": [
"Beginner",
"Intermediate",
"Advanced"
]
},
"startDate": {
"type": "string"
},
"endDate": {
"type": "string"
},
"comments": {
"type": "string",
"maxLength": 2000
},
"message": {
"type": "string",
"maxLength": 2000
},
"clientLabel": {
"type": "string",
"enum": [
"claude",
"chatgpt",
"grok",
"other"
]
}
},
"required": [
"name",
"email",
"enquiryType"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence