# com.stayker/1stay

> Hotel booking MCP server. Search, book, and manage reservations across 250K+ properties worldwide.

- name: com.stayker/1stay
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 82/100
- quality: 92/100 (strong)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.stayker%2F1stay
- tools: https://api.protogrid.dev/v1/servers/com.stayker%2F1stay/tools

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

## Connection (mcpServers)

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


## Trust

- hygiene: 100
- liveness: 100
- freshness: 45
- provenance: 75
- drivers: +repository +dns-namespace +reachable +uptime-100% -stale-216d
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 92/100 (strong)

### 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: 93 (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`: 8 of 8 tools declare readOnlyHint or destructiveHint
- warn `tools.directory_hints`: 2 of 8 tools declare all four hints; missing: search_hotels (idempotentHint); get_hotel_details (idempotentHint); lookup_booking (idempotentHint); …
- pass `tools.token_cost`: about 2,689 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: 4 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

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

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

- tools: 8, about 2,689 tokens to load them all
- tool set hash: 39d24719b4269d818dbc792c6800f6d0
- tools last changed: 2026-09-24T02:29:48.766Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.stayker/1stay.svg)](https://protogrid.dev/servers/com.stayker/1stay)
- 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-24 `cancel_booking` changed (description)
  - before: Prepare a hotel cancellation for completion on a secure 1Stay page. Verifies the guest's first name, last name, and hotel confirmation number, then returns the hotel policy classification and any cancellation deadline recorded with the reservation, plus a short-lived cancellation_url. 1Stay does not estimate a refund, credit, penalty, or hotel charge. Calling this tool never cancels the reservation. The guest must review the terms and select Cancel reservation on the secure page. Do not say the reservation was cancelled unless a later verified booking-status lookup reports status cancelled.
  - after: Prepare a hotel cancellation for completion on a secure 1Stay page. Verifies the guest's first name, last name, and hotel confirmation number, then returns the hotel policy classification and any cancellation deadline recorded with the reservation, plus a short-lived cancellation_url. 1Stay does not estimate a refund, credit, penalty, or hotel charge. Calling this tool never cancels the reservation. The guest must review the terms and select Cancel reservation on the secure page. A later verified booking-status lookup reporting status cancelled is the authoritative confirmation that the reservation was cancelled.
- 2026-09-24 `book_hotel` changed (inputSchema)
- 2026-09-24 `get_hotel_details` changed (inputSchema)
- 2026-09-24 `search_hotels` changed (inputSchema)

Full history: https://api.protogrid.dev/v1/servers/com.stayker%2F1stay/changes

## Remotes

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

## Packages

_none_

## Tools (8)

- `book_hotel`: Book exactly one hotel room. The first 1Stay release does not support multi-room searches or reservations. Returns a secure checkout URL. This tool accepts no guest identity or payment fields. Name, email, phone, and payment details are collected on the secure checkout page.

Guest pays the hotel directly. Their credit card statement shows the hotel name, not 1Stay. Hotel's own confirmation number. Loyalty points apply automatically. The displayed total includes taxes and any applicable, itemized 1Stay Booking Fee.

Requires a rate_code from get_hotel_details, valid approximately 15 minutes. Expired codes are rejected.
- `cancel_booking`: Prepare a hotel cancellation for completion on a secure 1Stay page. Verifies the guest's first name, last name, and hotel confirmation number, then returns the hotel policy classification and any cancellation deadline recorded with the reservation, plus a short-lived cancellation_url. 1Stay does not estimate a refund, credit, penalty, or hotel charge. Calling this tool never cancels the reservation. The guest must review the terms and select Cancel reservation on the secure page. A later verified booking-status lookup reporting status cancelled is the authoritative confirmation that the reservation was cancelled.
- `get_booking`: Look up a reservation exclusively by the hotel confirmation number shown in the guest's confirmation email. Internal Stayker booking IDs are never accepted or disclosed by MCP. Returns full booking details including hotel, dates, guest info, rate, and status.

Anonymous access requires a verification_token issued by lookup_booking and scoped to a single booking. Without a valid token, no booking data is returned. Developers authenticated with their own API key do not need a token; their access is scoped to their own bookings.
- `get_hotel_details`: Get rates and room details for exactly one room at a specific hotel. Returns room types, live rates, amenities, cancellation policies, and rate_codes required by book_hotel.

Guest pays the hotel directly. Displayed totals include taxes and any applicable, itemized 1Stay Booking Fee. Loyalty points eligible.

Room type notes: "Run of house" means the hotel assigns the room at check-in. "Suite" at select-service brands usually means a larger room with a sofa, not a separate bedroom.
- `lookup_booking`: Look up a reservation by verifying the guest's identity. Returns the confirmation number and booking summary in conversation.

Requires the guest's full name plus either the hotel confirmation number, or the booking email together with the last 4 digits of the card used to book. An email address alone is not enough. An optional check-in date can narrow repeat stays.
- `resend_confirmation`: Resend a hotel reservation confirmation email. Use either the confirmation number from a successful lookup_booking call, or the guest's full name and email address when they do not know their confirmation number, card last four, or check-in date. The email contains the hotel confirmation number the guest can then use with lookup_booking or cancel_booking. Recovery requests never reveal whether a reservation matched. The confirmation is sent only to the email address already on the booking record; there is no recipient override. Email changes are handled at https://stayker.com/service.
- `search_hotels`: Search hotels by location and dates for exactly one room. Returns available properties with nightly rates across major brands, boutique, and independent hotels.

The first 1Stay release supports one room per search and reservation. Guest pays the hotel directly. Hotel's own confirmation number. Loyalty points apply.
- `search_tools`: List available 1Stay hotel booking tools. An optional keyword filters by search, book, cancel, or details; absence of a keyword returns all tools.
