Beds24 MCP by usefulapi
by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi
Check bookings, quote stays, read guest messages and reviews, and update calendars in Beds24.
18 tools: 5 can delete or cancel things and 13 only read.
Scanned Oct 21, 2026
- Deletes or cancels5Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads13Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http beds24 https://beds24.usefulapi.io/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
18 tools
Deletes or cancels 5Claude Code: deny
beds24_create_bookingCreate a new booking in a room for given dates and guest details.No findings
Why it is in this group
- The name "beds24_create_booking" says "create": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Create a new booking in a room for given dates and guest details. It immediately blocks inventory and is synced to connected channels. Set checkAvailability=true to refuse the booking if the room is not free, and notifyGuest / notifyHost to send confirmation emails. Undo by setting status cancelled with beds24_update_booking. Requires a token with bookings write access. Beds24: POST /bookings.
Annotations the server declares
- title: Create a booking
- destructiveHint: true
beds24_mark_messages_readMark one or more booking messages as read (or unread with read=false).No findings
Why it is in this group
- The name "beds24_mark_messages_read" says "mark": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Mark one or more booking messages as read (or unread with read=false). Beds24: POST /bookings/messages with [{ id, read }].
Annotations the server declares
- title: Mark messages read
- destructiveHint: true
beds24_send_booking_messageSend a message on a booking's conversation.No findings
Why it is in this group
- The name "beds24_send_booking_message" says "send": a word for sending, and what is sent cannot be taken back.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Send a message on a booking's conversation. With source host (default) it is delivered to the GUEST through their channel (Airbnb, Booking.com, Vrbo, email) and cannot be unsent; with source internalNote it is a private host note. Beds24: POST /bookings/messages.
Annotations the server declares
- title: Send a booking message
- destructiveHint: true
beds24_update_bookingChange an existing booking: dates, room/unit, guest counts, guest details, notes, flag, price, or status (e.g.No findings
Why it is in this group
- The name "beds24_update_booking" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Change an existing booking: dates, room/unit, guest counts, guest details, notes, flag, price, or status (e.g. confirmed, or cancelled to cancel — reversible by setting it back). Only the fields you pass change. Optionally add info items (code/text pairs). Changes sync to channels where allowed. Beds24: POST /bookings with the booking id.
Annotations the server declares
- title: Update a booking
- destructiveHint: true
beds24_update_room_calendarSet per-day calendar values for ONE room over a date range: units available (numAvail), minStay, maxStay, multiplier, override (none, blackout, exception, noCheckIn, noCheckOut, no…No findings
Why it is in this group
- The name "beds24_update_room_calendar" says "update": a word for a change.
- The input addresses people (input.to): what it sends cannot be taken back.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Set per-day calendar values for ONE room over a date range: units available (numAvail), minStay, maxStay, multiplier, override (none, blackout, exception, noCheckIn, noCheckOut, noCheckInOrCheckOut) and price slots price1..price16. Set a price to null to remove it. These values sync to channels. Read the current values first with beds24_get_room_calendar so you can restore them. Beds24: POST /inventory/rooms/calendar.
Annotations the server declares
- title: Update room calendar
- destructiveHint: true
Only reads 13Claude Code: allow
beds24_get_bookingFetch one booking by id with its invoice items, info items and additional guests.No findings
Why it is in this group
- The name "beds24_get_booking" says "get": a word for reading.
Description, as the server wrote it Fetch one booking by id with its invoice items, info items and additional guests. Works for any status, including cancelled. Beds24: GET /bookings?id=<id>.
Annotations the server declares
- title: Get a booking
- readOnlyHint: true
beds24_get_room_availabilityPer-date availability (true/false) for rooms over a range of nights.No findings
Why it is in this group
- The name "beds24_get_room_availability" says "get": a word for reading.
Description, as the server wrote it Per-date availability (true/false) for rooms over a range of nights. endDate is the LAST NIGHT (the day before check-out). Beds24: GET /inventory/rooms/availability.
Annotations the server declares
- title: Get room availability
- readOnlyHint: true
beds24_get_room_calendarPer-day calendar values for rooms: units available, min/max stay, multiplier, override (blackout, no check-in, ...) and the price slots price1..price16, as date ranges.No findings
Why it is in this group
- The name "beds24_get_room_calendar" says "get": a word for reading.
Description, as the server wrote it Per-day calendar values for rooms: units available, min/max stay, multiplier, override (blackout, no check-in, ...) and the price slots price1..price16, as date ranges. Choose fields with the include flags; if none are set this tool asks for numAvail, minStay, maxStay, override and prices. Beds24: GET /inventory/rooms/calendar.
Annotations the server declares
- title: Get room calendar
- readOnlyHint: true
beds24_get_room_offersQuote a stay: bookable offers with total price and units available per room for given dates and guests.No findings
Why it is in this group
- The name "beds24_get_room_offers" says "get": a word for reading.
Description, as the server wrote it Quote a stay: bookable offers with total price and units available per room for given dates and guests. Use before creating a booking. Beds24: GET /inventory/rooms/offers.
Annotations the server declares
- title: Get room offers (quote)
- readOnlyHint: true
beds24_get_token_detailsCheck the configured Beds24 token: whether it is valid, its scopes, owner id, expiry, and whether it is restricted to one property.No findings
Why it is in this group
- The name "beds24_get_token_details" says "get": a word for reading.
Description, as the server wrote it Check the configured Beds24 token: whether it is valid, its scopes, owner id, expiry, and whether it is restricted to one property. A cheap way to confirm setup and see which scopes are granted. Note Beds24 answers HTTP 200 with validToken=false for a bad token. Beds24: GET /authentication/details.
Annotations the server declares
- title: Get token details
- readOnlyHint: true
beds24_get_unit_bookingsWhich units of each room type are booked on each date — an occupancy grid keyed by date.No findings
Why it is in this group
- The name "beds24_get_unit_bookings" says "get": a word for reading.
Description, as the server wrote it Which units of each room type are booked on each date — an occupancy grid keyed by date. endDate is the last night. Beds24 marks this endpoint Beta. Beds24: GET /inventory/rooms/unitBookings.
Annotations the server declares
- title: Get unit bookings (occupancy grid)
- readOnlyHint: true
beds24_list_airbnb_reviewsGuest reviews from Airbnb for one room: overall and category ratings, public review, private feedback and the host response.No findings
Why it is in this group
- The name "beds24_list_airbnb_reviews" says "list": a word for reading.
Description, as the server wrote it Guest reviews from Airbnb for one room: overall and category ratings, public review, private feedback and the host response. At most 100 per call. Beds24 marks this endpoint Beta. Beds24: GET /channels/airbnb/reviews.
Annotations the server declares
- title: List Airbnb reviews
- readOnlyHint: true
beds24_list_booking_com_reviewsGuest reviews from Booking.com for one property, made on or after a date: scores, content, reviewer and any reply.No findings
Why it is in this group
- The name "beds24_list_booking_com_reviews" says "list": a word for reading.
Description, as the server wrote it Guest reviews from Booking.com for one property, made on or after a date: scores, content, reviewer and any reply. At most 100 per call. Beds24 marks this endpoint Alpha. Beds24: GET /channels/booking/reviews.
Annotations the server declares
- title: List Booking.com reviews
- readOnlyHint: true
beds24_list_booking_invoicesList invoices and their line items (charges and payments) for bookings.No findings
Why it is in this group
- The name "beds24_list_booking_invoices" says "list": a word for reading.
Description, as the server wrote it List invoices and their line items (charges and payments) for bookings. Requires the bookings-financial scope. Beds24 marks this endpoint Alpha. Beds24: GET /bookings/invoices.
Annotations the server declares
- title: List booking invoices
- readOnlyHint: true
beds24_list_booking_messagesRead the guest conversation on bookings — messages from guests, host replies, internal notes and system messages — across channels (Airbnb, Booking.com, Vrbo, direct).No findings
Why it is in this group
- The name "beds24_list_booking_messages" says "list": a word for reading.
Description, as the server wrote it Read the guest conversation on bookings — messages from guests, host replies, internal notes and system messages — across channels (Airbnb, Booking.com, Vrbo, direct). Filter by booking, property, room, read/unread, source and age. Beds24: GET /bookings/messages.
Annotations the server declares
- title: List booking messages
- readOnlyHint: true
beds24_list_bookingsSearch bookings by arrival/departure date range, booking or modified time, property, room, channel, status, or a free-text search over guest name, email, booking id and API referen…No findings
Why it is in this group
- The name "beds24_list_bookings" says "list": a word for reading.
Description, as the server wrote it Search bookings by arrival/departure date range, booking or modified time, property, room, channel, status, or a free-text search over guest name, email, booking id and API reference. With NO filters Beds24 returns only upcoming bookings. `filter` shortcuts: arrivals (arriving today), departures (departing today), new (created in the last 24h), current (in-house). Guest data needs the bookings-personal scope, invoice items bookings-financial. Beds24: GET /bookings.
Annotations the server declares
- title: List bookings
- readOnlyHint: true
beds24_list_fixed_pricesList fixed price rules (seasonal rates): date span, min/max nights, per-room and per-person prices, discounts, allowed arrival days and channel export.No findings
Why it is in this group
- The name "beds24_list_fixed_prices" says "list": a word for reading.
Description, as the server wrote it List fixed price rules (seasonal rates): date span, min/max nights, per-room and per-person prices, discounts, allowed arrival days and channel export. Beds24: GET /inventory/fixedPrices.
Annotations the server declares
- title: List fixed prices
- readOnlyHint: true
beds24_list_propertiesList the properties in the account with their address, currency, check-in times and room types (roomTypes).No findings
Why it is in this group
- The name "beds24_list_properties" says "list": a word for reading.
Description, as the server wrote it List the properties in the account with their address, currency, check-in times and room types (roomTypes). Optional flags include texts, pictures, offers, unit details and all rooms. Requires the properties scope. Beds24: GET /properties.
Annotations the server declares
- title: List properties
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.16.3. Values in angle brackets are yours to fill in.
claude mcp add --transport http beds24 https://beds24.usefulapi.io/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__beds24__beds24_get_token_details",
"mcp__beds24__beds24_list_properties",
"mcp__beds24__beds24_list_bookings",
"mcp__beds24__beds24_get_booking",
"mcp__beds24__beds24_list_booking_messages",
"mcp__beds24__beds24_list_booking_invoices",
"mcp__beds24__beds24_get_room_offers",
"mcp__beds24__beds24_get_room_availability",
"mcp__beds24__beds24_get_unit_bookings",
"mcp__beds24__beds24_get_room_calendar",
"mcp__beds24__beds24_list_fixed_prices",
"mcp__beds24__beds24_list_booking_com_reviews",
"mcp__beds24__beds24_list_airbnb_reviews"
],
"ask": [],
"deny": [
"mcp__beds24__beds24_create_booking",
"mcp__beds24__beds24_update_booking",
"mcp__beds24__beds24_send_booking_message",
"mcp__beds24__beds24_mark_messages_read",
"mcp__beds24__beds24_update_room_calendar"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as beds24. Review it before you use it.