otaghak-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ot_find_placeA | Turn a place name into the city / province slugs that ot_search_rooms needs, or a room code into its room. Cities come with their listing count (undated). A province |
| ot_search_roomsA | Search Otaghak stays (villas, cottages, apartments, eco-lodges) in a city, province or collection. With check_in/check_out every room is available on those dates and carries the stay price:
price_per_night (average after discount) and stay_total for |
| ot_search_filtersA | List the search filters of a city, province or collection (or the whole site) with the codes ot_search_rooms takes. Returns the nightly price range (Toman), room types (ids for room_types), filter codes for
|
| ot_destinationsA | Popular cities and collections (themed landing pages: discounted, jungle villas, villas with pool, ...). Use when the user has no destination yet, or to find collection codes for ot_search_rooms
|
| ot_dealsA | Current discounts: the home page's last-second deals and the most discounted stays (biggest percent first). last_second rooms are site-wide tonight-style deals shown 14:00-23:50 Iran time with undated
prices; they are left out when |
| ot_helpA | Read Otaghak's help center: the FAQ, or the guest terms (booking and cancellation rules, the five cancellation policies, refunds, wallet, check-in rules), host rules or quality policy. Without |
| ot_travel_guideA | Get the site's travel guide for a destination: guide text, the destination's FAQ (best season, sights, prices), related search pages (city themes such as beach, cottage, apartment with listing counts) and matching blog articles (restaurants, sights, souvenirs). Use when the user asks what a place is like or what to do there. City theme slugs from
related_pages go to ot_search_rooms |
| ot_roomA | Get one room: description, capacity, rooms and beds, amenities, house rules, check-in/out times, cancellation policy, host, nearby places, approximate location, photos and nightly price. With check_in/check_out the price is the average night for those dates, even when they are booked (ot_price_quote or ot_room_calendar tells whether they are free); without, an undated starting price. Use after ot_search_rooms or ot_find_place. Next: ot_price_quote (exact total), ot_room_calendar (free nights), ot_reviews, ot_host (host response and acceptance rates), ot_similar_rooms. |
| ot_reviewsA | Get a room's rating (0-5), star histogram, six category scores, percent of guests who recommend it, and written reviews, newest first (with host replies). rating is null and reviews empty when the room has no ratings yet (new rooms). Use after ot_room or ot_search_rooms to judge quality; ot_host has reviews across all of a host's rooms. |
| ot_similar_roomsA | Get 4-5 alternatives to a room (same city and type), as the room page shows them. Without dates prices are undated starting prices (not tonight's). With check_in/check_out the
rooms are re-priced for that stay; rooms that are booked or too small for |
| ot_hostA | Check a host: response time, response and acceptance rates, member since, active rooms (undated starting prices) and the newest guest reviews across all their rooms. Pass host_id, or room_id to find the room's host. Use to judge whether a host is reliable or to see their other places. |
| ot_room_calendarA | Get a room's calendar day by day: nightly price after and before discount (Toman), free or booked, instant booking, minimum and maximum nights when arriving that day, weekend, public holiday, late checkout. A night is priced on its arrival day. Calendars open only to the end of next Jalali month. Use to find free dates, the cheapest nights or allowed stay lengths. Next: ot_price_quote for a stay. |
| ot_price_quoteA | Get the amount to pay (Toman) for a room, dates and guests: nights_total (the room page's
payable amount for the base guests), the extra-guest charge above the base guests (after
discount), optional late checkout, and the total. Also checks that every night is free, the stay length is allowed and the room takes that many guests (available=false with a reason otherwise). Late checkout that cannot be booked keeps the quote, with late_checkout.available=false. Coupons and wallet credit need login and are not included. Use before the user books on otaghak.com. |
| ot_holidaysA | List Iranian public holidays (Fridays included) in a date range, with Jalali dates and weekdays. Holiday flags are filled only about 7 weeks ahead: later days show no holidays, which means unknown, not working days. Use to plan around long weekends; weekend nights (Wed, Thu) and holidays usually cost more (see ot_room_calendar). |
| ot_late_checkoutA | Check whether a room offers late checkout, for how many hours and at what price (Toman, a unit not confirmed on the site), and with check_out whether it can be booked on that departure day (offered rooms are often closed for it on a given day). Use when the user wants to leave later than the check-out time. ot_price_quote adds it to a total with late_checkout_hours. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Most tools have clearly distinct purposes, and descriptions explicitly cross-reference each other (e.g. ot_room for rough price, ot_price_quote for exact total, ot_room_calendar for per-night breakdown). However several tools overlap around pricing (ot_search_rooms, ot_room, ot_price_quote, ot_room_calendar, ot_deals) and around discovery (ot_search_rooms, ot_search_filters, ot_destinations), so an agent could still hesitate on which price/discovery tool to pick.
All names use a consistent ot_ prefix and snake_case, which makes the set easy to scan; the underlying resource is always clear. The only deviation is a mix of verb-led (ot_find_place, ot_search_rooms, ot_search_filters) and noun-phrase (ot_room, ot_host, ot_deals) conventions, but this stays readable.
15 tools sit at the top of the ideal range but each covers a genuinely distinct facet of a booking domain (search, place resolution, filters, room detail, reviews, calendar, quote, host, deals, holidays, help, guide, late checkout, similar rooms). It is slightly heavy but nothing feels redundant.
The surface covers the full research/planning lifecycle: destination discovery, place resolution, filtered search, room detail, availability calendar, exact pricing, reviews, host vetting, alternatives, deals, holidays and late checkout. Booking/auth is intentionally left to otaghak.com, so no critical agent workflow dead-ends.