# Hotelumo Hotel Operations

> See your hotel's room availability, rates, housekeeping and upcoming arrivals and departures.

- name: com.hotelumo/hotelumo
- version: 0.1.1
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 79/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.hotelumo%2Fhotelumo
- tools: https://api.protogrid.dev/v1/servers/com.hotelumo%2Fhotelumo/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "hotelumo": {
      "type": "http",
      "url": "https://mcp.hotelumo.com/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-23d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 79/100 (good)

### protocol: 88 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- warn `protocol.list_ttl`: tools/list declares ttlMs 0, so clients re-fetch it on every use

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 11 of 11 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 2,639 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 25 (weight 15)

- warn `stability.changes`: 11 tool changes in 30 days
- fail `stability.rug_pull`: 11 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 11, about 2,639 tokens to load them all
- tool set hash: 634e063a58f33428e385a0639d546e3f
- tools last changed: 2026-09-28T05:58:29.900Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.hotelumo/hotelumo.svg)](https://protogrid.dev/servers/com.hotelumo/hotelumo)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-09-28 `show_hotel_overview` changed (description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: Render a bounded tenant-scoped operational snapshot for one Hotelumo hotel. Reservation counts cover an aggregate next-seven-UTC-day sample and never expose individual stays. Guest identities, contact details, reservation or allocation identifiers, exact individual stay records, notes, documents, occupant ids, payments, access data, integration configuration, credentials, and arbitrary metadata are excluded.
  - after: Use this when someone wants a quick overview or dashboard of one hotel's operations. Returns an overview card with the hotel's details, reservation status counts for the next 7 days, and room, room-type, room-status and housekeeping counts from bounded samples (no guest, stay or payment data). Not for a single reservation.
- 2026-09-28 `list_extras` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: List a bounded page of the active add-on / extra-service catalog in the authenticated organization. Guest charges, folio data, display colors, and credentials are excluded.
  - after: Use this when someone asks what extras a hotel sells, such as breakfast, parking, spa, transfers or fees, and what they cost. Returns each active extra's name, price in minor currency units, currency, category and taxable flag, 20 per page by default. Not for what a guest bought or was charged.
- 2026-09-28 `list_daily_rates` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: List the per-day price and stay restrictions of one organization-owned rate plan over a date range of at most 90 days. Guest, payment, channel, credential, and arbitrary metadata are excluded.
  - after: Use this when someone asks what a rate costs on specific nights, or about minimum stays, stop-sell or closed-to-arrival dates. Returns the stored per-day price and restrictions of one rate plan over up to 90 days; days without a row use the plan's base price. Not for whether rooms are free.
- 2026-09-28 `list_rate_plans` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: List a bounded page of rate-plan pricing configuration for one organization-owned hotel. Channel-manager mappings, integration metadata, and credentials are excluded.
  - after: Use this when someone asks what rate plans a hotel sells, such as room-only or breakfast-included rates, and their base prices. Returns each plan's title, room type, base price in minor currency units, meal plan, per-room or per-person pricing and default flag, 20 per page by default. Not for prices on specific dates.
- 2026-09-28 `list_rooms` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: List a bounded page of physical room status metadata in the authenticated organization. Reservation, occupant, guest, access-control, and channel data are excluded.
  - after: Use this when someone asks which rooms are clean, dirty or inspected, or which are out of order or out of service. Returns each physical room's name or number, room type and hotel with its room and housekeeping status, 20 per page by default (no guest or occupant data). Not for which rooms are free on given dates.
- 2026-09-28 `get_room_type` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: Get bounded inventory metadata for one organization-owned room type. Free-text descriptions, facilities, photos, channel mappings, integrations, credentials, and arbitrary metadata are never returned.
  - after: Use this when someone asks about one room type, such as its name or how many guests it sleeps. Returns the room type's name, hotel and maximum guests, or not-found. Not for its prices or free dates.
- 2026-09-28 `list_room_types` changed (description, inputSchema, outputSchema) **meaning changed**
  - before: List a bounded page of room-type inventory metadata in the authenticated organization. Photos, public descriptions, rate-plan internals, channel mappings, and credentials are excluded.
  - after: Use this when someone asks what kinds of rooms a hotel offers or how many guests each room type sleeps. Returns each room type's id, hotel, name and maximum guests, sorted by name, 20 per page by default. Not for whether a room type is free on given dates.
- 2026-09-28 `get_hotel_schedule_summary` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: Count tenant-owned reservations and active stays by UTC day for one hotel over at most 31 days. Returns aggregate operational counts only—never reservation or allocation identifiers, individual stay records, guest data, room assignments, notes, documents, payments, access data, channel references, or credentials.
  - after: Use this when someone asks how busy the hotel is, or how many arrivals, departures or in-house stays fall on each day. Returns daily counts of confirmed, checked-in and checked-out stays plus reservation totals by status, for 7 days from today by default and at most 31 days; counting stops at 500. Not for looking up a guest or reservation.
- 2026-09-28 `get_hotel_availability` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: Review bounded, non-person-linked room-type availability and prices for one tenant-owned hotel and a stay of at most 30 nights. Amounts are minor currency units. Guest records, reservations, room assignments, access data, notes, payments, channel references, photos, free-text descriptions, and credentials are excluded.
  - after: Use this when someone asks if rooms are free for certain dates or what a stay would cost. Returns the room types and rate plans with a free room every night for the party, with rooms left and nightly and total prices in minor currency units. Stays of 1–30 nights, check-in within 365 days. Not for making a booking.
- 2026-09-28 `get_hotel` changed (title, description, inputSchema, outputSchema, annotations) **meaning changed**
  - before: Get safe operational metadata for one organization-owned hotel. Contact details, addresses, integrations, credentials, payment configuration, reminders, and guest data are never returned.
  - after: Use this when someone asks about one hotel's setup, such as its default check-in and check-out times, currency, country or timezone. Returns the hotel's name, currency, language, timezone, country code and default check-in and check-out times, or not-found. Not for room availability or prices.

Full history: https://api.protogrid.dev/v1/servers/com.hotelumo%2Fhotelumo/changes

## Remotes

- https://mcp.hotelumo.com/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (11)

- `get_hotel`: Use this when someone asks about one hotel's setup, such as its default check-in and check-out times, currency, country or timezone. Returns the hotel's name, currency, language, timezone, country code and default check-in and check-out times, or not-found. Not for room availability or prices.
- `get_hotel_availability`: Use this when someone asks if rooms are free for certain dates or what a stay would cost. Returns the room types and rate plans with a free room every night for the party, with rooms left and nightly and total prices in minor currency units. Stays of 1–30 nights, check-in within 365 days. Not for making a booking.
- `get_hotel_schedule_summary`: Use this when someone asks how busy the hotel is, or how many arrivals, departures or in-house stays fall on each day. Returns daily counts of confirmed, checked-in and checked-out stays plus reservation totals by status, for 7 days from today by default and at most 31 days; counting stops at 500. Not for looking up a guest or reservation.
- `get_room_type`: Use this when someone asks about one room type, such as its name or how many guests it sleeps. Returns the room type's name, hotel and maximum guests, or not-found. Not for its prices or free dates.
- `list_daily_rates`: Use this when someone asks what a rate costs on specific nights, or about minimum stays, stop-sell or closed-to-arrival dates. Returns the stored per-day price and restrictions of one rate plan over up to 90 days; days without a row use the plan's base price. Not for whether rooms are free.
- `list_extras`: Use this when someone asks what extras a hotel sells, such as breakfast, parking, spa, transfers or fees, and what they cost. Returns each active extra's name, price in minor currency units, currency, category and taxable flag, 20 per page by default. Not for what a guest bought or was charged.
- `list_hotels`: Use this when someone asks which hotels or properties they manage in Hotelumo, or a hotel's id is needed. Returns each hotel's id, name, currency, language and timezone, 20 per page by default (no addresses or guest data). Not for room availability.
- `list_rate_plans`: Use this when someone asks what rate plans a hotel sells, such as room-only or breakfast-included rates, and their base prices. Returns each plan's title, room type, base price in minor currency units, meal plan, per-room or per-person pricing and default flag, 20 per page by default. Not for prices on specific dates.
- `list_rooms`: Use this when someone asks which rooms are clean, dirty or inspected, or which are out of order or out of service. Returns each physical room's name or number, room type and hotel with its room and housekeeping status, 20 per page by default (no guest or occupant data). Not for which rooms are free on given dates.
- `list_room_types`: Use this when someone asks what kinds of rooms a hotel offers or how many guests each room type sleeps. Returns each room type's id, hotel, name and maximum guests, sorted by name, 20 per page by default. Not for whether a room type is free on given dates.
- `show_hotel_overview`: Use this when someone wants a quick overview or dashboard of one hotel's operations. Returns an overview card with the hotel's details, reservation status counts for the next 7 days, and room, room-type, room-status and housekeeping counts from bounded samples (no guest, stay or payment data). Not for a single reservation.
