Trip.com Hotel Room Rates by Page URL (USD, en-US, 1 Room, 2 Adults)
omnial/trip-com-hotel-rates-by-url
Given a Trip.com hotel page URL for one room and two adults priced in US dollars, returns the stay the page was read for (hotel ID, check-in and check-out dates, guests, currency and language), the hotel's name, address, map coordinates, star rating, review score and review count, and every room offer listed (83 in testing): room name, size, bed type, final price and currency, rate type, breakfast and refundable flags, and the cancellation terms.
Price
Up to $0.041 per call; you pay what the call used
The price shown is the price you pay. No monthly minimum. Top-ups start at $5.
Data source
Trip.com
Data from Trip.com.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/trip-com-hotel-rates-by-url" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/trip-com-hotel-rates-by-url" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/trip-com-hotel-rates-by-url", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/trip-com-hotel-rates-by-url", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.041 |
- Updated
- Oct 14, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"pattern": "^https://us\\.trip\\.com/hotels/detail/(?=.*[?&]cityId=[0-9]+(&|$))(?=.*[?&]hotelId=[0-9]+(&|$))(?=.*[?&]checkIn=[0-9]{4}-[0-9]{2}-[0-9]{2}(&|$))(?=.*[?&]checkOut=[0-9]{4}-[0-9]{2}-[0-9]{2}(&|$))(?=.*[?&]adult=2(&|$))(?!.*[?&]adult=(?!2(&|$)))(?=.*[?&]children=0(&|$))(?!.*[?&]children=(?!0(&|$)))(?=.*[?&]crn=1(&|$))(?!.*[?&]crn=(?!1(&|$)))(?=.*[?&]curr=USD(&|$))(?!.*[?&]curr=(?!USD(&|$)))(?=.*[?&]locale=en-US(&|$))(?!.*[?&]locale=(?!en-US(&|$)))\\?[^#\\s]*$",
"maxLength": 500,
"minLength": 1,
"description": "A us.trip.com hotel detail page address carrying the stay in its query string: cityId and hotelId (numbers), checkIn and checkOut (YYYY-MM-DD), and the fixed values adult=2, children=0, crn=1 (one room), curr=USD and locale=en-US."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"properties": {
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"product_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"bed_type": {
"type": "string"
},
"currency": {
"type": "string"
},
"rate_type": {
"type": "string",
"description": "Payment type code (PAY_NOW in testing)."
},
"room_name": {
"type": "string"
},
"room_size": {
"type": [
"number",
"null"
],
"description": "Room size; null when not listed."
},
"refundable": {
"type": "boolean"
},
"final_price": {
"type": "number",
"description": "The listed price for the stay, in the currency given."
},
"is_breakfast": {
"type": "boolean",
"description": "Whether breakfast is included."
},
"room_size_unit": {
"type": [
"string",
"null"
],
"description": "Unit of room_size (square feet in testing); null when not listed."
},
"cancellation_info": {
"type": "string",
"description": "The cancellation deadline and refund terms, as listed."
}
}
},
"description": "One entry per room offer, cheapest first in testing."
}
}
},
"description": "The offer list (one entry in testing)."
},
"specs": {
"type": "object",
"properties": {
"rooms": {
"type": "string"
},
"adults": {
"type": "string"
},
"locale": {
"type": "string"
},
"check_in": {
"type": "string"
},
"children": {
"type": "string"
},
"currency": {
"type": "string"
},
"hotel_id": {
"type": "string"
},
"check_out": {
"type": "string"
}
},
"description": "The stay the page was read for, echoed from the URL; values are strings."
},
"hotel_detail": {
"type": "object",
"properties": {
"lat": {
"type": "string",
"description": "Latitude as a decimal string."
},
"long": {
"type": "string",
"description": "Longitude as a decimal string."
},
"address": {
"type": "string"
},
"hotel_name": {
"type": "string"
},
"star_rating": {
"type": "number"
},
"review_count": {
"type": "number"
},
"review_score": {
"type": "number",
"description": "Guest review score out of 10."
}
}
},
"request_timestamp": {
"type": "string",
"description": "When the rates were read, as an ISO 8601 timestamp."
}
},
"description": "The stay that was read, the hotel's details and its room offers."
}