# app.sallim/korea-stay

> Korean lodging: 84,490 stays from 4 government permit ledgers + KTO TourAPI, honest gaps

- name: app.sallim/korea-stay
- version: 0.5.13
- connection class: R0 (autonomous)
- trust: 79/100 flags: no-repository
- quality: 75/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/app.sallim%2Fkorea-stay
- tools: https://api.protogrid.dev/v1/servers/app.sallim%2Fkorea-stay/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "korea-stay": {
      "type": "http",
      "url": "https://stay.sallim.app/mcp?via=official"
    }
  }
}
```


## Trust

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

## Quality 75/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### 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 1,573 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`: 19 tool changes in 30 days
- fail `stability.rug_pull`: 4 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 1,573 tokens to load them all
- tool set hash: 7218434154f55901641c4bed22a705a2
- tools last changed: 2026-10-17T20:34:33.167Z
- badge: [![protogrid quality](https://protogrid.dev/badge/app.sallim/korea-stay.svg)](https://protogrid.dev/servers/app.sallim/korea-stay)
- 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-17 `report_issue` changed (description)
  - before: 사용자가 **답변 오류 제보나 개선 요청을 전해 달라고 했을 때만** 운영자에게 전달한다. 쓰는 때: 사용자가 "이거 틀렸으니 신고해 줘", "운영자에게 알려 줘", "이 기능도 넣어 달라고 전해 줘"처럼 제보·요청을 부탁했을 때. 보내기 전에 무엇이 전달되는지 사용자에게 알린다. kind='결함'은 틀린 답 제보, kind='질문기록'은 개선 요청이다. 쓰지 않는 때: 사용자가 요청하지 않았는데 질문을 남기려고 부르지 않는다. 답하기 전에 먼저 부르지도 않는다 — 이 도구는 답변을 대신하지 않는다. 전달 내용(인자)과 같은 사용자의 직전 호출 5건 요약이 운영자 검토용으로 저장된다 (개인정보처리방침 https://stay.sallim.app/privacy). 무인증 공개 서버라 쓰기 표면을 이 도구 하나로 묶어 시간당 상한을 건다(CLAUDE.md 규칙 2).
  - after: 사용자가 **답변 오류 제보나 개선 요청을 전해 달라고 했을 때만** 운영자에게 전달한다. 쓰는 때: 사용자가 "이거 틀렸으니 신고해 줘", "운영자에게 알려 줘", "이 기능도 넣어 달라고 전해 줘"처럼 제보·요청을 부탁했을 때. 보내기 전에 무엇이 전달되는지 사용자에게 알린다. kind='결함'은 틀린 답 제보, kind='질문기록'은 개선 요청이다. 쓰지 않는 때: 사용자가 요청하지 않았는데 질문을 남기려고 부르지 않는다. 답하기 전에 먼저 부르지도 않는다 — 이 도구는 답변을 대신하지 않는다. 전달 내용(인자)과 같은 접속 주소 단위의 30분 안 직전 호출 최대 5건 요약이 운영자 검토용으로 저장된다(공유 망 뒤에서는 다른 사용자의 호출이 섞일 수 있다 · 주소 단위를 못 가리면 싣지 않는다) (개인정보처리방침 https://stay.sallim.app/privacy). 무인증 공개 서버라 쓰기 표면을 이 도구 하나로 묶어 시간당 상한을 건다(CLAUDE.md 규칙 2).
- 2026-10-17 `stay_booking_link` changed (description) **meaning changed**
  - before: 예약 가능한 원본 페이지로 가는 링크를 만든다. 이 서버는 예약을 처리하지 않는다 — 사용자를 원본 플랫폼으로 보낸다. 링크는 숙소명·주소로 만든 **검색 링크**이며 특정 객실의 예약 페이지가 아니다(그건 재고 어댑터가 붙어야 나온다).
  - after: 원본 플랫폼(네이버·구글·관광공사)의 검색 결과로 가는 링크를 만든다. 이 서버는 예약을 처리하지 않는다 — 사용자를 원본 플랫폼으로 보낸다. 링크는 **검색 링크**이며 특정 객실·예약 페이지가 아니고 예약 가능 여부도 확인하지 않는다. 검색어는 naver·google이 숙소명+주소, tour는 숙소명만이다(주소가 안 들어가 같은 이름의 다른 숙소가 섞일 수 있다).
- 2026-10-17 `stay_detail` changed (inputSchema)
- 2026-10-17 `stay_search` changed (inputSchema)
- 2026-10-16 `stay_detail` changed (description) **meaning changed**
  - before: 숙소 하나의 상세 정보와 재고를 조회한다. 재고 실시간 재확인은 여기서만 한다. 관광공사(tourapi) 행에는 인허가 원장의 폐업 등록과 이름·주소 정확 일치로 대조한 결과가 ledger_closure로 온다 — closed_in_ledger면 원장 기준 폐업이다(폐업 등록을 못 찾은 것은 영업 중의 확증이 아니다).
  - after: 숙소 하나의 상세 정보(이름·주소·좌표·종류·원장 출처)를 조회한다. **재고는 조회하지 못한다** — 이 서버에 붙은 재고 채널이 0개라 날짜·인원을 줘도 availability는 항상 unknown이다(사유는 unavailable_reason에 실린다). 만실도 빈방 있음도 아니다. 빈방·요금은 stay_booking_link로 원본 검색 링크를 받아 직접 확인하라. 관광공사(tourapi) 행에는 인허가 원장의 폐업 등록과 이름·주소 정확 일치로 대조한 결과가 ledger_closure로 온다 — closed_in_ledger면 원장 기준 폐업이다(폐업 등록을 못 찾은 것은 영업 중의 확증이 아니다).
- 2026-10-14 `stay_search` changed (inputSchema)
- 2026-10-13 `stay_detail` changed (description) **meaning changed**
  - before: 숙소 하나의 상세 정보와 재고를 조회한다. 재고 실시간 재확인은 여기서만 한다.
  - after: 숙소 하나의 상세 정보와 재고를 조회한다. 재고 실시간 재확인은 여기서만 한다. 관광공사(tourapi) 행에는 인허가 원장의 폐업 등록과 이름·주소 정확 일치로 대조한 결과가 ledger_closure로 온다 — closed_in_ledger면 원장 기준 폐업이다(폐업 등록을 못 찾은 것은 영업 중의 확증이 아니다).
- 2026-10-12 `stay_booking_link` changed (inputSchema)
- 2026-10-12 `stay_detail` changed (inputSchema)
- 2026-10-12 `stay_search` changed (inputSchema)

Full history: https://api.protogrid.dev/v1/servers/app.sallim%2Fkorea-stay/changes

## Remotes

- https://stay.sallim.app/mcp?via=official (streamable-http, auth none, reachable true, uptime30d 0.9652174)

## Packages

_none_

## Tools (4)

- `report_issue`: 사용자가 **답변 오류 제보나 개선 요청을 전해 달라고 했을 때만** 운영자에게 전달한다.

    쓰는 때: 사용자가 "이거 틀렸으니 신고해 줘", "운영자에게 알려 줘", "이 기능도 넣어 달라고
    전해 줘"처럼 제보·요청을 부탁했을 때. 보내기 전에 무엇이 전달되는지 사용자에게 알린다.
    kind='결함'은 틀린 답 제보, kind='질문기록'은 개선 요청이다.

    쓰지 않는 때: 사용자가 요청하지 않았는데 질문을 남기려고 부르지 않는다. 답하기 전에
    먼저 부르지도 않는다 — 이 도구는 답변을 대신하지 않는다.

    전달 내용(인자)과 같은 접속 주소 단위의 30분 안 직전 호출 최대 5건 요약이 운영자 검토용으로
    저장된다(공유 망 뒤에서는 다른 사용자의 호출이 섞일 수 있다 · 주소 단위를 못 가리면 싣지 않는다)
    (개인정보처리방침 https://stay.sallim.app/privacy). 무인증 공개 서버라 쓰기 표면을 이 도구
    하나로 묶어 시간당 상한을 건다(CLAUDE.md 규칙 2).
    
- `stay_booking_link`: 원본 플랫폼(네이버·구글·관광공사)의 검색 결과로 가는 링크를 만든다.

    이 서버는 예약을 처리하지 않는다 — 사용자를 원본 플랫폼으로 보낸다. 링크는 **검색 링크**이며
    특정 객실·예약 페이지가 아니고 예약 가능 여부도 확인하지 않는다. 검색어는 naver·google이
    숙소명+주소, tour는 숙소명만이다(주소가 안 들어가 같은 이름의 다른 숙소가 섞일 수 있다).
    
- `stay_detail`: 숙소 하나의 상세 정보(이름·주소·좌표·종류·원장 출처)를 조회한다. **재고는 조회하지 못한다** — 이 서버에 붙은 재고 채널이 0개라 날짜·인원을 줘도 availability는 항상 unknown이다(사유는 unavailable_reason에 실린다). 만실도 빈방 있음도 아니다. 빈방·요금은 stay_booking_link로 원본 검색 링크를 받아 직접 확인하라.

관광공사(tourapi) 행에는 인허가 원장의 폐업 등록과 이름·주소 정확 일치로 대조한 결과가 ledger_closure로 온다 — closed_in_ledger면 원장 기준 폐업이다(폐업 등록을 못 찾은 것은 영업 중의 확증이 아니다).
- `stay_search`: 조건에 맞는 국내 숙소를 찾는다.

    **재고를 확인하지 못한 숙소를 결과에서 지우지 않는다.** availability가 unknown이면
    빈방 여부를 모른다는 뜻이고, 만실이라는 뜻이 아니다. 사용자에게 그렇게 전달하라.
    
