Viajante について
Viajante は、ターミナル利用者、Python 開発者、AI アシスタント向けのローカル実行型の航空券・ホテル検索ツールです。旅行サイトから料金や旅程情報を取得し、不明な情報を推測で補いません。
主な機能
- 01日付と路線を指定した航空券検索
- 02ホテルと客室料金の検索
- 03航空券とホテルを合わせた旅行の比較
- 04オファーの再確認と旅程の検証
- 05任意での価格記録と追跡
活用シーン
- 01期間内の日程ごとの運賃比較
- 02キャンセル条件付きの宿泊先探し
- 03検索結果に基づく旅程案の確認
- 04保存した検索価格の変化の追跡
MCP 対応
MCP サーバーは、航空券、ホテル、旅程、空港、価格検索の 22 個のツールを提供します。stdio と Streamable HTTP に対応し、認証のない HTTP はループバックに限定して使う必要があります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ターミナル、Python、AI アシスタントで使える航空券とホテルの検索ツールです。 API キーは不要で、お使いのマシン上で動作します。
ウェブサイト · 使い方ガイド · アーキテクチャ · 変更履歴
Google Flights、Google Hotels、Booking.com の情報を直接読み取り、オプトインすると Skiplagged も利用できます。料金、旅程の詳細、リンクを返します。プロバイダーから返された情報を報告し、不明な場合はその旨を伝えます。料金を捏造することはありません。
クイックスタート
Python 3.10 以降が必要です。
pip install viajante
viajante flights JFK-LHR:2026-11-15 --fetch sweep
viajante hotels London 2026-11-15 2026-11-20 --currency GBP --source google
先の日付を使用してください。空港コードがわからない場合は、viajante airports london を実行してください。
インストールしたくない場合は、uvx --from viajante viajante airports JFK、または
npx -y -p @viajante/mcp viajante airports JFK を使用できます(どちらも uv が必要です)。
これらの検索にはプレーン HTTP を使用します。Booking.com と --fetch detail には
browser extra が必要です。
AI アシスタントを接続する
アシスタントの MCP 設定に以下を追加します(uv と Python 3.10 以降が必要です)。
{
"mcpServers": {
"viajante": {
"command": "npx",
"args": ["-y", "@viajante/mcp"]
}
}
}
Node を使わない場合は、"command": "uvx" と "args": ["--from", "viajante[mcp]", "viajante-mcp"] を使用します。これだけで、Chromium を使わずに Google Flights と Hotels を利用できます。npm エントリーにはブラウザー用の追加機能も含まれており、search_explore にはこれが必要です。
あとは、自然な言葉で尋ねてください。
11月の任意の日に出発する、BOS 発 LHR 行きの7泊の往復便を探してください。日付を比較してください。
11月12日から16日まで、東京で大人2人、無料キャンセル可能、JPY建てのホテルを探してください。
lookup_airports を除くすべてのツール結果には、status、completeness、empty_reason、retry_after、observed_at の各項目を含むエンベロープが付属します。empty_reason: provider_empty の場合に限り、プロバイダーが該当なしと判断したことを意味します。URL しか受け付けないクライアントでは、viajante-mcp --transport streamable-http を使用できます。認証機能はないため、ループバック上でのみ使用してください(詳細)。
22種類の MCP ツール
| ツール | 機能 |
|---|---|
search_flights | 片道、往復、または複数都市間のフライト |
search_dates | 指定期間内の出発日ごとの最安運賃 |
search_flex | 目標日の前後の日付を調べ、最安日のフライトを検索 |
search_explore | 出発地からの目的地と、料金付きの候補一覧 |
search_hotels | 滞在総額とキャンセル条件を含む宿泊施設 |
search_hotel_rooms | 指定したホテル1軒の Skiplagged の客室料金 |
get_hotel_details | このセッションで見つかったホテルのオファーと、任意の客室料金の見積もり |
search_trip | フライトとホテルをまとめて検索し、条件が合う場合は合計金額を計算 |
search_split_tickets | 別々に発券する旅程(乗り継ぎは保護されません。オプトインが必要) |
search_hidden_city | Skiplagged の隠れ都市運賃(オプトインが必要) |
recheck_offer | 以前のオファーを再確認する最新の検索を1回実行 |
validate_itinerary | 提案された旅程を検索結果の根拠と照合 |
compare_awards | 指定された特典航空券の1ポイントあたりのセント換算 |
lookup_transfers | ポイント移行先パートナーの一覧 |
lookup_airports | オフラインで空港コードと都市圏コードを検索 |
plan_stay_blocks | 同じ人が連泊する期間をまとめる |
split_stay_costs | 宿泊した人ごとに滞在費を分割 |
verify_answer | 検索結果にない金額、コード、日付、リンクを検出 |
price_history | このマシンがクエリに対して記録した料金(オプトインが必要) |
watch_price | 保存した検索を再実行し、変化を報告 |
get_runtime_info | インストール済みバージョンをオフラインで取得 |
get_guide | 詳細な運用ガイド |
コマンドライン
オプションを確認するには、viajante <command> --help を実行します。JSON レポートを書き出すには、--save FILE を追加します。
| コマンド | 用途 |
|---|---|
flights | 指定した経路と日付(N を設定すると、--nearby-days で前後 N 日を比較。--split-tickets はオプトインが必要) |
dates | 最大31日間の期間で最安となる出発日 |
flex | 目標日の前後数日 |
explore | 出発空港からの目的地 |
hotels、hotel-rooms | Google Hotels、Booking.com、または Skiplagged |
trip | 1回のリクエストでフライトとホテル滞在を検索 |
recheck-offer | 保存したオファーを最新の検索結果と照合して再確認 |
airports | 空港コードを検索 |
hidden-city、awards、points | Skiplagged の運賃、特典の価値、ポイント移行先パートナー |
history、watch | 記録済みの料金と保存した検索の再実行(オプトインが必要) |
feedback | 内容を事前入力した GitHub Issue を開く(viajante 自体から情報が送信されることはありません) |
viajante dates BOS-LHR --from 2026-11-01 --to 2026-11-30 --nights 7
Python
from viajante import get_flights
report = get_flights("JFK-LHR:2026-11-15", fetch="sweep", top=5)
for result in report.queries:
if result.status == "ok":
for offer in result.offers:
print(offer.price, report.currency, offer.airline, offer.duration)
else:
print(result.error)
FlightQuery、HotelQuery、および search_* 関数もエクスポートされています。Python の使用例を参照してください。
オプションのブラウザーサポート
pip install 'viajante[browser]'
playwright install chromium
uvx を使う場合は、--from に viajante[mcp,browser] を指定し、同じ環境から Chromium をインストールしてください。
知っておくとよいこと
- 通貨。
--currencyから取得するか、名前付きの出発空港がある国の通貨を使用します。ホテルでは通貨が必須です。Viajante は通貨を換算しません。 - 手荷物。
--carry-onを指定すると、Google に機内持ち込み手荷物 1 個分の料金を照会します。預け入れ手荷物(--bags)は、どの交通機関でも確認できないため、受け付けません。--baggage-bufferはランキングにのみ影響し、見積もり料金ではありません。 - ホテル。 料金は滞在全体の金額です。オプトアウトしない限り、無料キャンセルが必須です。Google の評価は 0~5、Booking.com の評価は 0~10 です。
- おすすめ。 フライトの検索結果に、短い
recommendationブロックが含まれる場合があります。これはオファーの一覧に追加されるもので、一覧に置き換わることはありません。 - 料金水準。 フライトの検索結果には、取得済みの検索結果ページにある Google 独自の料金水準(
low、typical、high)が含まれる場合があります。これは、その料金が通常の範囲と比べてどうかを示す Google のラベルです。--price-historyを指定すると、ページの料金履歴が追加されます。追加のリクエストはありません。 - 不明な情報は不明のままです。 欠落しているフィールドは省略するか、不明として示します。
旅行サイトはページを変更したり、リクエストをブロックしたり、いつでも料金を更新したりします。予約する前に、最終的な運賃、手荷物、ホテルの合計金額、キャンセル条件を提供元に確認してください。
貢献
バグ報告や目的を絞ったプルリクエストを歓迎します。CONTRIBUTING.mdをご覧ください。
ライセンス
MIT。Google、Booking.com、または航空会社とは無関係の独立したプロジェクトです。これらのサービスの利用には、それぞれの規約が適用されます。 Google、 Booking.com。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。