hostaway-kit

io.github.stylabsPublished by GitHub account stylabsv1.0.2Updated Oct 25, 2026

Read-only Hostaway MCP: listings, calendar, inbox, reports. Fixtures, no key. By STYLABS.

Overview

AI-generated overview

Read-only Hostaway MCP server that lets an assistant query listings, calendars, reservations and inbox threads, and produce occupancy, inbox and listing-comple-

What you can do
List and inspect active listings, with optional city, name and availability filters, and secrets stripped from results. Read calendar day rows with availability status and price, and list reservations with door codes removed. Browse inbox conversations and their messages, triage unanswered threads by SLA, and generate a grounded draft reply that is never sent. Produce reports on occupancy and blocked holes, unanswered thread counts, and listing completeness (photos, house rules, amenities).
When to use it
Useful for short-term rental operators already running Hostaway as their PMS who want an assistant to answer questions about listings, availability, guest inboxes and simple operational reports without any risk of writing back to Hostaway.
Requirements
Runs locally over stdio, typically via npx with Node.js. Live reads need HOSTAWAY_ACCOUNT_ID and HOSTAWAY_CLIENT_SECRET from the Hostaway dashboard; without both, the server serves bundled demo fixtures instead. Desktop clients only; skills are copied from the repository, not the npm package.
Before you install
HOSTAWAY_CLIENT_SECRET is a real Hostaway API credential and should be kept out of shared config files. The server is read-only by design and has no send or write path, but it is not an official Hostaway partner product. Fixture data is demo inventory, not a real account.

Installation

In SourceWeft

  1. Open hostaway-kit in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

hostaway-kit

Read-only MCP server plus Cursor / Claude Code / Codex skills for operators who already run Hostaway as their PMS.

Ask an assistant about listings, calendar, inbox, and simple reports. Hostaway stays the system of record. This kit never writes — no messages, no calendar blocks, no reservations.

Shipped by STYLABS, an AI-native venture studio that builds custom Hostaway booking sites and operator dashboards. STYLABS is not an official Hostaway partner.

What you get

  1. Read-only MCP (stdio) — list_listings, get_listing, get_calendar, list_reservations, list_conversations, list_messages, plus inbox triage, draft reply, and reports.
  2. Denylist on every listing / reservation / message payload: wifiPassword, wifiUsername, doorSecurityCode, doorCode, doorCodeVendor, doorCodeInstruction, and all invoicing* contact fields.
  3. Inbox intelligence Hostaway does not compute — unanswered / SLA triage and a suggested reply grounded in that listing's fields, house rules, and calendar. Rates come from the calendar or are reported as unknown. Nothing is sent.
  4. Reports Hostaway does not ship as owner statements — occupancy and blocked holes from the calendar, unanswered thread counts, listing completeness (photos / house rules / amenities). No financials.
  5. Skills in this repo (not on npm) that tell the model to use the MCP tools and never invent numbers.

Mapped to the Hostaway Public API:

Kit behaviourHostaway
Active listingsGET /v1/listings?specialStatus[]=active
One listingGET /v1/listings/{id}?includeResources=1
CalendarGET /v1/listings/{id}/calendar?includeResources=1
Stay search on the listavailabilityDateStart, availabilityDateEnd, availabilityGuestNumber
Check-in / check-outintegers 0–23 (checkInTimeStart, checkInTimeEnd, checkOutTime)
AmenitiesamenityId integers, not free-text names (GET /v1/amenities resolves names)
InboxGET /v1/conversations, GET /v1/conversations/{id}/messages
Create reservation / send messageout

If HOSTAWAY_ACCOUNT_ID or HOSTAWAY_CLIENT_SECRET is unset, the server serves bundled fixtures so npx still demos.

Install / run

bash
npx -y hostaway-kit

Or from this repo:

bash
npm installnpm run buildnode dist/index.js

stdio only. Logs go to stderr. Credentials are optional.

Environment

VariableRequiredPurpose
HOSTAWAY_ACCOUNT_IDfor live readsHostaway account id (client_id on POST /v1/accessTokens)
HOSTAWAY_CLIENT_SECRETfor live readsClient secret from the Hostaway dashboard
HOSTAWAY_KIT_NOWnoISO timestamp that pins "now" for SLA math (used by tests)

