mcpField
H
hostaway

hostaway

Local
github.com/mattlong-pluxMaps & Travel0Updated 27w ago

About hostaway

hostaway is an open-source MCP server for property managers and AI assistant users working with Hostaway. It provides tools for reservations, listings, calendars, financial reports, and guest conversations, with an option to disable write operations.

Key features

  1. 01Query and update reservations
  2. 02Browse listings and custom fields
  3. 03Check availability and calendar pricing
  4. 04Manage calendar blocks
  5. 05Retrieve revenue and payout reports
  6. 06Read and send guest messages

Use cases

  1. 01Review upcoming reservations by property
  2. 02Find unbooked gaps in listing calendars
  3. 03Reconcile revenue and payouts
  4. 04Check unread conversations or message guests

MCP support

The MCP server connects AI clients to the Hostaway property management API and exposes tools for reservations, listings, calendars, financials, and conversations. Read-only mode disables the listed mutation tools.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"mattlong-plux-hostaway": {
"command": "npx",
"args": [
"-y",
"@matt-long-plux/hostaway-mcp"
],
"env": {
"HOSTAWAY_ACCOUNT_ID": "<HOSTAWAY_ACCOUNT_ID>",
"HOSTAWAY_CLIENT_SECRET": "<HOSTAWAY_CLIENT_SECRET>",
"HOSTAWAY_READ_ONLY": "<HOSTAWAY_READ_ONLY>",
"HOSTAWAY_CACHE_TTL": "<HOSTAWAY_CACHE_TTL>"
}
}
}
}
Run commandnpx -y @matt-long-plux/hostaway-mcp
Environment variables to set
HOSTAWAY_ACCOUNT_IDYour Hostaway account ID (integer)
HOSTAWAY_CLIENT_SECRETSecretYour Hostaway API client secret
HOSTAWAY_READ_ONLYSet to 'true' to disable all write/mutation tools
HOSTAWAY_CACHE_TTLToken cache TTL in seconds when API doesn't provide expires_in (default: 240)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@matt-long-plux/hostaway-mcp1.0.1

Tools

17

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
limitnumberNoMax results (default 50, max 100)
dateTostringNoCheck-in date to (YYYY-MM-DD)
offsetnumberNoPagination offset
statusenumNoReservation status filternew | modified | cancelled | inquiry | declined
dateFromstringNoCheck-in date from (YYYY-MM-DD)
channelIdnumberNoFilter by OTA channel ID (2000=Airbnb, 2003=Booking.com, 2009=VRBO, 2014=Direct)
listingMapIdnumberNoFilter by specific listing ID

Details

From the project README

hostaway-mcp

npm version License: MIT MCP

An open-source Model Context Protocol (MCP) server that connects AI assistants like Claude Desktop, Claude Code, and Cursor to the Hostaway property management API. Query reservations, listings, calendars, financials, and guest conversations using natural language.

Quick Start

  1. Get your Account ID and Client Secret from your Hostaway dashboard under Settings > API
  2. Make sure you have Node.js 18+ installed
  3. Pick your AI client below and add the config — no cloning or building required

Setup

Claude Desktop (Mac & Windows)

Open your Claude Desktop config file:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add the following (merge with existing mcpServers if you have other servers configured):

{
  "mcpServers": {
    "hostaway": {
      "command": "npx",
      "args": ["-y", "@matt-long-plux/hostaway-mcp"],
      "env": {
        "HOSTAWAY_ACCOUNT_ID": "YOUR_ACCOUNT_ID",
        "HOSTAWAY_CLIENT_SECRET": "YOUR_CLIENT_SECRET"
      }
    }
  }
}

Restart Claude Desktop and you're ready to go.

Claude Code

Option 1 — CLI command (quickest):

claude mcp add hostaway \
  -e HOSTAWAY_ACCOUNT_ID=YOUR_ACCOUNT_ID \
  -e HOSTAWAY_CLIENT_SECRET=YOUR_CLIENT_SECRET \
  -- npx -y @matt-long-plux/hostaway-mcp

