Check vacation-rental reservations, rates, availability and guest messages, and update bookings. Hosted by usefulapi — connect from Claude, Cursor, or any MCP client.
Add to your MCP config, then reload & authorize:
{
"mcpServers": {
"smoobu": {
"url": "https://smoobu.usefulapi.io/mcp"
}
}
}| Tool | Type | What it does |
|---|---|---|
smoobu_get_user | read | Get the current user Fetch the Smoobu user these credentials belong to (id, name, email). A cheap way to confirm the setup works; the id is the customerId used by availability checks. Smoobu: GET /api/me. |
smoobu_list_apartments | read | List properties List every property (Smoobu calls them apartments) in the account, with id and name. Start here to get apartment ids. Smoobu: GET /api/apartments. |
smoobu_get_apartment | read | Get one property Fetch one property's details: location, time zone, rooms and beds, max occupancy, amenities, currency, min/max nightly price and type. Smoobu: GET /api/apartments/{apartmentId}. |
smoobu_list_reservations | read | List reservations List reservations across all channels (Airbnb, Booking.com, direct, ...), paginated, with guest, dates, channel, price and payment status. Filter by stay range, arrival, departure, creation or modification date, and property. Smoobu: GET /api/reservations. |
smoobu_get_reservation | read | Get one reservation Fetch one reservation by id: guest, dates, check-in/out times, channel and its reference id, price, prepayment and deposit status, and the guest-app URL. Smoobu: GET /api/reservations/{reservationId}. |
smoobu_list_price_elements | read | List a reservation's price elements List the financial breakdown of one reservation: base price, cleaning fee, add-ons, long-stay discounts and coupons, with amounts, tax and currency. Smoobu: GET /api/reservations/{reservationId}/price-elements. |
smoobu_get_reservation_placeholders | read | Get a reservation's message placeholders Get every placeholder value Smoobu would substitute into a message for this reservation: guest name, dates and times, nights, price and balance, online check-in link, guest-app link, door PIN codes and more. Useful for drafting a guest message. Smoobu: GET /api/reservations/{reservationId}/placeholders. |
smoobu_get_rates | read | Get rates and availability Get the nightly price, minimum length of stay and availability (0 = not available) for each date in a range, for one or more properties. Smoobu: GET /api/rates. |
smoobu_check_availability | read | Check availability and quote a stay Check which properties can be booked for an arrival/departure pair and get the total price for each; unavailable ones come back with the reason (minimum stay, too many guests, arrival day, lead time...). Read-only, books nothing. Smoobu: POST /booking/checkApartmentAvailability. |
smoobu_list_message_threads | read | List inbox threads List the unified guest inbox: one thread per booking with guest name, property and the latest message, plus the unread count. Smoobu: GET /api/threads. |
smoobu_list_reservation_messages | read | List a reservation's messages Get the full conversation for one reservation, paginated. Each message has a subject, plain-text and HTML body, and type (1 = inbox / from guest, 2 = outbox / sent). Smoobu: GET /api/reservations/{reservationId}/messages. |
smoobu_list_guests | read | List guests List guests from the Smoobu CRM with their emails, phone numbers, address, notes and bookings; optionally search. Smoobu: GET /api/guests. |
smoobu_get_guest | read | Get one guest Fetch one guest by id (the guestId on a reservation) with contact details, notes and every booking they have made. Smoobu: GET /api/guests/{guestId}. |
smoobu_list_addons | read | List add-ons List the bookable add-ons (towels, breakfast, late check-out...) with amount, tax, calculation type (0 per booking, 1 per person, 2 per night, 3 per person and night) and the properties they apply to; optionally for one property. Smoobu: GET /api/addons[/{apartmentId}]. |
smoobu_list_custom_placeholders | read | List custom placeholders List the account's custom message placeholders (key, default value, and whether they are global, per booking or per property). Smoobu: GET /api/custom-placeholders. |
smoobu_create_reservation | write | Create a reservation Create a reservation (or a blocked period) on a property. Smoobu treats it like a booking from a channel and SYNCS the blocked dates to every connected channel (Airbnb, Booking.com, ...). Fails if the dates overlap an existing booking. This server offers no cancel — cancel it in Smoobu if needed. Which guest fields are mandatory depends on your booking-tool 'Form Content' settings. Smoobu: POST /api/reservations. |
smoobu_update_reservation | write | Update a reservation Update an existing reservation's times, guest contact, notes, guest counts, language, or price / prepayment / deposit amounts and paid status. Only the fields you pass are sent. Dates and property cannot be changed here. Smoobu: PUT /api/reservations/{reservationId}. |
smoobu_set_rates | write | Set rates and minimum stays Set the nightly price and/or minimum length of stay for dates on one or more properties. Smoobu PUSHES these to every channel with price sync enabled, so this changes live prices guests see. Reversible by setting the old values again — read them first with smoobu_get_rates. Each operation needs daily_price, min_length_of_stay, or both (a minimum stay alone needs an existing price). Smoobu: POST /api/rates. |
smoobu_send_message_to_guest | write | Send a message to a guest Send a message to the guest of a reservation through Smoobu (it goes out on the booking's channel, e.g. the Airbnb or Booking.com inbox, or email). Delivered IMMEDIATELY and cannot be unsent — confirm the text with the user first. Smoobu: POST /api/reservations/{reservationId}/messages/send-message-to-guest. |
smoobu_send_message_to_host | write | Post a message to the host Post a message on a reservation's thread addressed to the Smoobu user (the host). With internal=true it is an internal note hidden from the guest — handy for logging. Cannot be unsent. Smoobu: POST /api/reservations/{reservationId}/messages/send-message-to-host. |
smoobu_usage_status | Usage status (free-tier meter) Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter. | |
smoobu_upgrade | Upgrade to Pro (unlimited) Subscribe to the Pro plan for UNLIMITED Smoobu tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter. |
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 100 tool calls / month |
| Proper user | $9/mo · $90/yr | Unlimited |
This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.