Get an API client secret from the Hostaway dashboard. This kit does not ship or use a Hostaway account.

Cursor

Add to ~/.cursor/mcp.json (or project .cursor/mcp.json):

json
{  "mcpServers": {    "hostaway": {      "command": "npx",      "args": ["-y", "hostaway-kit"],      "env": {        "HOSTAWAY_ACCOUNT_ID": "your-account-id",        "HOSTAWAY_CLIENT_SECRET": "your-client-secret"      }    }  }}

Leave both env values empty, or omit env, to run the fixture demo.

Copy the skills from this repo into Cursor:

bash
cp -R skills/* ~/.cursor/skills/

Claude Code

Add to ~/.claude.json (or project .mcp.json):

json
{  "mcpServers": {    "hostaway": {      "command": "npx",      "args": ["-y", "hostaway-kit"],      "env": {        "HOSTAWAY_ACCOUNT_ID": "your-account-id",        "HOSTAWAY_CLIENT_SECRET": "your-client-secret"      }    }  }}

Skills:

bash
mkdir -p .claude/skillscp -R skills/* .claude/skills/

Codex

~/.codex/config.toml:

toml
[mcp_servers.hostaway]command = "npx"args = ["-y", "hostaway-kit"]
[mcp_servers.hostaway.env]HOSTAWAY_ACCOUNT_ID = "your-account-id"HOSTAWAY_CLIENT_SECRET = "your-client-secret"

Skills live in this repository under skills/. Point Codex at that folder or copy the SKILL.md files into your Codex skills path.

Skills (repo only)

SkillWhen to use
skills/hostaway-pmsHostaway stays the PMS. Do not push their website builder.
skills/hostaway-guest-answersAnswer guests from that listing's fields only.
skills/hostaway-availabilityDate-range availability from list filters + calendar.
skills/hostaway-inboxSLA triage and draft. Never send.
skills/hostaway-reportingOccupancy, holes, unanswered counts, completeness.

The npm package is the MCP server only. Skills stay in git.

Tools

ToolWhat it does
list_listingsActive listings; optional city / name / availability filters
get_listingOne listing, resources included, secrets stripped
get_calendarDay rows with status, isAvailable, price (null = unknown)
list_reservationsReservations; door codes stripped
list_conversationsInbox threads
list_messagesMessages in a thread
inbox_triageUnanswered + SLA (breached / waiting / answered)
draft_replyGrounded draft. send is always false.
report_occupancyReserved / available / blocked + blocked holes
report_inboxUnanswered thread counts
report_completenessMissing photos, house rules, amenities

Occupancy rate = reserved nights ÷ (reserved + available). Blocked nights are listed as holes, not folded into occupancy.

Fixtures

Demo inventory (not a real Hostaway account):

  • 101 Harbor View Studio — complete listing. Raw fixture includes wifiPassword / invoicing contacts; the denylist strips them.
  • 102 Riverside Loft — no photos.
  • 103 Pine Cabin — no house rules, no amenities.
  • 199 — archived; omitted unless includeArchived is true.
  • August 2026 calendar on 101 with reserved nights, a two-night blocked hole (6–7 Aug), and 11 Aug with price: null.
  • Unread threads 501 (SLA breach), 502 (within SLA), 504 (pets question on the incomplete listing). 503 is answered.

Tests

bash
npm test

Covers denylist, fixture filters, occupancy math, SLA counts, draft refusal of secrets and invented rates, and the absence of a send path.

Out of scope

Writes of any kind. Guest Payments, Stripe, WordPress plugins, a hosted Claude connector, a Cursor marketplace plugin, Hostaway's website builder, Flagship guest websites, owner statements, or live client data.

License

MIT. See LICENSE.

Hostaway is a trademark of its owner. This project is not affiliated with or endorsed by Hostaway.

Source: README.md at commit 5267dcb

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

2
  1. v1.0.2LatestOct 12, 2026
  2. v1.0.1Sep 16, 2026

Score

50% 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 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts