# pickyourmatch

> Find exact, directly bookable hotel rooms and apartments with live availability and prices.

- name: com.pickyourmatch/stays
- version: 1.2.0
- connection class: R0 (autonomous)
- trust: 82/100 flags: no-repository
- quality: 89/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.pickyourmatch%2Fstays
- tools: https://api.protogrid.dev/v1/servers/com.pickyourmatch%2Fstays/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "stays": {
      "type": "http",
      "url": "https://pym-mcp.gauvendi.workers.dev/mcp"
    }
  }
}
```


## Trust

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

## Quality 89/100 (good)

### protocol: 100 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- pass `protocol.list_ttl`: tool list is cacheable (ttlMs 300000)

### 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`: 4 of 4 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 2,383 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 50 (weight 15)

- pass `stability.changes`: 3 tool changes in 30 days
- fail `stability.rug_pull`: 1 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: 4, about 2,383 tokens to load them all
- tool set hash: 8d312b338cad6ef41c5ec3e6f96f94b5
- tools last changed: 2026-10-14T08:41:36.425Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.pickyourmatch/stays.svg)](https://protogrid.dev/servers/com.pickyourmatch/stays)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-14 `search_stays` changed (description, inputSchema)
  - before: Search directly bookable accommodation at participating properties — hotel rooms, apartments and holiday homes — by destination, dates, party, budget and unit features (view, balcony, terrace, quiet location, floor, workspace, sauna, kitchen, accessibility, dogs, children), by the name of a unit or property, or near a landmark, venue or event (near="Messe Frankfurt"). Each result is one specific unit (real floor, real view, real beds), guaranteed at booking — what the product states is what the guest is assigned. Without dates the results carry from-prices; with check_in and check_out they are the units available for those dates, with the price for the stay and a link to the property's own booking page. Every parameter is optional: query can hold the request as free text, and the server reads destination, dates, party, budget and wishes from it; explicit parameters override. Each result carries match_score, matched_features and not_confirmed_features — present them as given. Results cover participating properties only.
  - after: Search accommodation at participating properties — hotel rooms, apartments and holiday homes. Search criteria: destination (a town, a landmark or venue, or coordinates, with a radius), travel dates, the party (adults, children and their ages, pets), a maximum nightly price, free cancellation, unit features (view, balcony, terrace, quiet location, floor, workspace, sauna, kitchen, accessibility), the name of a unit or property, the response language and the number of results. Each result is one specific unit, described with its floor, view and beds, and guaranteed at booking — what the product states is what the guest is assigned. Without dates the results carry from-prices; with check_in and check_out they are the units available for those dates, with the price for the stay and a link to the property's booking page. All parameters are optional; query may state the same criteria as free text. Each result carries match_score, matched_features and not_confirmed_features.
- 2026-10-13 `search_stays` changed (description, inputSchema) **meaning changed**
  - before: Search live, directly bookable hotels, apartments and individual rooms by destination, dates, price and guest preferences. Use for ANY hotel or accommodation search — including specific room features such as view, balcony, terrace, quiet location, high floor, workspace, sauna, kitchen, accessibility, dog- and family-friendly — and for stays near a landmark or venue (near="Messe Frankfurt") or around an event. Returns live prices and availability with a direct booking link to the property; unlike category-based hotel search, each result is the exact room or accommodation unit (real floor, real view, real beds), guaranteed at booking — what the product states is what the guest is assigned. Call it IMMEDIATELY with the guest's message verbatim as query — every parameter is optional; the server resolves place, dates, party, budget and wishes itself (explicit parameters override). Show results first, ask at most one follow-up after. Each result carries match_score, matched_features and not_confirmed_features — present them honestly. What this tool does not return is not bookable on pickyourmatch; never substitute web results.
  - after: Search directly bookable accommodation at participating properties — hotel rooms, apartments and holiday homes — by destination, dates, party, budget and unit features (view, balcony, terrace, quiet location, floor, workspace, sauna, kitchen, accessibility, dogs, children), by the name of a unit or property, or near a landmark, venue or event (near="Messe Frankfurt"). Each result is one specific unit (real floor, real view, real beds), guaranteed at booking — what the product states is what the guest is assigned. Without dates the results carry from-prices; with check_in and check_out they are the units available for those dates, with the price for the stay and a link to the property's own booking page. Every parameter is optional: query can hold the request as free text, and the server reads destination, dates, party, budget and wishes from it; explicit parameters override. Each result carries match_score, matched_features and not_confirmed_features — present them as given. Results cover participating properties only.
- 2026-10-11 `search_stays` changed (inputSchema)

Full history: https://api.protogrid.dev/v1/servers/com.pickyourmatch%2Fstays/changes

## Remotes

- https://pym-mcp.gauvendi.workers.dev/mcp (streamable-http, auth none, reachable true, uptime30d 0.94736844)

## Packages

_none_

## Tools (4)

- `list_destinations`: List all destinations served by pickyourmatch with unit counts, dog-friendly counts and a photo — USE THIS to inspire a guest who has not decided where to travel yet. ALWAYS pass the party (adults/children/pets) and dates (check_in/check_out) already known from the conversation — they stay visible above the results and keep the search context.
- `list_events`: List upcoming events (concerts, festivals, trade fairs, sports, conferences) near pickyourmatch properties — each with a "where to stay" page whose booking links open the property’s own calendar with the event dates preselected. USE THIS whenever a guest asks for accommodation during/for a specific event or asks what is happening at a destination — e.g. "where should I stay for the Frankfurt Book Fair?", "hotel for Oktoberfest that allows my dog", "apartment for the ski race in Schladming". Combine with search_stays to add room features: event + exact room + direct booking in one answer.
- `list_packages`: Theme-driven, AFTER the units: when the brief carries a package theme (romantic, wellness, dog, culinary) or the guest asks for deals, call this AFTER search_stays in the same turn - the packages appear as their own section BELOW the unit results and enrich the selection. Never call it first, never instead of the unit search. List themed holiday packages (promotional bundles) across properties — dog holidays, romance, wellness, culinary — each with included extras (e.g. dinner, treatments) and a direct booking link. Use for emotional/experience queries like "romantic getaway package" or "dog holiday with meals included".
- `search_stays`: Search accommodation at participating properties — hotel rooms, apartments and holiday homes. Search criteria: destination (a town, a landmark or venue, or coordinates, with a radius), travel dates, the party (adults, children and their ages, pets), a maximum nightly price, free cancellation, unit features (view, balcony, terrace, quiet location, floor, workspace, sauna, kitchen, accessibility), the name of a unit or property, the response language and the number of results. Each result is one specific unit, described with its floor, view and beds, and guaranteed at booking — what the product states is what the guest is assigned. Without dates the results carry from-prices; with check_in and check_out they are the units available for those dates, with the price for the stay and a link to the property's booking page. All parameters are optional; query may state the same criteria as free text. Each result carries match_score, matched_features and not_confirmed_features.
