NuVista Haven MCP Server

io.github.Cswarey16Published by GitHub account Cswarey16v1.0.0Updated Oct 24, 2026

AI front desk for NuVista Haven vacation rentals: live availability, rates, booking links.

VerifiedStreamable HTTPWeb executableLocation & LifestyleBusiness & Commerce

Overview

AI-generated overview

Read-only MCP server for NuVista Haven vacation rentals, letting an assistant search properties, check live availability, quote stays and get booking links.

What you can do
  • Search NuVista Haven vacation rentals by property.
  • Check live availability for a property over a date range from Hospitable calendars.
  • Quote a stay as nightly rate times nights plus cleaning fee, flagging partial estimates when the fee is unknown.
  • Look up property facts such as bedrooms, sleeps, bathrooms, amenities and highlights, with unknown values returned as null.
  • Return the direct booking link on nuvistahaven.com for a property.
When to use it
Useful when an assistant should answer guest questions about NuVista Haven stays — which properties exist, what is free on given dates, what a stay costs, and where to book direct — from live data rather than guesses.
Requirements
A remote Streamable HTTP endpoint; no authentication, environment variables or headers are declared for clients. The hosted server itself needs a Hospitable Personal Access Token in the HOSPITABLE_API_TOKEN environment variable, and property IDs must be mapped to Hospitable records before availability and quotes work.
Before you install
The server is read-only by design and cannot change Hospitable data, but it does relay live availability and rates from Hospitable and property facts from nuvistahaven.com. Quotes may be partial estimates when the cleaning fee is not exposed, and booking links carry no date pre-fill. Availability windows and property mappings are documented as unverified and should be checked against live data.

Installation

In SourceWeft

  1. Open NuVista Haven MCP Server 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/io.github.Cswarey16%2Fnuvista-haven/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": {
    "nuvista-haven": {
      "type": "http",
      "url": "https://nuvista-haven-mcp.onrender.com/mcp"
    }
  }
}

README

NuVista Haven MCP server ("AI front desk")

Model Context Protocol server that lets AI assistants answer, from live data:

  • what NuVista Haven properties exist → search_properties
  • what's free on given dates → check_availability (Hospitable calendars)
  • what's the price → get_quote (nightly rates × nights + cleaning fee)
  • where to book direct → get_booking_link (nuvistahaven.com)

Security model

  • Read-only by construction. hospitable_client.py exposes exactly one HTTP verb (GET) against an allow-list of read paths (/user, /properties, /reservations). There are no POST/PUT/PATCH/DELETE methods anywhere — even though the token may carry write scopes, this code cannot mutate anything in Hospitable.
  • Token handling. The Hospitable Personal Access Token is read ONLY from the HOSPITABLE_API_TOKEN environment variable. It is never hardcoded, never logged, never written to disk.

Setup

bash
cd ~/workspace/nuvista-mcppython3 -m venv venv./venv/bin/pip install -r requirements.txt

Run

bash
# local testing (stdio)HOSPITABLE_API_TOKEN=<token> ./venv/bin/python server.py
# public hosting (Streamable HTTP)HOSPITABLE_API_TOKEN=<token> ./venv/bin/python server.py --http --port 8000

Tests (mocked, no token needed)

bash
./venv/bin/python test_server.py

One-time: map Hospitable property IDs

properties.py holds the 12 canonical properties with best-effort Hospitable name guesses (7 strong, 5 guesses — see guess_confidence). With a live token, run the matcher and confirm each mapping by hand, then fill in hospitable_id per property:

bash
HOSPITABLE_API_TOKEN=<token> ./venv/bin/python - <<'EOF'import sys; sys.path.insert(0, '.')from hospitable_client import HospitableClientfrom logic import build_id_mappingimport jsonprint(json.dumps(build_id_mapping(HospitableClient()), indent=2))EOF

Entries with "needs_human_confirm": true must be verified before use — check_availability/get_quote refuse to run for unmapped properties.

Known API gaps / assumptions (verify against live API)

  1. Calendar query params: get_calendar sends start_date/end_date (the Hospitable convention used by /reservations). If the endpoint ignores them, availability windows may be wrong — verify on first live run.
  2. Cleaning fee: not part of the calendar day object. get_quote probes the property record for common fee shapes; if absent, the total is explicitly marked total_is_partial_estimate: true — never silently zero.
  3. Booking-link date params: date pre-fill via query string on nuvistahaven.com is unverified, so get_booking_link returns the plain property URL (no fabricated params).
  4. Reservations cross-check: list_reservations is implemented but the calendar is the source of truth; reservations are not currently consulted.

Files

  • server.py — FastMCP server, 4 tools, stdio + Streamable HTTP
  • logic.py — tool logic (testable without MCP)
  • hospitable_client.py — GET-only Hospitable Public API v2 client
  • properties.py — canonical 12-property registry + Hospitable mapping
  • test_server.py — mock-based tests

Source: README.md at commit a87c136

Tools

5

search_properties

Search Properties

Search NuVista Haven vacation rentals.

Parametersareaquerymin_sleeps

check_availability

Check Availability

Check live availability for a property over a date range.

Parameterscheck_inrequiredpropertyrequiredcheck_outrequired

get_quote

Get Quote

Quote a stay: nightly rate x nights + cleaning fee. Nightly rates are live from Hospitable. If the cleaning fee is not exposed by the API, the total is marked as a partial estimate.

Parametersguestscheck_inrequiredpropertyrequiredcheck_outrequired

get_property_details

Get Property Details

Facts about a property: bedrooms, sleeps, bathrooms, amenities, highlights. Answers "does it have a hot tub?", "how many bedrooms?", etc. Facts come from nuvistahaven.com; unknown values are null, never guessed.

Parameterspropertyrequired

Version history

1
  1. v1.0.0LatestOct 9, 2026

Score

90% 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
  • License10 pts

    Declare a license in the repository or the registry entry.