Option 2 — .mcp.json in your project root (good for sharing with teammates):

{
  "mcpServers": {
    "hostaway": {
      "command": "npx",
      "args": ["-y", "@matt-long-plux/hostaway-mcp"],
      "env": {
        "HOSTAWAY_ACCOUNT_ID": "YOUR_ACCOUNT_ID",
        "HOSTAWAY_CLIENT_SECRET": "YOUR_CLIENT_SECRET"
      }
    }
  }
}
Cursor

Add the same config to your project's .cursor/mcp.json, or go to Cursor Settings > MCP Servers > Add Server and paste:

{
  "mcpServers": {
    "hostaway": {
      "command": "npx",
      "args": ["-y", "@matt-long-plux/hostaway-mcp"],
      "env": {
        "HOSTAWAY_ACCOUNT_ID": "YOUR_ACCOUNT_ID",
        "HOSTAWAY_CLIENT_SECRET": "YOUR_CLIENT_SECRET"
      }
    }
  }
}

Updating

If you installed a previous version via npx, your system may have a cached copy. To update to the latest release:

npx clear-npx-cache

Then restart your AI client (Claude Desktop, Cursor, etc.). The next launch will automatically pull the latest version.

Alternatively, you can pin @latest in your config to always fetch the newest version on each restart:

"args": ["-y", "@matt-long-plux/hostaway-mcp@latest"]

Tools Reference

Reservations
ToolDescriptionKey Parameters
list_reservationsList reservations with filterslistingMapId, dateFrom, dateTo, status, channelId, limit
get_reservationGet full reservation detailsreservationId (required)
update_reservation_host_noteUpdate internal host notereservationId, hostNote (required)
list_reservations_by_propertyCurrent + upcoming reservations grouped by propertyNone
Listings
ToolDescriptionKey Parameters
list_listingsAll active listings with metadataincludeArchived
get_listingFull listing detailslistingId (required)
get_listing_custom_fieldsCustom field values as name-value maplistingId (required)
Calendar
ToolDescriptionKey Parameters
get_calendarAvailability and pricing calendarlistingId, startDate, endDate (all required)
get_gap_nightsFind short unbooked gaps between reservationslistingId (required), startDate, endDate, maxGapLength
create_calendar_blockBlock dates on calendarlistingId, startDate, endDate (required), note
delete_calendar_blockRemove a calendar blocklistingId, calendarBlockId (required)
Financials
ToolDescriptionKey Parameters
get_reservation_financialsFinancial breakdown for a reservationreservationId (required)
get_revenue_summaryAggregated revenue across listingsdateFrom, dateTo (required), listingId
get_payout_reportPayout report for reconciliationdateFrom, dateTo (required), channelId
Conversations
ToolDescriptionKey Parameters
list_conversationsRecent guest conversationslistingId, limit, unreadOnly
get_conversationFull message threadconversationId (required)
send_messageSend message to guestconversationId, message (required)

Read-Only Mode

Set HOSTAWAY_READ_ONLY=true to disable all write/mutation tools. When enabled, the following tools will return an error instead of executing:

  • update_reservation_host_note
  • create_calendar_block
  • delete_calendar_block
  • send_message

This is useful for shared accounts or when you want to prevent accidental modifications.

Environment Variables

VariableRequiredDescription
HOSTAWAY_ACCOUNT_IDYesYour Hostaway account ID (integer)
HOSTAWAY_CLIENT_SECRETYesYour Hostaway API client secret
HOSTAWAY_READ_ONLYNoSet to true to disable write operations
HOSTAWAY_CACHE_TTLNoToken cache TTL in seconds (default: 240)

Example Queries

Once connected, try asking Claude:

  • "Show me all upcoming reservations"
  • "What's the occupancy looking like for my properties next month?"
  • "Find gap nights across all listings for the next 90 days"
  • "How much revenue did I make last month?"
  • "Show me unread guest messages"
  • "What are the financials for reservation 12345?"
  • "Generate a payout report for Airbnb bookings in March"

Contributing

Feedback and pull requests are welcome! Please open an issue on GitHub or email [email protected].

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.