MCP tools reference

Little Hotelier MCP tools

15 tools for Little Hotelier on the Cotlet MCP server. Your agent picks them from tools/list.

MCP server
https://cotlet.dev/mcp/v1
Connects with
Your own Little Hotelier account (a user who can open Front Desk, Channel Manager and Insights for the tools you use)
Integration page
Little Hotelier
Little Hotelier Endpoints
Endpoint Access Description
little-hotelier_list_reservations read Reservations with status, source, guest, occupants, dates, room, total and outstanding amount.
little-hotelier_get_reservation read One reservation: stay, room, rate, guests, guest comments, notes, invoice and payments. No card numbers.
little-hotelier_list_room_rates read Room types, their rooms and room rates, with which rates are derived.
little-hotelier_get_inventory read The inventory grid for a date range: availability, rates and restrictions per room rate.
little-hotelier_get_statistics read Statistics report: room nights, occupancy, ADR, RevPAR, length of stay, lead time and cancellations.
little-hotelier_get_booking_performance read Revenue, reservations, room nights, ADR and cancellations, broken down by channel.
little-hotelier_export_report read A Front Desk report for up to 365 days as rows, the same data as its CSV export.
little-hotelier_list_conversations read Messaging hub conversations with the linked reservation, channel and last message.
little-hotelier_create_reservation write New Front Desk reservation. No card details.
little-hotelier_update_reservation_status write Check a guest in or out, or set a reservation back to Confirmed.
little-hotelier_cancel_reservation write Cancel a Confirmed Front Desk reservation. Permanent; OTA bookings must be cancelled on the channel.
little-hotelier_update_rates write Set the base rate of room rates over a date range, like Bulk Update. Goes live on your channels.
little-hotelier_update_restrictions write Set min or max stay, closed to arrival or departure, or close channels or your website.
little-hotelier_create_room_closure write Close rooms for a date range; availability sent to channels and the booking engine drops.
little-hotelier_reply_to_guest write Send a reply in a Messaging hub conversation. WhatsApp free-form only within 24 hours of the guest message.

MCP tool little-hotelier_list_reservations

Searches reservations like the Reservations screen. Date type can be check-in, check-out or booked on, and status can be confirmed, checked in, checked out or cancelled. Each row has status, guest name, reference, source, occupants, dates, room, total and outstanding amount. Reservations without an assigned room show no room. Pass next_cursor back as cursor for the next page.

Parameters

Parameters: list_reservations
NameTypeDescription
date_type enum check_in, check_out or booked. Default: check_in.
from date Start of the date range.
to date End of the date range.
status enum all, confirmed, checked_in, checked_out or cancelled. Default: all.
guest_last_name string Guest last name.
reservation_id string Find one reservation by its booking reference.
limit integer 1 to 200. Default: 50.
cursor string Next page cursor.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_list_reservations",
    "arguments": {
      "date_type": "check_in",
      "from": "2026-10-12",
      "to": "2026-10-13",
      "status": "confirmed"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "reservations": [
      {
        "reservation_id": "LH48213",
        "status": "confirmed",
        "guest": "Marta Kowal",
        "source": "Booking.com",
        "occupants": "2 adults",
        "check_in": "2026-10-12",
        "check_out": "2026-10-14",
        "booked": "2026-09-02",
        "room": "Double 3",
        "total": "240.00",
        "outstanding": "240.00",
        "currency": "EUR"
      },
      {
        "reservation_id": "LH48230",
        "status": "confirmed",
        "guest": "Liam Byrne",
        "source": "Direct Booking",
        "occupants": "1 adult",
        "check_in": "2026-10-12",
        "check_out": "2026-10-13",
        "booked": "2026-10-05",
        "room": null,
        "total": "95.00",
        "outstanding": "0.00",
        "currency": "EUR"
      }
    ],
    "next_cursor": null
  },
  "isError": false
}

MCP tool little-hotelier_get_reservation

Returns one reservation with stay dates, room and rate, occupants, guest comments, internal notes, invoice lines and recorded payments. Card numbers are never returned. Use it after list_reservations when you need the detail behind one outstanding amount.

Parameters

