Blue Pillow Hotels & Stays

com.bluepillowPublished by bluepillow.comOfficial publisherv1.1.0Updated Oct 25, 2026

Neutral hotel & stay price comparison for AI agents: live prices from 16+ booking sites. No signup.

VerifiedStreamable HTTPWeb executableLocation & LifestyleBusiness & Commerce

Overview

AI-generated overview

A remote MCP server that lets an assistant compare live hotel and stay prices across booking sites, inspect properties and reviews, and check availability for a

What you can do
Resolve place names into destination IDs and find curated destinations near a point of interest or coordinates, for use in later searches. Search stays for a geographic area and dates, returning ranked hotels, B&Bs, apartments, villas and hostels with the booking sites offering each. Read property details and guest reviews, including cleanliness, quiet, comfort, complaints, breakfast and facilities. Check live availability and per-operator quotes for one property over a stay window, with prices, rooms-left signals, breakfast and refundable flags, and deep links. Obtain a free anonymous API key that the other tools accept.
When to use it
Useful when someone is planning travel and wants to compare accommodation prices across several booking sites, read reviews before choosing, or confirm live availability and prices for specific dates. It suits assistants answering hotel and stay questions rather than making bookings.
Requirements
A remote streamable HTTP endpoint; no local package or runtime. No account or sign-up is needed, but the tools take an api_key argument, obtained by calling the get_anonymous_key tool. Network access to the provider's endpoint is required.
Before you install
The anonymous key is free and does not expire, but it carries per-key rate limits, so heavy use may be throttled. The tools perform live lookups against the provider's search layer, so destination and date details are sent to that third party. Results are price comparisons with deep links to booking sites; the server does not appear to book or pay for stays itself.

Installation

In SourceWeft

  1. Open Blue Pillow Hotels & Stays in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.bluepillow%2Fhotels/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "blue-pillow-hotels-stays": {
      "type": "http",
      "url": "https://mcp.b2a.bluepillow.com/"
    }
  }
}

Tools

6

search_stays

Search accommodation — compare offers across operators

Multi-operator accommodation comparator for a geographic area and a stay: dates (required), guests and optional filters. Returns a ranked list of properties — hotels, B&Bs, apartments, villas, hostels and more — with the booking sites that offer each one and their live availability and per-operator price for the requested dates. Questions about one property found here (guest opinions, facilities, a live re-quote) are served by `get_property_details` and `check_property_availability` with that result's `id`. Dates: natural-language references ("this weekend", "the weekend of July 4", "long weekend in May") translate to concrete check_in / check_out values at the call site; ISO dates also work. Locale: `user_country`, `currency` and `language` carry the user's locale, not the destination's. Prices come back in `currency` if set, otherwise in the currency of `user_country` (US→USD, CA→CAD, GB→GBP, euro-area→EUR), otherwise USD. Each offer is quoted by its operator in that currency; nothing is converted. `user_country` and `language` also localize the booking link. Each result carries: - `location.lat` / `location.lon`, suitable for plotting the results on a map. - `thumbnail_url` (first photo, or null) and `images`, capped to one photo; `get_property_details` returns the full gallery. - `web_url`, a link to the property page with the stay already encoded. - `price` and `offers[]`: the live quote for the requested dates, present only when availability was confirmed. Each offer has `ota`, `amount` (total stay), `amount_per_night`, `currency`, `breakfast_included`, `refundable`, `rooms_left` and `deeplink_url` — a Blue Pillow tracked link that records the click and forwards to the operator's booking page; it is what attributes the booking to Blue Pillow, which a raw operator URL does not. `price` mirrors `offers[0]`, Blue Pillow's best value for money (price weighed against breakfast, free cancellation and operator reliability, with a small commerci

Parameterspagesortdatesrequiredguestsrequiredapi_keyfiltersincludecurrencylanguagelocationrequireduser_countryavailability_mode+2 more

get_property_details

Get property details — static facts, no live availability

Details and guest reviews for one specific property — hotel, B&B, hostel, apartment, villa — identified by its id. Answers questions such as what guests think of it, whether it is clean, quiet or comfortable, the most common complaints, how the breakfast is, which facilities it offers, where exactly it is, or how it compares with another option. It also serves follow-up questions about a property returned earlier by `search_stays`: the `id` of that result is the `property_id` here. Returns the amenity list, photos, booking sources, location and the headline rating (`rating` + `rating_count`). Guest-review data is added through `include`: - `reviews_aggregate` — score, total count and per-source breakdown; it summarizes all reviews. - `reviews_sample` — up to 5 recent review texts. - `reviews_extended` — up to 20 recent review texts for a deeper read; it supersedes `reviews_sample`. `reviews_meta` reports how many texts exist and that the cap is deliberate: the omitted texts are older, and the aggregate already reflects them. It takes no dates and carries no price: a price only exists for a concrete stay window, which is what `check_property_availability` quotes. In the response `price` is null, `offers` is empty and `availability_status` is `unknown`. Input: `property_id` is the `id` of a `search_stays` result (an opaque string starting with `prop_`) or a bluepillow.com property URL. For a property known only by name, `resolve_destination` and a targeted `search_stays` return its id. `user_country`, `currency` and `language` carry the user's locale and localize the `web_url` link to the property page. Language default is "en"; country default is "US". All rating fields are on a 0-5 scale.

