pricewin-flight-search について
pricewin-flight-searchは、pricewin MCPサーバーを使って航空券の運賃を検索するエージェント向けスキルです。Agoda、Trip.com、Travelokaを対象とする非同期検索について、結果の取得、運賃表示、予約リンクの扱い方を定めています。
主な機能
- 013つの旅行サイトで運賃を検索
- 02非同期検索結果をポーリング
- 03IATA空港コードを必須化
- 04運賃と予約リンクの表示を規定
- 05全搭乗者の合計と1人あたりの価格を区別
活用シーン
- 01予定ルートの運賃を比較
- 02往路と復路を別々に検索
- 03予約リンク付きの運賃候補を提示
MCP 対応
https://mcp.price.win/mcpのホスト型pricewin MCPサーバーが必要です。search_flights_liveとpoll_flight_resultsを呼び出して運賃を取得します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ price-win/ pricewin-skills-hub --skill pricewin-flight-searchインストール後、Claude Code で/pricewin-flight-searchを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
install.shreference.mdSECURITY.mdskill-card.md詳細
pricewinMCP サーバーが必要です。このスキル自体はネットワーク呼び出しを行いません。
セットアップ(マシンごとに1回)
MCP サーバーが登録されていない場合、このスキルは機能しません。search_flights_live を呼び出すよう指示しますが、そのようなツールは存在しません。skills add はファイルをコピーするだけなので、次を実行してください。
bash install.sh # add --dry-run first to see what it would change
見つかったすべてのエージェント(Claude Code、Cursor、Windsurf、Gemini CLI、VS Code、Codex)に、ホスト型サーバー(https://mcp.price.win/mcp、Streamable HTTP、認証情報不要)を登録します。ファイルに変更を加える前に .bak を作成し、解析できない設定ファイルはスキップします。再実行しても変更はありません。その後、エージェントを再起動してください。
フライト検索(リアルタイム)
MCP サーバー: pricewin。ツール search_flights_live は Agoda、Trip.com、Traveloka を対象に非同期のクロールを開始し、poll_flight_results は統合されたフライトごとの最安運賃を返します。
重要:IATA コードのみ
両方の空港には、必ず3文字の IATA コードを指定してください。このサーバーには空港検索ツールがありません。都市名から自分で調べてください:Sài Gòn / TP.HCM → SGN、Hà Nội → HAN、Đà Nẵng → DAD、Bangkok → BKK(主要国際空港)、Tokyo → NRT or HND、Seoul → ICN。
都市に複数の空港があり、ユーザーがどれかを指定していない場合は、短く1つ質問してください。黙って選んではいけません。コードを捏造してはいけません。
重要:ポーリングのパターン(ホテル検索とは異なります)
search_flights_live は sessionId を返し、フライト数は0件のまま直ちに応答します。
- 出発地、目的地、出発日(YYYY-MM-DD)を指定して
search_flights_liveを呼び出します。往復の場合のみreturnDateを追加します。必要に応じてadults、cabin、language="vi"を追加します。 poll_flight_results(sessionId)を呼び出します。このツールは内部で最大約30秒間待機し、最初の運賃が取得されるとすぐに返ります。 呼び出す前にスリープしてはいけません。statusはpending|searching|completed|failedです。フライトがほとんどない、またはまったくない状態でsearchingが返った場合は、最大4回まで追加で呼び出してください。- フライトが取得できたらすぐに結果を提示します。ユーザーがさらに求める場合のみ、ポーリングを続けてください。
セッションは最後のポーリングから15分後に期限切れになります。その後は新たに検索を開始してください。古い sessionId は無効です。
フライトウィジェットで使用できるよう、
poll_flight_resultsはアプリから参照可能な状態で登録されています。ホストがこのツールをモデルに公開しない場合は、ウィジェットにポーリングさせ、運賃を捏造してはいけません。
重要:price はグループ全体の合計額(USD)です
price はすべての adults を合わせた合計額です。1人あたりの金額でも、2区間の合計額でもありません。1人あたりの金額を求めるには、自分で adults で割ってください。
currency は "USD" です。換算してはいけません。リアルタイムの為替レートを取得できなかった場合のみ "VND" にフォールバックするため、どちらかを決めつけず、currency を確認して金額に明記してください。
応答形式(必ず厳守)
各区間について、上位5~7件のフライトのみを提示してください。各フライトについて:
✈️ *<airline> <flightNumber>* ← bold via markdown
🕐 <dep.time> <origin> → <arr.time> <destination> · <Xh Ym> · <bay thẳng | N điểm dừng>
💰 $<price> tổng cho <adults> khách (~$<price/adults>/khách)
🔗 <bookingUrl>
フライトごとに改行し、箇条書き記号は付けません。最安フライトには 🏆 を付けます。 duration は分単位です。2h 10m の形式にしてください。arrival.date が departure.date と異なる場合は、日付をまたぐ到着として示してください。
往復便
outboundFlights と returnFlights は独立した片道検索2件です。別々の見出しの下に記載してください。最安の往路 + 最安の復路 として合算見積もりを示してもかまいませんが、別々の片道航空券であることを明記してください。表示されているのは往復運賃ではなく、2区間は別々に予約されます。
予約 URL — 一字一句そのまま使用
bookingUrl は最安エージェントのディープリンクで、日付と搭乗者情報がすでに設定されています。パラメーターを追加、書き換え、構築してはいけません(ホテルスキルとは異なります)。bookingUrl が https://www.price.win/ と完全に一致する場合、エージェントのディープリンクを取得できていません。クリックして予約できるリンクとして提示するのではなく、提供元のサイトで運賃を再確認する必要があると伝えてください。
提供元は URL のホスト(agoda.com、trip.com、traveloka.com)だけから判断してください。結果には明示的な提供元フィールドがないため、推測してはいけません。
役立ちそうに見えて、実際には役立たないフィールド
stopCities— 常に空です。経由地は数だけで説明してくださいdeparture.city/arrival.city— 実際の都市名ではなく、IATA コードが繰り返されますlegs— リスト結果では通常含まれません。区間の内訳を約束しないでください
ランキング
price で並べ替えます。最安値を先頭にしますが、わずかな追加料金で直行便や大幅に短い選択肢がある場合は、黙って順序を変えるのではなく、1 行でそのことを伝えてください。
セキュリティとデータの取り扱い
実行時コードも、独自のネットワーク呼び出しもありません。実行可能なものは install.sh のみで、既存のエージェント設定に 1 つの MCP エントリ(pricewin → https://mcp.price.win/mcp)を追加します。各ファイルは事前にバックアップし、解析できないファイルはスキップします。ダウンロードや実行は行いません。送信されるデータはルート検索情報(IATA コード、日付、搭乗者数、客室クラス)のみで、搭乗者名、PII、認証情報は含まれません。比較のみを行うため、このスキルで予約や支払いはできません。詳細は SECURITY.md をご覧ください。