Parameters: get_reservation
NameTypeDescription
reservation_id required string Reservation ID from list_reservations, e.g. LH12345.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_get_reservation",
    "arguments": {
      "reservation_id": "reservation_8c41d2"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "reservation_id": "LH48213",
    "status": "confirmed",
    "source": "Booking.com",
    "guest": {
      "name": "Marta Kowal",
      "email": "marta@example.com",
      "arrival_time": "18:00"
    },
    "stay": {
      "check_in": "2026-10-12",
      "check_out": "2026-10-14",
      "nights": 2,
      "adults": 2,
      "children": 0
    },
    "room": "Double 3",
    "room_rate": "Double Room, Standard Rate",
    "guest_comments": "Late arrival, around 18:00.",
    "notes": [],
    "invoice": {
      "lines": [
        {
          "description": "Double Room, 2 nights",
          "amount": "240.00"
        }
      ],
      "total": "240.00",
      "paid": "0.00",
      "outstanding": "240.00",
      "currency": "EUR"
    },
    "payments": []
  },
  "isError": false
}

MCP tool little-hotelier_list_room_rates

Returns your room types with their rooms and room rates. Each rate says whether it is derived from another rate, because derived rates cannot be edited directly. Use the IDs it returns in get_inventory, update_rates, update_restrictions and create_room_closure.

Parameters

No parameters.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_list_room_rates",
    "arguments": {}
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "room_types": [
      {
        "room_type": "Double Room",
        "rooms": [
          {
            "room_id": "rm_3",
            "name": "Double 3"
          },
          {
            "room_id": "rm_4",
            "name": "Double 4"
          }
        ],
        "room_rates": [
          {
            "room_rate_id": "rr_20417",
            "name": "Standard Rate",
            "derived_from": null
          },
          {
            "room_rate_id": "rr_20418",
            "name": "Non-refundable",
            "derived_from": "rr_20417"
          }
        ]
      }
    ]
  },
  "isError": false
}

MCP tool little-hotelier_get_inventory

Returns the inventory grid for a date range: availability, rate, min and max stay, CTA, CTD and whether channels are closed, one row per room rate and date. Availability is calculated by Little Hotelier from your rooms, bookings and closures. Read it before update_rates to see what will change.

Parameters

Parameters: get_inventory
NameTypeDescription
from required date First date of the range.
to required date Last date of the range, inclusive.
room_rate_ids string[] Only these room rates. Default: all.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_get_inventory",
    "arguments": {
      "from": "2026-10-01",
      "to": "2026-10-01"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "room_rates": [
      {
        "room_rate_id": "rr_20417",
        "name": "Double Room, Standard Rate",
        "days": [
          {
            "date": "2026-12-04",
            "available": 2,
            "rate": "120.00",
            "min_stay": 1,
            "max_stay": null,
            "cta": false,
            "ctd": false,
            "channels_closed": false
          },
          {
            "date": "2026-12-05",
            "available": 1,
            "rate": "120.00",
            "min_stay": 1,
            "max_stay": null,
            "cta": false,
            "ctd": false,
            "channels_closed": false
          }
        ]
      }
    ],
    "currency": "EUR"
  },
  "isError": false
}

MCP tool little-hotelier_get_statistics

Runs the Front Desk Statistics report for a date range. It returns total, closed, occupied and unoccupied room nights, occupancy, length of stay, lead time, average revenue per booking, ADR, RevPAR and the value of cancelled reservations. Occupancy, RevPAR and the room night counts exist only when searching by stay date. Closed room nights are taken out of the occupancy base.

Parameters

Parameters: get_statistics
NameTypeDescription
from required date First date of the range.
to required date Last date of the range, inclusive.
search_by enum stay_date or booked_on. Default: stay_date.
include_tax boolean Include tax from taxable service charges in revenue. Default: false.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_get_statistics",
    "arguments": {
      "from": "2026-10-01",
      "to": "2026-10-01"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "from": "2026-09-01",
    "to": "2026-09-30",
    "search_by": "stay_date",
    "include_tax": false,
    "currency": "EUR",
    "total_room_nights": 240,
    "closed_room_nights": 7,
    "occupied_room_nights": 160,
    "unoccupied_room_nights": 73,
    "occupancy_pct": 68.7,
    "length_of_stay": 2.5,
    "lead_time_days": 21,
    "average_revenue_per_booking": "275.00",
    "adr": "110.00",
    "revpar": "75.54",
    "cancelled_value": "420.00"
  },
  "isError": false
}

MCP tool little-hotelier_get_booking_performance

Reads the Insights Booking performance report. It returns reservations after cancellations, room nights, ADR, average length of stay, lead time and cancelled reservations, with room revenue and room nights per channel, including your booking engine. Some channels record no revenue on a reservation: those count toward room nights but not ADR. Multi-currency bookings are converted to your default currency.

Parameters

