使用 MoodTrip.ai MCP 服务器 (api.moodtrip.ai) 搜索、比较、评估并转交酒店预订。当用户提到酒店时使用此技能。
Before attempting any hotel search, verify MoodTrip tools are accessible.
Step 1: Check for tools directly.
Look for any of these tools in your available tool list: search_hotels, get_hotel_details, searchHotelsWithRates, findHotels, search_hotels_by_description, build_booking_link
If ANY of these tools are found → skip to Decision Rules and proceed normally.
Runtime detection: If you are running on OpenClaw, Codex, or any OpenAI-compatible runtime that validates tool schemas strictly, prefer search_hotels and get_hotel_details over searchHotelsWithRates and getHotelDetails. The wrapper tools have identical functionality with OpenAI-compliant schemas (no anyOf/ oneOf at top level).
Step 2: Check if MCP server is already configured.
If tools are not in your direct tool list, check whether api.moodtrip.ai or moodtrip is already configured as an MCP server anywhere in your platform config — including under any of these paths:
mcp.servers.moodtripplugins.entries.acpx.config.mcpServers.moodtripskills.entries.moodtrip-hotel-searchskills/moodtrip-hotel-search/_meta.json → mcpServers.moodtripskills/moodtrip-hotel-search/.mcp.jsonThis skill ships with .mcp.json and _meta.json files that declare the MCP server configuration. If your platform reads these files from skill folders, the server should be auto-configured on install.
If these files are missing from the skill folder, this is an older version. Suggest the user update: clawhub update adiny/moodtrip-hotel-search or openclaw skills update
If the server IS configured but tools are not showing, this is likely a tool loading/exposure issue in the current session, not a missing connection. Restart the session or gateway if appropriate — some platforms only load MCP tools at session start.
Step 3: Auto-connect on OpenClaw when possible. If the server is NOT configured and you are running inside OpenClaw with config-edit capability:
OpenClaw currently supports stdio MCP servers only (not HTTP). Use the mcp-remote bridge:
mcpServers.moodtrip = { "command": "npx", "args": ["-y", "mcp-remote@latest", "https://api.moodtrip.ai/api/mcp-http"] }If you have OpenClaw config tools available, patch config so the MCP server is added automatically.
After adding it, restart/reload the gateway or start a fresh session — tools only load at session start.
Then re-check whether the MoodTrip tools are exposed.
OpenClaw-specific rule:
mcp.servers.moodtrip.url (HTTP format) — it will be skipped. Use the stdio bridge format above.Step 4: Fallback if auto-connect is not possible. Only if auto-connect is not possible:
mcporter available? Run: mcporter config add moodtrip https://api.moodtrip.ai/api/mcp-http
clawhub available? Run: clawhub install adiny/moodtrip-hotel-search
Neither available? Tell the user:
"MoodTrip's hotel search tools aren't connected yet. Please add this MCP server in your platform settings: URL:
https://api.moodtrip.ai/api/mcp-httpNo credentials required. For setup: https://github.com/adiny/moodtrip-hotel-search"
CRITICAL: Do NOT hallucinate hotel results. Do NOT call tools that don't exist. Do NOT attempt curl/fetch workarounds. If tools cannot be verified after all steps, help the user connect or restart the session.
This skill enables the agent to search, compare, evaluate, and hand off hotel bookings through the MoodTrip.ai MCP server. The server exposes 11 core tools covering the full hotel discovery-to-booking-handoff workflow.
Booking is link-based: the agent helps users find and compare hotels, then provides a direct booking URL. The user completes the reservation on the MoodTrip website.
MCP Server URL: https://api.moodtrip.ai/api/mcp-http Protocol: MCP Streamable HTTP (JSON-RPC 2.0)
Authentication: Public read-only API — no credentials required. The server accepts only hotel search queries and returns publicly available hotel data.
For platform-specific setup instructions (Claude.ai, Claude Desktop, ChatGPT, OpenClaw), see: https://github.com/adiny/moodtrip-hotel-search
PlatformHow to ConnectOpenClawUses stdio bridge via mcp-remote (bundled in .mcp.json); or clawhub install adiny/moodtrip-hotel-searchClaude DesktopAdd to claude_desktop_config.json — see GitHub READMEChatGPTAdd as MCP integration in platform settingsAny MCP clientConnect to https://api.moodtrip.ai/api/mcp-http
Before calling any tool, apply these rules to pick the right one:
ConditionToolOpenClaw / Codex runtime — always prefer wrapper toolsUse search_hotels instead of searchHotelsWithRates, get_hotel_details instead of getHotelDetailsUser has dates + destination + wants pricessearch_hotels (preferred) or searchHotelsWithRatesUser describes a vibe, mood, or stylesearch_hotels_by_descriptionUser asks about one specific hotelget_hotel_details (preferred) or getHotelDetails or ask_about_hotelNo pricing needed yet / just browsingfindHotelsUser wants reviews or guest opinionsgetHotelReviewsUser wants to find a specific room type or match a photosearch_rooms_by_descriptionPrevious search returned no resultsrelaxConstraintsUser asks "when is cheapest to visit X?"getCityPriceIndexUser wants price trends for specific hotelsgetHotelPriceIndexAfter search, to help user decidesummarizeResults
ToolPurposeWhen to Usesearch_hotels_by_descriptionAI-powered natural language hotel searchVibe/style searches ("romantic getaway", "boutique with rooftop")searchHotelsWithRatesSearch with real-time pricingWhen user has specific dates and needs pricesfindHotelsMetadata search (no pricing)Browsing/exploring without specific datesgetHotelDetailsFull hotel info + optional pricingDeep-dive into a specific hotelgetHotelReviewsGuest reviews + optional sentimentUser wants to hear what others sayask_about_hotelAI Q&A about a specific hotel"Does this hotel have parking?" type questionssearch_rooms_by_descriptionText-based room searchFind specific room typessummarizeResultsAI summary of search resultsAfter a search, to help user decidegetHotelPriceIndexHistorical price trends per hotelPrice comparison over timegetCityPriceIndexCity-level price trends"When is Paris cheapest?"relaxConstraintsBroaden a failed searchWhen search returns no results
If your runtime uses OpenAI/Codex tool validation (e.g. OpenClaw), use these tools instead of the core equivalents. They have identical functionality with OpenAI-compliant schemas — no anyOf, oneOf, allOf, enum, or not at the top level.
On other platforms (Claude, ChatGPT, generic MCP clients), the core tools work fine and these are optional.
ToolPurposeKey Parameterssearch_hotelsUse instead of searchHotelsWithRates — extended search with pricingquery (natural language), city, country, checkIn, checkOut, adults, maxPrice, minRating``get_hotel_detailsUse instead of getHotelDetails — hotel details with pricinghotelId, checkin, checkout, adults, currency``build_booking_linkGenerate booking/gallery URLs from a hotelIdhotelId (required), checkin, checkout, adults, children (array of ages 0–17, max 6), currency
These tools are exposed via the same MCP server and are always available alongside the core tools.