Rentlio MCP by usefulapi

Read reservations, guests and folios; check in reservations and add notes in Rentlio.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
90%
Naming quality
76%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'rentlio_list_todays_reservations' name length outside 3-30 rangein rentlio_list_todays_reservations
  • LOWTool 'rentlio_list_reservation_guests' name length outside 3-30 rangein rentlio_list_reservation_guests

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,847Tokens (tool definitions)
~1.3 KBTypical response size
Moderate attention impact (1.44% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "rentlio": {
      "url": "https://rentlio.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://rentlio.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (10)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢rentlio_get_account

Get the Rentlio user that owns the API key: name, email, timezone and account type. Good first call to confirm the connection. Rentlio API: GET /users/me.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢rentlio_list_properties(name, page, order_by, order_direction)

List the properties (hotels, apartments, camps) this API key can see, with ids, names, addresses and currencies. Use a property id in the other tools. Rentlio API: GET /properties.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Filter by property name.",
      "type": "string"
    },
    "page": {
      "description": "Results page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "order_by": {
      "description": "Column to sort by (default id).",
      "type": "string",
      "enum": [
        "id",
        "createdAt",
        "modifiedAt"
      ]
    },
    "order_direction": {
      "description": "Sort direction (default ASC).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢rentlio_list_todays_reservations(propertyId, page, order_by, order_direction)

List the reservations that are active today at a property: arrival and departure dates (UTC unix time), unit name and the guest holder. Rentlio API: GET /properties/{propertyId}/reservations/today.

Input Schema

{
  "type": "object",
  "properties": {
    "propertyId": {
      "description": "Property id. Defaults to the property this server is connected to.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "page": {
      "description": "Results page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "order_by": {
      "description": "Column to sort by (default id).",
      "type": "string",
      "enum": [
        "id",
        "createdAt",
        "modifiedAt"
      ]
    },
    "order_direction": {
      "description": "Sort direction (default ASC).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢rentlio_list_reservations(propertiesId, unitsId, status, dateFrom, dateTo, ...)

List reservations, filtered by property, unit, status or date range. dateFrom filters by arrival date and dateTo by departure date: give both or neither. Rentlio API: GET /reservations.

Input Schema

{
  "type": "object",
  "properties": {
    "propertiesId": {
      "description": "Comma-separated property ids to include.",
      "type": "string",
      "pattern": "^\\d+(,\\d+)*$"
    },
    "unitsId": {
      "description": "Comma-separated unit ids to include.",
      "type": "string",
      "pattern": "^\\d+(,\\d+)*$"
    },
    "status": {
      "description": "Reservation status id (Rentlio's status list).",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "dateFrom": {
      "description": "Arrival date from, yyyy-mm-dd.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "dateTo": {
      "description": "Departure date to, yyyy-mm-dd.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "perPage": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "page": {
      "description": "Results page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢rentlio_get_reservation(reservationId)

Get one reservation in full: status, dates, unit, rate, prices, payment, sales channel, holder and services. Rentlio API: GET /reservations/{reservationId}/details.

Input Schema

{
  "type": "object",
  "properties": {
    "reservationId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Reservation id (from rentlio_list_reservations or rentlio_list_todays_reservations)."
    }
  },
  "required": [
    "reservationId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢rentlio_list_reservation_guests(reservationId)

List the guests on one reservation: names, contact details, nationality and document fields as Rentlio stores them. Rentlio API: GET /reservations/{reservationId}/guests.

Input Schema

{
  "type": "object",
  "properties": {
    "reservationId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Reservation id."
    }
  },
  "required": [
    "reservationId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢rentlio_list_folios(reservationId)

List the folios (bills) of one reservation: status, balances, billing details and every charge line (accommodation, services, taxes). Rentlio API: GET /reservations/{reservationId}/folios.

Input Schema

{
  "type": "object",
  "properties": {
    "reservationId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Reservation id."
    }
  },
  "required": [
    "reservationId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢rentlio_list_checked_in_guests(propertyId, from, to, page, order_by, ...)

List the guests checked in at a property between two check-in dates. Rentlio API: GET /properties/{propertyId}/guests/checked-in.

Input Schema

{
  "type": "object",
  "properties": {
    "propertyId": {
      "description": "Property id. Defaults to the property this server is connected to.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "First check-in date, yyyy-mm-dd."
    },
    "to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Last check-in date, yyyy-mm-dd."
    },
    "page": {
      "description": "Results page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "order_by": {
      "description": "Column to sort by (default id).",
      "type": "string",
      "enum": [
        "id",
        "createdAt",
        "modifiedAt"
      ]
    },
    "order_direction": {
      "description": "Sort direction (default ASC).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    }
  },
  "required": [
    "from",
    "to"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡rentlio_check_in_reservation(reservationId, checkIn)

Check a reservation in (checkIn true, the default), or annul a check-in (checkIn false). This changes the reservation in Rentlio. Rentlio API: PUT /reservations/{reservationId}/checkin.

Input Schema

{
  "type": "object",
  "properties": {
    "reservationId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Reservation id to check in."
    },
    "checkIn": {
      "description": "true checks in (default); false annuls a check-in.",
      "type": "boolean"
    }
  },
  "required": [
    "reservationId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴rentlio_add_reservation_note(reservationId, note)

Write a note to a reservation. Each call is a write to Rentlio. The docs do not say whether a note replaces the earlier one, so check the reservation's note after the first call. Rentlio API: PUT /reservations/{reservationId}/add-note.

Input Schema

{
  "type": "object",
  "properties": {
    "reservationId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Reservation id."
    },
    "note": {
      "type": "string",
      "minLength": 1,
      "description": "Text of the note."
    }
  },
  "required": [
    "reservationId",
    "note"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded10 tools