Bhutan Trips by Druk Asia
Server Details
Bhutan trip search & booking via the Druk Asia API: festivals, itineraries, flights, bookings.
- Status
- Healthy
- Uptime
- 63.2% over the last 24 hours
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- ebizity/bhutan-trips-by-druk-asia
- GitHub Stars
- 0
- Server Listing
- Bhutan Trips MCP Server
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 13 tools
Each tool targets a distinct resource and action (booking, member, payment, itinerary, destination, festival, flight), so misselection is unlikely. The only mild overlap is get_itinerary vs list_itineraries and create_payment vs get_payment_status, but singular/plural and the descriptions make the split clear.
All 13 tools follow a predictable snake_case verb_noun pattern (create_booking, get_booking, update_booking, list_destinations, search_flights). The lone 'search_' verb is still a noun-targeting operation and reads naturally alongside list_/get_.
13 tools fall squarely in the well-scoped 3-15 range, with each tool mapping to a clear API operation across the booking, member, payment, and discovery workflows. Nothing feels padded or missing at the count level.
The lifecycle is lopsided: bookings get create/get/update but no cancel/delete or list_bookings, and members get create/get with no update or listing. Core happy paths are covered, but agents hit dead ends when they need to cancel a booking or enumerate existing records.
Available Tools
13 toolscreate_bookingCreate BookingAInspect
Creates a booking and returns the generated booking reference and ID. A member ID must already exist (see create_member), and port_entry_id / port_exit_id must reference valid destinations (see list_destinations). Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| member_id | Yes | Member ID. Create one first with create_member if not done yet. | |
| grand_total | Yes | Grand total amount. | |
| itinerary_id | Yes | Numeric itinerary ID (from list_itineraries or get_itinerary). | |
| port_exit_id | Yes | Departure port Destination.Id. Must reference a destination where isExit = 1. See list_destinations. | |
| port_entry_id | Yes | Arrival port Destination.Id. Must reference a destination where isEntry = 1. See list_destinations. | |
| tour_end_date | Yes | Tour end date in ISO date-time format, e.g. 2026-12-07T00:00:00.000Z. | |
| trekking_cost | Yes | Trekking cost. | |
| total_adult_pax | Yes | Total adult passengers. | |
| total_child_pax | Yes | Total child passengers. | |
| total_visa_cost | Yes | Total visa cost. | |
| tour_start_date | Yes | Tour start date in ISO date-time format, e.g. 2026-12-01T00:00:00.000Z. | |
| total_infant_pax | Yes | Total infant passengers. | |
| is_trekking_group | Yes | Whether this booking is a trekking group. | |
| credit_card_charge | Yes | Credit card processing charge. | |
| total_land_tour_price | Yes | Total land tour price. | |
| single_supplement_cost | Yes | Single room supplement cost. | |
| total_adult_air_ticket | Yes | Total adult air tickets. | |
| total_air_ticket_price | Yes | Total air ticket price. | |
| total_child_air_ticket | Yes | Total child air tickets. | |
| total_infant_air_ticket | Yes | Total infant air tickets. |
create_memberCreate MemberAInspect
Creates a member using contact details. IsActive and Status are always set to true by the API. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Member email address. | ||
| fullname | Yes | Member full name. | |
| phone_number | Yes | Phone number, e.g. 17123456. | |
| phone_country_code | Yes | Phone country code, e.g. +975. |
create_paymentCreate Airwallex PaymentBInspect
Creates a payment for a booking via Airwallex. For payment_type 'auto_fill' the card details are required; for 'payment_link' a shareable payment URL is returned. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| cvc | No | Card CVC (required for auto_fill). | |
| name | No | Cardholder name (required for auto_fill). | |
| amount | Yes | Payment amount in USD. | |
| card_number | No | Card number (required for auto_fill). | |
| expiry_year | No | Card expiry year (required for auto_fill). | |
| expiry_month | No | Card expiry month (required for auto_fill). | |
| payment_type | Yes | auto_fill charges a card directly; payment_link generates a payment URL. | |
| booking_ref_code | Yes | Booking reference code, e.g. DA-26-X7K2PQ. | |
| online_booking_id | Yes | OnlineBookings.Id (booking_id from create_booking). |
get_bookingGet Booking by ReferenceAInspect
Retrieves a booking by its booking reference. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| booking_ref | Yes | Booking reference (e.g. DA-26-X7K2PQ). |
get_itineraryGet Itinerary by IDAInspect
Retrieves a single itinerary by its numeric ID with day-by-day detail and pricing for one adult. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Positive numeric itinerary ID. |
get_memberGet Member by IDBInspect
Retrieves a member by ID. Password data is never returned. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Member ID. |
get_payment_statusGet Payment StatusBInspect
Checks whether a booking's payment has succeeded. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| online_booking_id | Yes | OnlineBookings.Id (booking_id from create_booking). |
list_destinationsList DestinationsAInspect
Returns destination IDs and titles for use as port_entry_id and port_exit_id in bookings. isEntry and isExit indicate whether a destination can be used for entry or exit. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
list_endpointsList Druk Asia v1 API endpointsAInspect
Returns a concise reference of all Druk Asia v1 API endpoints and the MCP tool that wraps each one.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
list_festivalsList Festivals CalendarAInspect
Retrieves upcoming festivals in Bhutan for a specified year, with an optional filter for popular festivals. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Calendar year to fetch festivals for (e.g. 2026). | |
| ispopular | No | Filter popular festivals only: 'true', 'false', '1', or '0'. |
list_itinerariesList & Price Tour ItinerariesBInspect
Retrieves itineraries with daily breakdown, hotels, and activities, including dynamic quotation pricing based on party composition and optional filters. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Filter itineraries by duration in days. | |
| adults | No | Number of adult travelers (default 1). | |
| infants | No | Number of infant travelers (default 0). | |
| children | No | Number of child travelers (default 0). | |
| single_rooms | No | Number of single rooms requested. | |
| itinerary_category | No | Optional English itinerary category URL, e.g. 'cultural'. |
search_flightsSearch Flights & PricingBInspect
Searches live Drukair flight availability and calculates flight pricing for the party. Leave return_date empty for one-way. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| adults | No | Adult passengers (default 1). | |
| infants | No | Infant passengers (default 0). | |
| children | No | Child passengers (default 0). | |
| return_date | No | Return date YYYY-MM-DD (default 2026-12-07). Omit for one-way. | |
| departure_date | No | Departure date YYYY-MM-DD (default 2026-12-01). | |
| arrival_airport | Yes | Arrival airport 3-letter IATA code (e.g. PBH). | |
| departure_airport | Yes | Departure airport 3-letter IATA code (e.g. SIN, BKK, DEL, KTM). |
update_bookingUpdate BookingAInspect
Updates one or more editable fields of an existing booking. Id, BookingReference, BookingDate, and MemberId cannot be changed. Send only the fields to update. Requires a valid Druk Asia API key (sent automatically via the x-api-key header).
| Name | Required | Description | Default |
|---|---|---|---|
| member_id | No | Member ID. Create one first with create_member if not done yet. | |
| booking_ref | Yes | Booking reference to update. | |
| grand_total | No | Grand total amount. | |
| itinerary_id | No | Numeric itinerary ID (from list_itineraries or get_itinerary). | |
| port_exit_id | No | Departure port Destination.Id. Must reference a destination where isExit = 1. See list_destinations. | |
| port_entry_id | No | Arrival port Destination.Id. Must reference a destination where isEntry = 1. See list_destinations. | |
| tour_end_date | No | Tour end date in ISO date-time format, e.g. 2026-12-07T00:00:00.000Z. | |
| trekking_cost | No | Trekking cost. | |
| total_adult_pax | No | Total adult passengers. | |
| total_child_pax | No | Total child passengers. | |
| total_visa_cost | No | Total visa cost. | |
| tour_start_date | No | Tour start date in ISO date-time format, e.g. 2026-12-01T00:00:00.000Z. | |
| total_infant_pax | No | Total infant passengers. | |
| is_trekking_group | No | Whether this booking is a trekking group. | |
| credit_card_charge | No | Credit card processing charge. | |
| total_land_tour_price | No | Total land tour price. | |
| single_supplement_cost | No | Single room supplement cost. | |
| total_adult_air_ticket | No | Total adult air tickets. | |
| total_air_ticket_price | No | Total air ticket price. | |
| total_child_air_ticket | No | Total child air tickets. | |
| total_infant_air_ticket | No | Total infant air tickets. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
13 tool updates
- First observed
create_booking - First observed
create_member - First observed
create_payment - First observed
get_booking - First observed
get_itinerary - First observed
get_member - First observed
get_payment_status - First observed
list_destinations - First observed
list_endpoints - First observed
list_festivals - First observed
list_itineraries - First observed
search_flights - First observed
update_booking
Related MCP Connectors
Search Asia travel tours, browse guides, request quotes, find upcoming group departures.
Search tours, attraction tickets, and holiday packages across 24 countries.
Search and book live flights and hotels. No API key; the traveller confirms on their phone.
Search, quote and book Daytrip private door-to-door car transfers in 130+ countries.
Related MCP Servers
- AlicenseBqualityBmaintenanceOfficial MCP server for MAQAMI, a hotel and flight booking platform with 3M+ hotels. Search live hotel rates and flights, look up places, airports and hotel details, then prebook and book. Remote Streamable HTTP endpoint, no API key required.4197 npm2MIT
- AlicenseAqualityFmaintenanceReal-time last-minute tour and activity booking across 18 suppliers in 15 countries via the OCTO open standard. Search available slots, create Stripe checkout sessions, and check booking status.41MIT
- AlicenseNot gradedqualityBmaintenanceProvides group air travel booking and flight search via IATA-accredited services, supporting group quotes and flight fares.MIT
- AlicenseAqualityBmaintenanceFlight price search via the Aviasales / Travelpayouts Data API: 13 read-only tools for fares by route and month, cheapest day, flexible dates, budget search and IATA lookup.1374 PyPI14GPL 3.0
Glama MCP Gateway
Add one secure layer between your agents and this server.