Parameters: get_booking_performance
NameTypeDescription
from required date First date of the range.
to required date Last date of the range, inclusive.
date_basis enum booked_on or stay_date. Default: booked_on.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_get_booking_performance",
    "arguments": {
      "from": "2026-10-01",
      "to": "2026-10-01"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "from": "2026-09-01",
    "to": "2026-09-30",
    "date_basis": "booked_on",
    "currency": "EUR",
    "reservations": 64,
    "room_nights": 160,
    "adr": "110.00",
    "avg_length_of_stay": 2.5,
    "avg_lead_time_days": 21,
    "cancelled_reservations": 3,
    "channels": [
      {
        "channel": "Booking.com",
        "reservations": 32,
        "room_nights": 80,
        "room_revenue": "8800.00"
      },
      {
        "channel": "Direct Booking",
        "reservations": 19,
        "room_nights": 48,
        "room_revenue": "5280.00"
      },
      {
        "channel": "Airbnb",
        "reservations": 13,
        "room_nights": 32,
        "room_revenue": "3520.00"
      }
    ]
  },
  "isError": false
}

MCP tool little-hotelier_export_report

Returns a Front Desk report as rows, the same data as the report's CSV export. A single report cannot span more than 365 days. Use get_statistics for the Statistics report.

Parameters

Parameters: export_report
NameTypeDescription
report required enum check_in, payments, extras, housekeeping, daily_transactions or guests.
from required date First date of the range.
to required date Last date of the range, inclusive.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_export_report",
    "arguments": {
      "report": "check_in",
      "from": "2026-10-01",
      "to": "2026-10-01"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "report": "daily_transactions",
    "from": "2026-10-01",
    "to": "2026-10-07",
    "currency": "EUR",
    "rows": [
      {
        "date": "2026-10-05",
        "reservation_id": "LH48230",
        "description": "Deposit",
        "amount": "30.00"
      },
      {
        "date": "2026-10-06",
        "reservation_id": "LH48199",
        "description": "Breakfast extra",
        "amount": "18.00"
      }
    ]
  },
  "isError": false
}

MCP tool little-hotelier_list_conversations

Lists Messaging hub conversations, with the guest, the linked reservation, the channel and the last message. WhatsApp, Airbnb and Booking.com conversations are listed. Each row says whether a free-form reply is possible now: WhatsApp allows it within 24 hours of the guest's last message.

Parameters

Parameters: list_conversations
NameTypeDescription
channel enum whatsapp, airbnb or booking_com. Default: all.
limit integer 1 to 100. Default: 20.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_list_conversations",
    "arguments": {}
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "conversations": [
      {
        "conversation_id": "cv_5521",
        "channel": "whatsapp",
        "guest": "Marta Kowal",
        "reservation_id": "LH48213",
        "last_message": "Can we check in late, around 21:30?",
        "last_message_at": "2026-10-11T08:12:00Z",
        "free_form_reply_open": true
      }
    ]
  },
  "isError": false
}

Create reservation

write Confirm

MCP tool little-hotelier_create_reservation

Creates a Front Desk reservation with a booking reference starting with LH. It holds the room and updates availability on your connected channels. Without room_id the booking is unallocated but still reduces availability. Little Hotelier does not email a confirmation for manual reservations, and neither does this tool. Card details are not accepted. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: create_reservation
NameTypeDescription
check_in required date Arrival date.
check_out required date Departure date.
room_rate_id required string Room rate ID from list_room_rates.
guest required object first_name, last_name, and optional email, phone, arrival_time.
adults required integer Number of adults.
children integer Number of children. Default: 0.
room_id string Assign a specific room. Default: unallocated.
guest_comments string Guest requests, shown on the confirmation email.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_create_reservation",
    "arguments": {
      "check_in": "2026-10-01",
      "check_out": "2026-10-01",
      "room_rate_id": "room_rate_8c41d2",
      "guest": "guest",
      "adults": 1
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "reservation_id": "LH48311",
    "status": "confirmed",
    "room": null,
    "check_in": "2026-11-20",
    "check_out": "2026-11-22",
    "total": "240.00",
    "currency": "EUR"
  },
  "isError": false
}

MCP tool little-hotelier_update_reservation_status

Sets a reservation to confirmed, checked_in or checked_out, like the status drop-down on the reservation. Checking out marks the room as needing cleaning and bookable again. It reaches no guest and one more call sets the status back, so it runs without asking first. Each reservation is changed on its own.

Parameters

Parameters: update_reservation_status
NameTypeDescription
reservation_id required string Reservation ID from list_reservations, e.g. LH12345.
status required enum confirmed, checked_in or checked_out.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_update_reservation_status",
    "arguments": {
      "reservation_id": "reservation_8c41d2",
      "status": "confirmed"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "reservation_id": "LH48213",
    "status": "checked_in"
  },
  "isError": false
}

Cancel reservation

