Roraima holiday rentals
Find Roraima rentals and devices, get quotes, booking links or a prepared booking. Pay on Roraima.
Should I use this
Quality & Safety
Findings (2)
- LOWin get_product
- LOWin get_product_link
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
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": {
"guest": {
"url": "https://roraima.io/mcp/guest"
}
}
}Remote endpoints
https://roraima.io/mcp/gueststreamable-httpWhat it can do
Tool inventory
Tools (8)
🟢search_listings(location, country, check_in, check_out, guests, ...)
Search Roraima listings by town or province, country, dates and number of guests. With check_in and check_out, only listings free on those nights are returned, each with its total price and a link to its page with dates and guests filled in. The amenity filters return only nights listings whose host has stated that amenity. accommodation_type tells whether one booking takes the whole place (private) or one place per guest in a shared room such as a dormitory (shared, priced per person).
Input Schema
{
"type": "object",
"properties": {
"location": {
"type": "string",
"maxLength": 80,
"description": "Town name, or the two-letter code of an Italian province (SS for the province of Sassari). Province names are matched only as town names."
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "ISO 3166-1 alpha-2 country code, e.g. IT."
},
"check_in": {
"type": "string",
"format": "date",
"description": "Arrival date, YYYY-MM-DD."
},
"check_out": {
"type": "string",
"format": "date",
"description": "Departure date, YYYY-MM-DD."
},
"guests": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Number of guests."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Most results to return. Default 10."
},
"air_conditioning": {
"type": "boolean",
"description": "true: only listings with air conditioning."
},
"pets_allowed": {
"type": "boolean",
"description": "true: only listings that accept pets, also on request (get_listing says which)."
},
"parking": {
"type": "boolean",
"description": "true: only listings with parking, free or paid (get_listing says which)."
},
"entire_place": {
"type": "boolean",
"description": "true: only listings where the guest has the entire place, not a room."
}
},
"additionalProperties": false
}🟢get_listing(listing_id, language)
Public details of one Roraima listing: name, description, town, whether it is private or shared (accommodation_type, places), stay rules, cancellation policy, registration number, amenities and the link to its page. No host contact details. amenities (nights listings only) lists what the host has stated, each with an English code, the value and the sentence the listing page shows in the language asked; applies_to tells whether it describes the listing or the whole property. An amenity not listed has not been stated: it is unknown, not absent.
Input Schema
{
"type": "object",
"properties": {
"listing_id": {
"type": "integer",
"minimum": 1,
"description": "listing_id from search_listings."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
}
},
"required": [
"listing_id"
],
"additionalProperties": false
}🟢get_quote(listing_id, check_in, check_out, guests, date, ...)
Total price of a stay (check_in and check_out) or of a time slot (date, start_time, end_time) at one listing, as its page shows it. Answers that the dates are not available when they are taken. A quote is not a booking.
Input Schema
{
"type": "object",
"properties": {
"listing_id": {
"type": "integer",
"minimum": 1,
"description": "listing_id from search_listings."
},
"check_in": {
"type": "string",
"format": "date",
"description": "Arrival date, YYYY-MM-DD (listings booked by nights)."
},
"check_out": {
"type": "string",
"format": "date",
"description": "Departure date, YYYY-MM-DD."
},
"guests": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Number of guests."
},
"date": {
"type": "string",
"format": "date",
"description": "Day of the time slot, YYYY-MM-DD (listings booked by time slots)."
},
"start_time": {
"type": "string",
"description": "Slot start, HH:MM."
},
"end_time": {
"type": "string",
"description": "Slot end, HH:MM."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
}
},
"required": [
"listing_id",
"guests"
],
"additionalProperties": false
}🟢get_booking_link(listing_id, check_in, check_out, guests, language)
Link to a listing page with arrival, departure and guests already chosen. The guest books and pays on that page. Without dates, the plain listing page.
Input Schema
{
"type": "object",
"properties": {
"listing_id": {
"type": "integer",
"minimum": 1,
"description": "listing_id from search_listings."
},
"check_in": {
"type": "string",
"format": "date",
"description": "Arrival date, YYYY-MM-DD."
},
"check_out": {
"type": "string",
"format": "date",
"description": "Departure date, YYYY-MM-DD."
},
"guests": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Number of guests."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
}
},
"required": [
"listing_id"
],
"additionalProperties": false
}🟢prepare_booking(listing_id, check_in, check_out, guests, date, ...)
Keeps a stay (check_in and check_out) or a time slot (date, start_time, end_time) at one listing, with the name and contacts of the person booking, and returns a link to a Roraima page where that person checks the booking and pays, with these details already filled in. Availability and price are checked as in get_quote. The link carries only a random code, works once and expires after two hours; the details are then deleted. This answer does not repeat the name or the contacts. The booking exists only once it is paid on the page.
Input Schema
{
"type": "object",
"properties": {
"listing_id": {
"type": "integer",
"minimum": 1,
"description": "listing_id from search_listings."
},
"check_in": {
"type": "string",
"format": "date",
"description": "Arrival date, YYYY-MM-DD (listings booked by nights)."
},
"check_out": {
"type": "string",
"format": "date",
"description": "Departure date, YYYY-MM-DD."
},
"guests": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Number of guests."
},
"date": {
"type": "string",
"format": "date",
"description": "Day of the time slot, YYYY-MM-DD (listings booked by time slots)."
},
"start_time": {
"type": "string",
"description": "Slot start, HH:MM."
},
"end_time": {
"type": "string",
"description": "Slot end, HH:MM."
},
"first_name": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "First name of the person booking."
},
"last_name": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Last name of the person booking."
},
"email": {
"type": "string",
"format": "email",
"maxLength": 128,
"description": "Email of the person booking."
},
"phone": {
"type": "string",
"description": "Phone of the person booking, with the international prefix (for example +39...). Used only where the checkout of the listing asks for a phone number."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
}
},
"required": [
"listing_id",
"guests",
"first_name",
"last_name",
"email"
],
"additionalProperties": false
}🟢search_products(query, language, limit)
Search the Roraima catalog of products for sale, such as smart devices, smart locks and installation services, by words in their name or description. Holiday rentals are not included: they come from search_listings.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 100,
"description": "Words to look for, e.g. \"smart plug\" or \"Shelly\". Without it, the newest products."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Most results to return. Default 10."
}
},
"additionalProperties": false
}🟢get_product(product_id, language)
Public details of one product on sale on Roraima: name, category, description, lowest price among its sellers, maker and model for devices, image and the link to its page. No seller contact details.
Input Schema
{
"type": "object",
"properties": {
"product_id": {
"type": "integer",
"minimum": 1,
"description": "product_id from search_products."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
}
},
"required": [
"product_id"
],
"additionalProperties": false
}🟢get_product_link(product_id, language)
Link to the page of a product on sale on Roraima. The buyer chooses options and quantity, and pays, on that page.
Input Schema
{
"type": "object",
"properties": {
"product_id": {
"type": "integer",
"minimum": 1,
"description": "product_id from search_products."
},
"language": {
"type": "string",
"enum": [
"en",
"it",
"de",
"el",
"es",
"fr",
"pl",
"pt"
],
"description": "Language of names, descriptions and page links. Default en."
}
},
"required": [
"product_id"
],
"additionalProperties": false
}Community
Evidence