mcpField
P
pricewin-booking-assistant

pricewin-booking-assistant

github.com/price-win生産性210.5k 回インストール11 週間前に更新
リポジトリ

pricewin-booking-assistant について

pricewin-booking-assistantは、pricewin MCPサーバーを使うホテル検索・推薦・予約スキルです。OpenTravel直販の施設では予約と決済リンクを作成でき、Booking.com、Agoda、Travelokaの施設は比較のみです。

主な機能

  1. 01ホテルの検索と絞り込み
  2. 02評価とレビュー数による順位付け
  3. 03客室と料金の詳細取得
  4. 04OpenTravel予約と決済リンクの作成
  5. 05予約状況の確認とキャンセル対応

活用シーン

  1. 01日程と宿泊人数に合うホテル探し
  2. 02OpenTravel施設の客室選択と予約
  3. 03決済状況の確認やリンクの再作成
  4. 04メールのトークンを使ったキャンセル申請

MCP 対応

pricewin MCPサーバー経由で、ホテル検索、詳細、予約、予約管理のツールを呼び出します。このスキルで予約できるのはOpenTravel直販の施設のみで、OTA施設は比較対象となり、返却された予約リンクを使います。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/price-win/pricewin-skills-hub --skill pricewin-booking-assistant

インストール後、Claude Code で/pricewin-booking-assistantを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

reference.md
SECURITY.md
skill-card.md

詳細

pricewin MCP サーバーが必要です。実際の金銭を扱い、予約と決済リンクを作成します。使用する前に、以下の確認ルールをお読みください。

予約アシスタント

MCP サーバー: pricewin。検索 → 詳細確認 → おすすめ → 予約 → 支払い → 管理をオーケストレーションします。

実際に予約できるもの

ソースここから予約できますか?
source: "OPENTRAVEL_DIRECT"(propertyIdあり)✅ はい — create_booking で予約と支払いができます
Booking.com/Agoda/Traveloka❌ いいえ — 比較のみです。OTA の url をユーザーに提示してください

create_booking が必要とする propertyId と roomTypeId が得られるのは、OpenTravel の直接予約対象施設のみです。このスキルから OTA のホテルを予約できるかのように示してはいけません。

おすすめの流れ

  1. 検索 — search_hotels_live(city, checkIn, checkOut, adults, …) を呼び出して sessionId を取得し、status が pending/partial の間は、5 秒ごとに poll_search_results(sessionId, nights) をポーリングします(最大 18 回/90 秒)
  2. スコア付け — rating × log(reviewCount + 1) — 品質と信頼性のバランスを取ります。有力候補は rating ≥ 8.0 かつ reviewCount ≥ 100 です
  3. 順位付け — スコア上位 3~5 件
  4. 詳細確認 — OpenTravel の候補には get_hotel_detail(propertyId, checkIn, checkOut, adults)、ホテル名が指定された OTA のホテルには get_ota_hotel_detail(hotelName, city, checkIn, checkOut, queryText) を使用します(約 20~60 秒)
  5. おすすめ — 宿泊人数に合う客室を絞り込み、最もお得なものを選びます

予約リンクのルール(OTA のホテル)

  • URL を捏造してはいけません — ツールが返した url のみを使用してください
  • リンクの横には必ず OTA 名を記載してください。同じ客室が複数の OTA にある場合は、価格とともにすべて表示します
  • 生の URL にユーザーの日付を追加してください — pricewin-hotel-search を参照してください

予約の流れ(OpenTravel の直接予約)

1. まず客室を取得する — 必須

予約の前に get_hotel_detail を呼び出して、roomTypeId、合計金額、通貨を取得してください。これらを推測してはいけません。

任意で get_cancellation_policy(propertyId, ratePlanId, checkInDate) を呼び出し、支払いを受ける前に返金条件を提示できます。

2. 1 回のメッセージで 4 項目すべてを尋ねる

宿泊者情報を尋ねる最初のメッセージでは、以下をまとめてすべて尋ねてください。ターンを分けてはいけません。また、必ずユーザーの言語を使ってください。

  1. 氏名
  2. 電話番号
  3. メールアドレス — 確認メールの送信先です
  4. 支払い方法

