Tool tree
web-mcp-two.vercel.app exposes WebMCP tools to AI agents.
Implementation
gradeNot graded
gradeNot graded
list_bookingsAnswer
여행 예약 목록을 조회한다. status 로 필터링할 수 있다. 어떤 예약을 처리할지 고르기 전에 먼저 호출하라.
View tool JSON
{
"name": "list_bookings",
"kind": "answer",
"impl": "imperative",
"description": "여행 예약 목록을 조회한다. status 로 필터링할 수 있다. 어떤 예약을 처리할지 고르기 전에 먼저 호출하라.",
"inputSchema": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"requested",
"confirmed",
"ticketed",
"completed"
],
"description": "이 상태의 예약만 반환한다. 생략하면 전체."
},
"limit": {
"type": "number",
"description": "최대 개수 (기본 20)"
}
}
}
}get_bookingAnswer
예약 하나의 상세 정보를 조회한다.
View tool JSON
{
"name": "get_booking",
"kind": "answer",
"impl": "imperative",
"description": "예약 하나의 상세 정보를 조회한다.",
"inputSchema": {
"type": "object",
"properties": {
"bookingId": {
"type": "string",
"description": "예: BKG-2002"
}
},
"required": [
"bookingId"
]
}
}check_availabilityAnswer
객실 상품의 잔여 현황을 조회한다. roomCode 를 주면 해당 상품만, 생략하면 전체를 반환한다. total 은 확보한 총 객실 수, assigned 는 이미 다른 예약에 배정된 수이며 실제로 판매 가능한 수량은 available 이다.
View tool JSON
{
"name": "check_availability",
"kind": "answer",
"impl": "imperative",
"description": "객실 상품의 잔여 현황을 조회한다. roomCode 를 주면 해당 상품만, 생략하면 전체를 반환한다. total 은 확보한 총 객실 수, assigned 는 이미 다른 예약에 배정된 수이며 실제로 판매 가능한 수량은 available 이다.",
"inputSchema": {
"type": "object",
"properties": {
"roomCode": {
"type": "string",
"description": "예: JEJU-OCEAN"
}
}
}
}assign_roomsSensitive Action
예약에 객실을 배정하고 상태를 confirmed 로 바꾼다. 잔여 객실이 모자라면 아무것도 바꾸지 않고 부족분을 보고한다.
View tool JSON
{
"name": "assign_rooms",
"kind": "transact",
"impl": "imperative",
"description": "예약에 객실을 배정하고 상태를 confirmed 로 바꾼다. 잔여 객실이 모자라면 아무것도 바꾸지 않고 부족분을 보고한다.",
"inputSchema": {
"type": "object",
"properties": {
"bookingId": {
"type": "string"
}
},
"required": [
"bookingId"
]
}
}open_room_blockAction
호텔에서 지정한 roomCode의 판매 블록을 추가 확보해 총 객실 수(total)를 늘린다. 잔여가 모자라 배정이 막혔을 때 부족한 수량만 요청한다. 다른 도시나 다른 객실 코드로 대체하지 않는다.
View tool JSON
{
"name": "open_room_block",
"kind": "act",
"impl": "imperative",
"description": "호텔에서 지정한 roomCode의 판매 블록을 추가 확보해 총 객실 수(total)를 늘린다. 잔여가 모자라 배정이 막혔을 때 부족한 수량만 요청한다. 다른 도시나 다른 객실 코드로 대체하지 않는다.",
"inputSchema": {
"type": "object",
"properties": {
"roomCode": {
"type": "string"
},
"qty": {
"type": "number",
"minimum": 1,
"description": "추가 확보할 객실 수 (1 이상)"
}
},
"required": [
"roomCode",
"qty"
]
}
}advance_booking_statusAnswer
예약 상태를 다음 단계로 진행시킨다. 흐름: requested(요청 접수) → confirmed(객실 확정) → ticketed(바우처 발급) → completed(투숙 완료)
View tool JSON
{
"name": "advance_booking_status",
"kind": "answer",
"impl": "imperative",
"description": "예약 상태를 다음 단계로 진행시킨다. 흐름: requested(요청 접수) → confirmed(객실 확정) → ticketed(바우처 발급) → completed(투숙 완료)",
"inputSchema": {
"type": "object",
"properties": {
"bookingId": {
"type": "string"
}
},
"required": [
"bookingId"
]
}
}cancel_bookingSensitive Action
예약을 취소하고 결제 금액을 환불 처리한다. 되돌릴 수 없는 작업이며 사람 승인이 필요하다. 승인 UI가 화면에 뜨고, 사용자가 누를 때까지 이 도구는 대기한다.
View tool JSON
{
"name": "cancel_booking",
"kind": "transact",
"impl": "imperative",
"description": "예약을 취소하고 결제 금액을 환불 처리한다. 되돌릴 수 없는 작업이며 사람 승인이 필요하다. 승인 UI가 화면에 뜨고, 사용자가 누를 때까지 이 도구는 대기한다.",
"inputSchema": {
"type": "object",
"properties": {
"bookingId": {
"type": "string"
},
"reason": {
"type": "string",
"description": "취소 사유"
}
},
"required": [
"bookingId",
"reason"
]
}
}create_support_ticket_via_formSensitive Action
문의 티켓 폼을 채워 제출한다. 선언형 <form toolname="create_support_ticket"> 을 브라우저가 도구로 합성해 호출할 때와 동일한 경로를 탄다.
View tool JSON
{
"name": "create_support_ticket_via_form",
"kind": "transact",
"impl": "imperative",
"description": "문의 티켓 폼을 채워 제출한다. 선언형 <form toolname=\"create_support_ticket\"> 을 브라우저가 도구로 합성해 호출할 때와 동일한 경로를 탄다.",
"inputSchema": {
"type": "object",
"properties": {
"bookingId": {
"type": "string"
},
"body": {
"type": "string"
}
},
"required": [
"bookingId",
"body"
]
}
}create_support_ticketAction
고객 문의 티켓을 생성한다. 예약에 대한 투숙객 문의를 접수할 때 사용한다.
View tool JSON
{
"name": "create_support_ticket",
"kind": "act",
"impl": "declarative",
"description": "고객 문의 티켓을 생성한다. 예약에 대한 투숙객 문의를 접수할 때 사용한다.",
"inputSchema": {
"type": "object",
"properties": {
"bookingId": {
"type": "string"
},
"body": {
"type": "string"
}
},
"required": [
"bookingId",
"body"
]
}
}