Parametersapi_keyincludecurrencylanguageproperty_idrequireduser_country

check_property_availability

Check live availability and per-operator quotes for a stay

Live availability and per-operator quote for a specific property over a specific stay window. Performs a live date-aware lookup against the BluePillow search layer, returns date-specific prices, rooms-left scarcity signals, breakfast-included and refundable flags, and a per-operator deep link to complete the booking. Useful when the user has specific dates in mind for a property they already identified — typically via `search_stays` or `get_property_details`. The complementary `get_property_details` tool answers "what is this property like" with static facts; this tool answers "can I book it for these dates at what price" with live, date-specific data. Follow-up questions about a property from an earlier `search_stays` result — is it still available, what does it cost for other dates or guests — use that result's `id` as `property_id`. Required input: `property_id` (the `id` from a `search_stays` result, opaque string starting with `prop_`), `dates` (check_in + check_out, ISO 8601), and `guests` (adults / children / infants composition). Without these the live lookup cannot proceed. Natural-language date references — "tonight", "this weekend", "next weekend", "the weekend of July 4", "Memorial Day weekend", "long weekend in May" — translate to concrete check_in / check_out values at the call site; concrete ISO dates also work. check_in is a date in the real-time calendar that is today or later; past values are rejected at the API boundary. `user_country`, `currency`, and `language` carry the **user's** locale, not the property's. Prices are returned in `currency` if set, else derived from `user_country`, else **USD** — pass `user_country` and/or `currency` whenever you know the user's location/currency so the quote matches what they'll pay; don't rely on the USD default. `user_country` and `language` also localize the `web_url` booking link. Response shape: - `availability_status` — `available`, `unavailable`, or `unknown`. Available means rooms confirmed a

Parametersdatesrequiredguestsrequiredapi_keycurrencylanguageproperty_idrequireduser_country

resolve_destination

Resolve destination name to id

Converts a destination name into a destination id usable in `search_stays`. The canonical entry point when the user's request mentions a place name and coordinates are not already known from a prior call in this session. If coordinates are already in hand from an earlier tool result, passing them directly to `search_stays` skips this resolver step. Accepts cities, neighborhoods, airports, points of interest, and named areas such as islands or districts ('Tenerife', 'Crete', 'Trastevere'), written locally or in English. Names are matched against Blue Pillow's own place slugs, which exist for English, Italian, German and Spanish; in other languages the English name is the most reliable. Accents are optional — 'São Paulo' and 'Sao Paulo' resolve alike. A qualifier after the name is tolerated ('Austin, Texas'). The `country` parameter disambiguates names that occur in multiple places (for example Springfield MA vs Springfield IL vs Springfield MO). The `type` parameter narrows the kind of destination returned. `poi` is the narrowest match and has partial coverage on the comparator side; when the agent's own geographic knowledge can already geocode the POI to lat/lon, passing coordinates to `search_stays` is the more reliable path. An `area` candidate can be large: its `location.default_radius_km` says how far a search on its id reaches (an island's may include its neighbours); when the user wants one part of it, coordinates of that part are the tighter search.

Parametersnamerequiredtypeapi_keycountrylanguage

discover_destinations_near

Discover destinations near a point

Curated destinations — cities, neighborhoods, airports, points of interest — within a radius of a geographic point, for use as a `destination_id` in subsequent `search_stays` calls. Useful when coordinates are already in hand (from world knowledge, from a previous tool result, or directly from the user) and the agent needs to enumerate which curated destinations cover that area before searching for properties. Also useful as a fan-out entry point for region-level intents — broad areas such as 'Tuscany', 'Pacific Northwest', 'New England', or 'Central Europe' — where the agent can pass an approximate regional centroid and surface a list of sub-destinations the user may then narrow down to before a focused search. Returns up to 5 candidates ordered by distance. The radius defaults to 5 km; widens up to 50 km for broader queries.

Parameterslatrequiredlonrequiredtypeapi_keylanguageradius_km

get_anonymous_key

Get an anonymous API key for Blue Pillow Hotels & Stays

Issues a free anonymous key for Blue Pillow Hotels & Stays, with no account or sign-up. The other tools of this server take the key in their `api_key` argument. A key does not expire, so the same key can be used for later calls; calling this tool again issues a new one. Keys carry per-key rate limits and let Blue Pillow count usage and booking-link referrals per key, as described in the privacy policy (https://b2a.bluepillow.com/legal/privacy). Optional ``label`` and ``agent`` (max 64 chars each) are stored with the key to name the client that requested it (e.g. 'claude-desktop', 'chatgpt', 'cursor-ide'); they should not contain personal data and do not affect rate limits or capabilities. Integrators who need higher limits can write to [email protected].

Parametersagentlabel

Version history

2
  1. v1.1.0LatestSep 24, 2026
  2. v1.0.0Sep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.