# io.usefulapi/hostaway (remote · hostaway.usefulapi.io)

Manage Hostaway listings, reservations, calendar, guest messages, reviews and tasks.

- Trust score: 75/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-04

## Components

- remote · `hostaway.usefulapi.io`: 75/100 (this document), [markdown](https://verifymcp.io/servers/io-usefulapi-hostaway/hostaway.md), [page](https://verifymcp.io/servers/io-usefulapi-hostaway/hostaway)

## Channel facts

- Endpoint: `https://hostaway.usefulapi.io/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-04.

- **Endpoint Security**: 89/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 68/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 4096 tokens (~204/item across 20 items; 20 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 7/100
  - Stability observed for 2 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.
  - An AI judge read all 20 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the io.usefulapi/hostaway MCP server?

io.usefulapi/hostaway is a hosted endpoint at https://hostaway.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http io-usefulapi-hostaway 'https://hostaway.usefulapi.io/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "io-usefulapi-hostaway": {
      "url": "https://hostaway.usefulapi.io/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "io-usefulapi-hostaway": {
      "type": "http",
      "url": "https://hostaway.usefulapi.io/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.io-usefulapi-hostaway]
url = "https://hostaway.usefulapi.io/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-usefulapi-hostaway": {
      "type": "remote",
      "url": "https://hostaway.usefulapi.io/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add io-usefulapi-hostaway --url 'https://hostaway.usefulapi.io/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  io-usefulapi-hostaway:
    url: "https://hostaway.usefulapi.io/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "io-usefulapi-hostaway": {
      "Transport": "http",
      "Url": "https://hostaway.usefulapi.io/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add io-usefulapi-hostaway -t streamable-http -u 'https://hostaway.usefulapi.io/mcp'
```

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-hostaway": {
      "type": "http",
      "url": "https://hostaway.usefulapi.io/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-03 (score 75, +1)

- [functional improvement] Stability: unverified → 0.03

### 2026-10-02 (score 74, +46)

- [security improvement] HTTPS: unverified → pass
- [security improvement] Authorization: unverified → pass
- [security improvement] Injection markers: unverified → pass
- [security] First check of Authorization: partial
- [security] First check of Judged manipulation: pass
- [functional regression] MCP protocol: unverified → fail
- [functional improvement] Tool coverage: unverified → 100
- [functional] First check of Schema quality: fail
- [functional] First check of Schema quality: excellent
- [functional] First check of Schema quality: fail
- [functional] First check of Destructive annotations: 100
- [functional] First check of Tool coverage: 100

### 2026-10-01 (score 28, 0)

- [security] Tool safety: Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- [security] Authorization: Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.
- [functional] Tool coverage: Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- [functional] Capabilities: Capabilities not yet verified: we couldn't read the endpoint's capabilities.
- [functional] Schema quality: Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.

### 2026-09-30 (score 28, +10)

- [security improvement] Transport: fail → pass
- [security] Authorization: Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the whole tool list to see what that exposes.
- [security] Tool safety: Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.
- [functional] Tool coverage: Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- [functional] Schema quality: Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- [functional] Capabilities: Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

### 2026-09-29 (score 18)

First indexed and scored.

## MCP tools (20)

### `hostaway_list_listings` (~238 tokens)

List listings

List the account's properties (listings) with name, address, capacity, base price, fees and check-in times. Filter by name, city, country, property type, availability for a date range and guest count, or active/archived status. Hostaway: GET /v1/listings.

Input parameters:

- `availabilityDateEnd` (string): Only listings available until (YYYY-MM-DD).
- `availabilityDateStart` (string): Only listings available from (YYYY-MM-DD).
- `availabilityGuestNumber` (integer): Only listings that fit this many guests.
- `city` (string): City.
- `country` (string): Country.
- `includeResources` (boolean): Include attached sub-resources (sent as includeResources=1).
- `limit` (integer): Maximum records to return (1-500).
- `match` (string): Search by listing name.
- `offset` (integer): Records to skip from the start.
- `propertyTypeId` (integer): Property type id.
- `sortOrder` (string): Sort order.
- `specialStatus` (array): Filter by status; omit for both active and archived.

### `hostaway_get_listing` (~87 tokens)

Get one listing

Fetch a single listing by id — full details including description, house rules, amenities, images, fees, taxes, cancellation policy and access info (door code, wifi). Hostaway: GET /v1/listings/{listingId}.

Input parameters:

- `includeResources` (boolean): Include attached sub-resources (sent as includeResources=1).
- `listingId` (integer, required): Listing id.

### `hostaway_list_reservations` (~531 tokens)

List reservations

List reservations across all channels (Airbnb, Vrbo, Booking.com, direct…) with guest, dates, status, price and channel. Filter by listing, channel, arrival/departure window, guest name or email, unread messages, and more. Default order is newest first; for large accounts page with afterId (the id of the last reservation on the previous page). Channel ids: 2000 direct, 2018 airbnbOfficial, 2002 homeaway/Vrbo, 2005 bookingcom, 2007 expedia, 2013 bookingengine, 2019 marriott, 2020 partner, 2022 google. Hostaway: GET /v1/reservations.

Input parameters:

- `afterId` (integer): Cursor: the id of the last reservation from the previous page (offset is then ignored).
- `arrivalEndDate` (string): Arrival on or before (YYYY-MM-DD).
- `arrivalStartDate` (string): Arrival on or after (YYYY-MM-DD).
- `assigneeUserId` (integer): Only reservations assigned to this user.
- `channelId` (integer): Only this channel id.
- `dateType` (string): Which date startDate/endDate bound (only on accounts with the new reservations query; 'cancellation' also restricts to cancelled).
- `departureEndDate` (string): Departure on or before (YYYY-MM-DD).
- `departureStartDate` (string): Departure on or after (YYYY-MM-DD).
- `endDate` (string): Upper bound for dateType (YYYY-MM-DD).
- `guestEmail` (string): Filter by guest email.
- `hasUnreadConversationMessages` (boolean): Only reservations with unread guest messages.
- `includeCancellationPolicy` (boolean): Attach the cancellation-policy snapshot to each reservation.
- `includeResources` (boolean): Include attached sub-resources (sent as includeResources=1).
- `isArchived` (boolean): Archived or not.
- `isStarred` (boolean): Only starred.
- `latestActivityEnd` (string): Latest activity on or before (YYYY-MM-DD).
- `latestActivityStart` (string): Latest activity on or after (YYYY-MM-DD).
- `limit` (integer): Maximum records to return (1-500).
- `listingId` (integer): Only reservations for this listing.
- `match` (string): Search by guest name.
- `offset` (integer): Records to skip from the start.
- `sortOrder` (string): Sort order.
- `startDate` (string): Lower bound for dateType (YYYY-MM-DD).

### `hostaway_get_reservation` (~72 tokens)

Get one reservation

Fetch a single reservation by its Hostaway id — guest contact details, dates, guest counts, price breakdown, payment state, door code, notes, channel and cancellation policy. Hostaway: GET /v1/reservations/{reservationId}.

Input parameters:

- `reservationId` (integer, required): Hostaway reservation id.

### `hostaway_get_reservation_logs` (~107 tokens)

Get reservation change history

The audit trail for one reservation: every field change with previous and new value, when, and by which user (most recent first). Useful for 'who changed these dates / this price?'. Hostaway: GET /v1/reservations/{reservationId}/logs.

Input parameters:

- `limit` (integer): Maximum records to return (1-500).
- `offset` (integer): Records to skip from the start.
- `reservationId` (integer, required): Hostaway reservation id.

### `hostaway_get_calendar` (~135 tokens)

Get listing calendar

Day-by-day availability and pricing for one listing over a date range: status (available, blocked, reserved, pending), nightly price, min/max stay, closed-to-arrival/departure and notes. Set includeResources to see the reservations occupying each day. Hostaway: GET /v1/listings/{listingId}/calendar.

Input parameters:

- `endDate` (string, required): Last day (YYYY-MM-DD).
- `includeResources` (boolean): Include attached sub-resources (sent as includeResources=1).
- `listingId` (integer, required): Listing id.
- `startDate` (string, required): First day (YYYY-MM-DD).

### `hostaway_calculate_price` (~153 tokens)

Quote a stay

Calculate what a stay at a listing would cost — total price plus the component breakdown (base rate, cleaning fee, taxes, discounts). A calculation only: nothing is booked or held. Hostaway: POST /v1/listings/{listingId}/calendar/priceDetails (version 2).

Input parameters:

- `endingDate` (string, required): Departure date (YYYY-MM-DD).
- `listingId` (integer, required): Listing id.
- `markup` (number): Price markup multiplier (must be more than 1.0).
- `numberOfGuests` (integer, required): Number of guests.
- `reservationCouponId` (integer): Reservation coupon id to apply.
- `startingDate` (string, required): Arrival date (YYYY-MM-DD).

### `hostaway_list_conversations` (~106 tokens)

List guest conversations

List guest conversations (the unified inbox across channels), each with its latest message and linked reservation. Filter to one reservation. Hostaway: GET /v1/conversations.

Input parameters:

- `includeResources` (boolean): Include attached sub-resources (sent as includeResources=1).
- `limit` (integer): Maximum records to return (1-500).
- `offset` (integer): Records to skip from the start.
- `reservationId` (integer): Only conversations for this reservation.

### `hostaway_list_conversation_messages` (~127 tokens)

Read a conversation

The messages in one guest conversation — body, direction (isIncoming), channel/email/SMS type, send status and timestamps. By default only sent messages; set includeScheduledMessages to also see scheduled, paused or failed ones. Hostaway: GET /v1/conversations/{conversationId}/messages.

Input parameters:

- `conversationId` (integer, required): Conversation id.
- `includeScheduledMessages` (boolean): Also return scheduled / failed / paused messages.
- `limit` (integer): Maximum records to return (1-500).
- `offset` (integer): Records to skip from the start.

### `hostaway_list_reviews` (~303 tokens)

List reviews

List guest-to-host and host-to-guest reviews with rating (0-10), public review, private feedback and the host's reply. Filter by listings, reservation, type, status, rating range, dates, guest name, or whether the host has replied. Hostaway: GET /v1/reviews.

Input parameters:

- `departureDateEnd` (string): Reservation departure on or before (YYYY-MM-DD).
- `departureDateStart` (string): Reservation departure on or after (YYYY-MM-DD).
- `guestName` (string): Partial, case-insensitive guest-name match.
- `hasHostReply` (boolean): true = only replied-to reviews; false = only unanswered.
- `limit` (integer): Maximum records to return (1-500).
- `listingMapIds` (array): Only reviews for these listing ids.
- `offset` (integer): Records to skip from the start.
- `ratingMax` (number): Maximum rating (0-10).
- `ratingMin` (number): Minimum rating (0-10).
- `reservationId` (integer): Hostaway reservation id.
- `sortBy` (string): Sort field.
- `sortOrder` (string): Sort direction (default desc).
- `statuses` (array): Review statuses.
- `submittedAtEnd` (string): Submitted on or before (YYYY-MM-DD).
- `submittedAtStart` (string): Submitted on or after (YYYY-MM-DD).
- `type` (string): Review direction.

### `hostaway_list_tasks` (~196 tokens)

List tasks

List operational tasks (cleaning, maintenance, check-in/out) with assignee, status, time window and cost. Filter by reservation, status, text match, channel, or start/deadline windows. Hostaway: GET /v1/tasks.

Input parameters:

- `canStartFromEnd` (string): Start window until (YYYY-MM-DD).
- `canStartFromStart` (string): Start window from (YYYY-MM-DD).
- `channelId` (integer): Channel id.
- `limit` (integer): Maximum records to return (1-500).
- `match` (string): Text search.
- `offset` (integer): Records to skip from the start.
- `reservationId` (integer): Only tasks for this reservation.
- `shouldEndByEnd` (string): Deadline until (YYYY-MM-DD).
- `shouldEndByStart` (string): Deadline from (YYYY-MM-DD).
- `status` (string): Task status.

### `hostaway_list_expenses` (~81 tokens)

List expenses and extras

List expenses (negative amounts) and extras (positive amounts) recorded against listings and reservations, with date, concept, categories and the owner statements they appear on. Hostaway: GET /v1/expenses.

Input parameters:

- `limit` (integer): Maximum records to return (1-500).
- `offset` (integer): Records to skip from the start.

### `hostaway_list_owner_statements` (~34 tokens)

List owner statements

List the account's owner statements (id and name). Hostaway: GET /v1/ownerStatements.

### `hostaway_get_owner_statement` (~76 tokens)

Get one owner statement

Fetch one owner statement — the filter it was generated with (listings, date range), summary and per-reservation financial data, grand totals, expenses, and owner / property-manager details. Hostaway: GET /v1/ownerStatement/{ownerStatementId}.

Input parameters:

- `ownerStatementId` (integer, required): Owner statement id.

### `hostaway_create_reservation` (~473 tokens)

Create a reservation

Create a new reservation on a listing (it blocks the calendar and syncs to connected channels). Only channelId 2000 (direct, the default), 2002 (homeaway) or 2020 (partner) are accepted. To price it correctly, call hostaway_calculate_price first and pass its total as totalPrice. Overbooking protection is always left on. Hostaway: POST /v1/reservations.

Input parameters:

- `adults` (integer): Adults.
- `arrivalDate` (string, required): Arrival date (YYYY-MM-DD).
- `channelId`: 2000 direct (default), 2002 homeaway, 2020 partner.
- `checkInTime` (integer): Check-in time (hour of day, 0-23).
- `checkOutTime` (integer): Check-out time (hour of day, 0-23).
- `children` (integer): Children.
- `comment` (string): Free-text comment.
- `currency` (string): Currency code, e.g. USD.
- `departureDate` (string, required): Departure date (YYYY-MM-DD).
- `doorCode` (string): Door / lock code for this stay.
- `doorCodeInstruction` (string): Door-code instructions.
- `doorCodeVendor` (string): Lock vendor.
- `guestAddress` (string): Guest street address.
- `guestCity` (string): Guest city.
- `guestCountry` (string): Guest country (ISO 3166 code, e.g. US).
- `guestEmail` (string): Guest email.
- `guestFirstName` (string): Guest first name.
- `guestLastName` (string): Guest last name.
- `guestName` (string): Guest full name.
- `guestNote` (string): Note from the guest.
- `guestZipCode` (string): Guest ZIP / postal code.
- `hostNote` (string): Internal host note (not shown to the guest).
- `infants` (integer): Infants.
- `listingMapId` (integer, required): Listing id to book.
- `numberOfGuests` (integer): Total number of guests.
- `pets` (integer): Pets.
- `phone` (string): Guest phone, e.g. +15125551212.
- `totalPrice` (number): Total price of the stay.

### `hostaway_update_reservation` (~415 tokens)

Update a reservation

Change fields on an existing reservation — guest details and counts, dates, check-in/out hours, door code, host note or comment. Send only the fields to change. The listing cannot be changed, and this tool never cancels or reprices a booking. Date changes on channel bookings may be overwritten by the channel. Hostaway: PUT /v1/reservations/{reservationId}.

Input parameters:

- `adults` (integer): Adults.
- `arrivalDate` (string): New arrival date (YYYY-MM-DD).
- `checkInTime` (integer): Check-in time (hour of day, 0-23).
- `checkOutTime` (integer): Check-out time (hour of day, 0-23).
- `children` (integer): Children.
- `comment` (string): Free-text comment.
- `departureDate` (string): New departure date (YYYY-MM-DD).
- `doorCode` (string): Door / lock code for this stay.
- `doorCodeInstruction` (string): Door-code instructions.
- `doorCodeVendor` (string): Lock vendor.
- `guestAddress` (string): Guest street address.
- `guestCity` (string): Guest city.
- `guestCountry` (string): Guest country (ISO 3166 code, e.g. US).
- `guestEmail` (string): Guest email.
- `guestFirstName` (string): Guest first name.
- `guestLastName` (string): Guest last name.
- `guestName` (string): Guest full name.
- `guestNote` (string): Note from the guest.
- `guestZipCode` (string): Guest ZIP / postal code.
- `hostNote` (string): Internal host note (not shown to the guest).
- `infants` (integer): Infants.
- `numberOfGuests` (integer): Total number of guests.
- `pets` (integer): Pets.
- `phone` (string): Guest phone, e.g. +15125551212.
- `reservationId` (integer, required): Hostaway reservation id.

### `hostaway_update_calendar` (~237 tokens)

Update listing calendar

Change availability and/or pricing for a date range on one listing, pushed to every connected channel: block (isAvailable=false) or open days, set the nightly price, min/max stay, closed-to-arrival/departure, or a note. For multi-unit listings set desiredUnitsToSell instead of isAvailable (0 blocks). Hostaway: PUT /v1/listings/{listingId}/calendar.

Input parameters:

- `closedOnArrival` (boolean): Closed to arrival.
- `closedOnDeparture` (boolean): Closed to departure.
- `desiredUnitsToSell` (integer): Multi-unit listings: units to sell (0 blocks).
- `endDate` (string, required): Last day to change (YYYY-MM-DD).
- `isAvailable` (boolean): false blocks the days, true opens them (single-unit listings).
- `listingId` (integer, required): Listing id.
- `maximumStay` (integer): Maximum nights.
- `minimumStay` (integer): Minimum nights.
- `note` (string): Calendar note.
- `price` (number): Nightly price.
- `startDate` (string, required): First day to change (YYYY-MM-DD).

### `hostaway_send_message` (~122 tokens)

Send a guest message

Send a message to the guest in a conversation — it is delivered immediately and cannot be recalled. Delivered by email by default, or via the booking channel, SMS or WhatsApp. Attachments are not supported. Rate-limited by Hostaway to 30 messages per minute. Hostaway: POST /v1/conversations/{conversationId}/messages.

Input parameters:

- `body` (string, required): Message text.
- `communicationType` (string): Delivery method (Hostaway default: email).
- `conversationId` (integer, required): Conversation id (see hostaway_list_conversations).

### `hostaway_create_task` (~293 tokens)

Create a task

Create an operational task — e.g. a cleaning after a checkout or a maintenance job — optionally tied to a listing and reservation, assigned to a user, with a time window, category and cost. Hostaway: POST /v1/tasks.

Input parameters:

- `assigneeUserId` (integer): User id to assign the task to.
- `canStartFrom` (string): Earliest start time ("YYYY-MM-DD HH:MM:SS", UTC).
- `categoriesMap` (array): Categories: 1 cleaning, 2 maintenance, 3 check-in, 4 check-out, 5 back office, 6 other.
- `color` (string): Colour in hex, e.g. #FF8800.
- `cost` (number): Task cost.
- `costCurrency` (string): Cost currency, e.g. USD.
- `costDescription` (string): Cost description.
- `description` (string): Task description.
- `listingMapId` (integer): Listing id the task belongs to.
- `priority` (integer): Priority.
- `reservationId` (integer): Reservation id the task relates to.
- `shouldEndBy` (string): Deadline ("YYYY-MM-DD HH:MM:SS", UTC).
- `status` (string): pending, confirmed, inProgress, completed or cancelled.
- `supervisorUserId` (integer): Supervisor user id.
- `title` (string, required): Task title.

### `hostaway_update_task` (~310 tokens)

Update a task

Update a task — change its status (e.g. completed), reassign it, move its window, or add a resolution note. Send only the fields to change. Hostaway: PUT /v1/tasks/{taskId}.

Input parameters:

- `assigneeUserId` (integer): User id to assign the task to.
- `canStartFrom` (string): Earliest start time ("YYYY-MM-DD HH:MM:SS", UTC).
- `categoriesMap` (array): Categories: 1 cleaning, 2 maintenance, 3 check-in, 4 check-out, 5 back office, 6 other.
- `color` (string): Colour in hex, e.g. #FF8800.
- `cost` (number): Task cost.
- `costCurrency` (string): Cost currency, e.g. USD.
- `costDescription` (string): Cost description.
- `description` (string): Task description.
- `listingMapId` (integer): Listing id the task belongs to.
- `priority` (integer): Priority.
- `reservationId` (integer): Reservation id the task relates to.
- `resolutionNote` (string): Resolution note.
- `shouldEndBy` (string): Deadline ("YYYY-MM-DD HH:MM:SS", UTC).
- `status` (string): pending, confirmed, inProgress, completed or cancelled.
- `supervisorUserId` (integer): Supervisor user id.
- `taskId` (integer, required): Task id.
- `title` (string): Task title.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/io-usefulapi-hostaway/hostaway#diagnostics

## Score history

- 2026-10-04: 75
- 2026-10-03: 75
- 2026-10-02: 74
- 2026-10-01: 28
- 2026-09-30: 28
- 2026-09-29: 18

## Common questions

### What is the io.usefulapi/hostaway MCP server?

io.usefulapi/hostaway is an MCP server listed in the public MCP registry as io.usefulapi/hostaway. Manage Hostaway listings, reservations, calendar, guest messages, reviews and tasks. This page covers its hosted endpoint (https://hostaway.usefulapi.io/mcp).

### Is the io.usefulapi/hostaway MCP server safe to use?

io.usefulapi/hostaway scores 75 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the io.usefulapi/hostaway MCP server expose?

io.usefulapi/hostaway exposes 20 tools: hostaway_list_listings, hostaway_get_listing, hostaway_list_reservations, hostaway_get_reservation, hostaway_get_reservation_logs, and 15 more. Their descriptions and schemas cost roughly 4,096 tokens of context every time the server is loaded.

### Does the io.usefulapi/hostaway MCP server require authentication?

Yes. io.usefulapi/hostaway asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the io.usefulapi/hostaway MCP server still maintained?

io.usefulapi/hostaway is still listed as active in the MCP registry. We last reached this channel on 4 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://hostaway.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-hostaway/hostaway.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-hostaway/hostaway.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-hostaway/hostaway