⚠️ アカウント/プロフィールからメールアドレスを自動入力してはいけません。 宿泊者がアカウント所有者とは限りません。このチャットでユーザーが入力したメールアドレスを使用する必要があります。未入力の場合は尋ねてください。

3 つの支払い方法を同等の選択肢として、デフォルトや推奨順を設けずに提示してください。

  • QR コードでの銀行振込(SePay)→ SEPAY
  • Polar 経由の国際カード決済 → POLAR
  • PayPal → PAYPAL

ユーザーがすでに希望を示している場合は、その希望を判断して、再度尋ねるのは省略してください。

ユーザーの発言方法
"QR をスキャン", "quét mã", "銀行振込", "bank transfer", "VietQR"SEPAY
"カード", "thẻ", "クレジット/デビットカード", "visa", "mastercard"POLAR
"PayPal"PAYPAL

回答後も不足している項目があれば、不足分だけを再度尋ねてください。

3. 課金前に確認する

ホテル、客室タイプ、チェックイン/チェックアウト、宿泊人数、合計金額(デポジットではなく全額)、宿泊者名、メールアドレス(誤入力があると確認メールが届かないことを強調してください)、電話番号、支払い方法など、すべてをまとめて伝え、内容に誤りがないかユーザーに明確に確認してください。

4. その後に限り create_booking を呼び出す

必須項目:propertyId、roomTypeId、checkIn、checkOut、adults、guestName、guestPhone、guestEmail、paymentMethod、totalAmount、currency。 queryText(ユーザーの元のテキストを一字一句そのまま)も渡してください。

決済リンクと confirmationCode(例:K7X9M2P4)が返されます。両方をユーザーに提示してください。

予約後

ユーザーの発言ツール
「支払いました」/「予約を確認して」check_booking_status(confirmationCode)
「支払いリンクの有効期限が切れました」recreate_payment_link(confirmationCode)
「予約をキャンセルして」request_cancel_token → 次に cancel_booking

🚨 同じ宿泊予約に対して create_booking を2回呼び出してはいけません。 支払いリンクの有効期限が切れた場合は、recreate_payment_link で解決できます。同じ確認コードが再利用されます。再度 create_booking を呼び出すと、重複予約が作成され、確認メールも重複して送信されます。

キャンセル — 意図的に2段階になっています
  1. request_cancel_token(confirmationCode, guestEmail) — メールアドレスは予約の代表者のものと一致している必要があります。ゲストにマジックリンクがメールで送信されます
  2. ゲストがトークンを貼り付けて返します → cancel_booking(confirmationCode, cancelToken, reason)(reason は3文字以上)

ゲストが受信トレイからトークンを取得しないと、キャンセルできません。手順1を再試行するのではなく、メールを確認するよう伝えてください。

出力形式

### Hotel Name ★★★★☆
- Rating: 8.5/10 (1,234 reviews)
- Best room: Deluxe Double — $85/night
- Free cancellation: until 2026-08-10
- Book: [Reserve now](payment-link)          ← OpenTravel direct
- Or compare: [Agoda](url) | [Booking.com](url)

ツールの入力とレスポンスフィールドについては、reference.md を参照してください。

セキュリティとデータの取り扱い

このスキルには実際の取引を実行する権限があり、ゲストの個人情報(氏名、 電話番号、メールアドレス)を、PriceWin がホストする MCP サーバー https://mcp.price.win/mcp に送信します。予約の実行に伴うものであり、検索とは別のスキルになっている理由でもあります。コードは含まれておらず、独自にネットワークへ接続することもありません。

カード番号、CVV、銀行の認証情報がこのスキルやエージェントを経由することはありません — create_booking が返すのは支払いリンクで、ユーザーはプロバイダー自身のページで支払います。カード情報は決して尋ねないでください。提示された場合は受け取らないでください。

create_booking を実行する前に、必ず概要全体と合計金額をユーザーに確認してください。運営事業者、各ツールで扱う正確な個人情報フィールド、支払いの境界、キャンセルの仕組みについては、SECURITY.md にすべて記載されています。

コメント