The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Hostaway Kit listing page.
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.
list_listings, get_listing, get_calendar, list_reservations, list_conversations, list_messages, plus inbox triage, draft reply, and reports.wifiPassword, wifiUsername, doorSecurityCode, doorCode, doorCodeVendor, doorCodeInstruction, and all invoicing* contact fields.Mapped to the Hostaway Public API:
| Kit behaviour | Hostaway |
|---|---|
| Active listings | GET /v1/listings?specialStatus[]=active |
| One listing | GET /v1/listings/{id}?includeResources=1 |
| Calendar | GET /v1/listings/{id}/calendar?includeResources=1 |
| Stay search on the list | availabilityDateStart, availabilityDateEnd, availabilityGuestNumber |
| Check-in / check-out | integers 0–23 (checkInTimeStart, checkInTimeEnd, checkOutTime) |
| Amenities | amenityId integers, not free-text names (GET /v1/amenities resolves names) |
| Inbox | GET /v1/conversations, GET /v1/conversations/{id}/messages |
| Create reservation / send message | out |
If HOSTAWAY_ACCOUNT_ID or HOSTAWAY_CLIENT_SECRET is unset, the server serves bundled fixtures so npx still demos.
Or from this repo:
stdio only. Logs go to stderr. Credentials are optional.
| Variable | Required | Purpose |
|---|---|---|
HOSTAWAY_ACCOUNT_ID | for live reads | Hostaway account id (client_id on POST /v1/accessTokens) |
HOSTAWAY_CLIENT_SECRET | for live reads | Client secret from the Hostaway dashboard |
HOSTAWAY_KIT_NOW | no | ISO 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.
Add to ~/.cursor/mcp.json (or project .cursor/mcp.json):
Leave both env values empty, or omit env, to run the fixture demo.
Copy the skills from this repo into Cursor:
Add to ~/.claude.json (or project .mcp.json):
Skills:
~/.codex/config.toml:
Skills live in this repository under skills/. Point Codex at that folder or copy the SKILL.md files into your Codex skills path.
| Skill | When to use |
|---|---|
skills/hostaway-pms | Hostaway stays the PMS. Do not push their website builder. |
skills/hostaway-guest-answers | Answer guests from that listing's fields only. |
skills/hostaway-availability | Date-range availability from list filters + calendar. |
skills/hostaway-inbox | SLA triage and draft. Never send. |
skills/hostaway-reporting | Occupancy, holes, unanswered counts, completeness. |
The npm package is the MCP server only. Skills stay in git.
| Tool | What it does |
|---|---|
list_listings | Active listings; optional city / name / availability filters |
get_listing | One listing, resources included, secrets stripped |
get_calendar | Day rows with status, isAvailable, price (null = unknown) |
list_reservations | Reservations; door codes stripped |
list_conversations | Inbox threads |
list_messages | Messages in a thread |
inbox_triage | Unanswered + SLA (breached / waiting / answered) |
draft_reply | Grounded draft. send is always false. |
report_occupancy | Reserved / available / blocked + blocked holes |
report_inbox | Unanswered thread counts |
report_completeness | Missing photos, house rules, amenities |
Occupancy rate = reserved nights ÷ (reserved + available). Blocked nights are listed as holes, not folded into occupancy.
Demo inventory (not a real Hostaway account):
wifiPassword / invoicing contacts; the denylist strips them.includeArchived is true.price: null.Covers denylist, fixture filters, occupancy math, SLA counts, draft refusal of secrets and invented rates, and the absence of a send path.
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.
MIT. See LICENSE.
Hostaway is a trademark of its owner. This project is not affiliated with or endorsed by Hostaway.