write Confirm

MCP tool little-hotelier_cancel_reservation

Cancels one Confirmed reservation created in Front Desk. Channel (OTA) reservations are cancelled by the guest on the channel, and Direct Booking reservations under Direct Booking, so the call fails for them. Checked-in and checked-out reservations need their status changed first. A cancellation is permanent. The room becomes available and cancelled reservations stay in the Reservations list. Check your cancellation policy for penalties first. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: cancel_reservation
NameTypeDescription
reservation_id required string Reservation ID from list_reservations, e.g. LH12345.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_cancel_reservation",
    "arguments": {
      "reservation_id": "reservation_8c41d2"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "reservation_id": "LH48311",
    "status": "cancelled"
  },
  "isError": false
}

Update rates

write Confirm

MCP tool little-hotelier_update_rates

Sets the base rate of one or more room rates over a date range, optionally on chosen weekdays, like Bulk Update in the inventory grid. Derived rates cannot be edited and come back in skipped. A rate below the property minimum does not save. Channels receive the change within their update period. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: update_rates
NameTypeDescription
room_rate_ids required string[] Room rate IDs from list_room_rates.
from required date First date of the range.
to required date Last date of the range, inclusive.
rate required string New nightly rate, as a decimal in the property currency.
days_of_week string[] Only these weekdays (mon to sun). Default: all days.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_update_rates",
    "arguments": {
      "room_rate_ids": [
        "rr_20417"
      ],
      "from": "2026-12-01",
      "to": "2026-12-31",
      "rate": "140.00",
      "days_of_week": [
        "fri",
        "sat"
      ]
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "status": "updated",
    "room_rates": 1,
    "dates": 8,
    "rate": "140.00",
    "currency": "EUR",
    "skipped": []
  },
  "isError": false
}

Update restrictions

write Confirm

MCP tool little-hotelier_update_restrictions

Sets min_stay, max_stay, cta, ctd, close_channels and close_website for room rates over a date range, like Bulk Update. close_channels stops sales on all connected channels and your booking engine but leaves room availability unchanged. A channel that does not support a restriction ignores it. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: update_restrictions
NameTypeDescription
room_rate_ids required string[] Room rate IDs from list_room_rates.
from required date First date of the range.
to required date Last date of the range, inclusive.
restrictions required object Any of min_stay, max_stay (integer), cta, ctd, close_channels, close_website (boolean).
days_of_week string[] Only these weekdays (mon to sun). Default: all days.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_update_restrictions",
    "arguments": {
      "room_rate_ids": [
        "rr_20417"
      ],
      "from": "2026-12-30",
      "to": "2026-12-31",
      "restrictions": {
        "min_stay": 2
      }
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "status": "updated",
    "room_rates": 1,
    "dates": 4,
    "restrictions": {
      "min_stay": 2
    },
    "skipped": []
  },
  "isError": false
}

Create room closure

write Confirm

MCP tool little-hotelier_create_room_closure

Closes rooms or whole room types for a date range, like Room Closure on the Front Desk Calendar. The end date is included. Availability sent to channels and your booking engine drops, and the room shows in red on the Calendar. A closure is not a stop sell. It does not move guests who already booked those dates. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: create_room_closure
NameTypeDescription
room_ids required string[] Room IDs from list_room_rates.
from required date First date of the range.
to required date Last date of the range, inclusive.
description string Reason, e.g. renovation.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_create_room_closure",
    "arguments": {
      "room_ids": [
        "room ids"
      ],
      "from": "2026-10-01",
      "to": "2026-10-01"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "closure_id": "cl_7731",
    "status": "closed",
    "room_ids": [
      "rm_4"
    ],
    "from": "2026-10-12",
    "to": "2026-10-18",
    "nights": 7,
    "description": "Leak repair"
  },
  "isError": false
}

Reply to guest

write Confirm

MCP tool little-hotelier_reply_to_guest

Sends a reply in a WhatsApp or Airbnb conversation in the Messaging hub, under your property. WhatsApp free-form replies work within 24 hours of the guest's last message; later, Little Hotelier requires a template. Airbnb free-form replies work only after a scheduled message went out and the guest replied. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: reply_to_guest
NameTypeDescription
conversation_id required string Conversation ID from list_conversations.
body required string Message text.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "little-hotelier_reply_to_guest",
    "arguments": {
      "conversation_id": "cv_5521",
      "body": "Yes, late check-in at 21:30 is fine. Reception is open until 22:00."
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "conversation_id": "cv_5521",
    "message_id": "msg_90417",
    "status": "sent",
    "channel": "whatsapp"
  },
  "isError": false
}