mcpField
V
viator-mcp

viator-mcp

ローカル
github.com/chrischall地図・旅行14 日前に更新

viator-mcp について

viator-mcp は Claude を Viator Partner API に接続し、ツアー、アクティビティ、旅行情報を読み取り専用で検索する MCP サーバーです。条件指定検索とフリーテキスト検索に対応し、商品の空き状況や目的地情報も取得できます。

主な機能

  1. 01条件を指定した商品の検索
  2. 02フリーテキスト検索
  3. 03商品詳細と空き状況の取得
  4. 04観光名所と目的地の閲覧
  5. 05場所と為替レートの照会

活用シーン

  1. 01条件に合うツアーの検索
  2. 02商品の詳細と空き状況の確認
  3. 03目的地の観光名所の探索
  4. 04目的地や通貨の参照情報の取得

MCP 対応

Viator Partner API の読み取り専用検索と参照データを MCP ツールとして提供します。予約エンドポイントはなく、商品情報には予約 URL が含まれます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"chrischall-viator": {
"command": "npx",
"args": [
"-y",
"@chrischall/viator-mcp"
],
"env": {
"VIATOR_API_KEY": "<VIATOR_API_KEY>",
"VIATOR_API_BASE_URL": "<VIATOR_API_BASE_URL>",
"VIATOR_LANGUAGE": "<VIATOR_LANGUAGE>",
"VIATOR_CACHE_TTL": "<VIATOR_CACHE_TTL>",
"VIATOR_STATIC_CACHE_TTL": "<VIATOR_STATIC_CACHE_TTL>"
}
}
}
}
起動コマンドnpx -y @chrischall/viator-mcp
設定が必要な環境変数
VIATOR_API_KEYシークレットViator Partner API key (exp-api-key) — free Basic Access affiliate signup at partnerresources.viator.com
VIATOR_API_BASE_URLAPI host (default production; set https://api.sandbox.viator.com/partner for a sandbox key)
VIATOR_LANGUAGEAccept-Language for response text, e.g. en-US, es, fr, de, ja (default en-US)
VIATOR_CACHE_TTLSeconds to cache identical read responses (default 60; 0 disables)
VIATOR_STATIC_CACHE_TTLSeconds to cache reference data — destinations, tags, locations, rates (default 3600; 0 disables)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@chrischall/viator-mcp2.1.10

ツール

11

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
sortenumいいえ並べ替えキー(デフォルト:DEFAULT — Viator の関連性)DEFAULT | PRICE | TRAVELER_RATING | ITINERARY_DURATION | DATE_ADDED
tagsarrayいいえ商品が一致する必要があるタグ ID(vt_list_product_tags から取得)
viewenumいいえレスポンス形式:"compact"(デフォルト)は、レスポンス内の別の場所にすでに含まれているフィールドを省略します。"full" は、このサーバーが認識するすべてのフィールドを返します。compact(デフォルト)では、各結果を商品コード、タイトル、最低価格と通貨、評価、レビュー数、所要時間、確認タイプ、フラグ、予約 URL、カバー画像に絞り込みます。Viator の形式が変更された場合は、メディアを除いた生のレスポンスにフォールバックします。"full" は Viator のペイロードをそのまま返します。compact | full
countintegerいいえページあたりの結果数(最大 50、デフォルト 10)
flagsarrayいいえ商品フラグ。例:FREE_CANCELLATION、LIKELY_TO_SELL_OUT、PRIVATE_TOUR
orderenumいいえ並べ替え方向ASCENDING | DESCENDING
startintegerいいえ返す最初の結果の 1 始まりのインデックス
currencyenumいいえリクエスト/レスポンスの価格に使用する通貨(デフォルト USD)AED | ARS | AUD | BRL | CAD | CHF | CLP | CNY | COP | DKK | EUR | FJD | GBP | HKD | IDR | ILS | INR | ISK | JPY | KRW | MXN | MYR | NOK | NZD | PEN | PHP | PLN | RUB | SEK | SGD | THB | TRY | TWD | USD | VND | ZAR
end_datestringいいえこの日付以前に催行される商品のみ(YYYY-MM-DD)
max_ratingnumberいいえ旅行者の平均評価の上限(0-5)
min_ratingnumberいいえ旅行者の平均評価の下限(0-5)
start_datestringいいえこの日付以降に催行される商品のみ(YYYY-MM-DD)
destinationstringいいえ目的地 ID(vt_list_destinations から取得)。例:パリの場合は "732"
lowest_pricenumberいいえ最低価格(選択した通貨)
highest_pricenumberいいえ最高価格(選択した通貨)
campaign_valuestringいいえアフィリエイトキャンペーンのトラッキング ID — Viator が返す productUrl/attractionUrl/destinationUrl に追加されます
max_duration_minutesintegerいいえ商品の所要時間の上限(分)
min_duration_minutesintegerいいえ商品の所要時間の下限(分)

詳細

viator-mcp

npm

Viator Partner API(v2)用のMCP サーバーです。Claude 向けにツアー、アクティビティ、体験を検索できます。構造化フィルターまたはフリーテキストでカタログを検索し、商品詳細や空き状況のスケジュールを取得したり、アトラクションや目的地を参照したりできます。すべて stdio 経由で利用できます。

AI(Claude Code)によって開発・保守されています。ご自身の判断でご利用ください。

クイックスタート

{
  "mcpServers": {
    "viator": {
      "command": "npx",
      "args": ["-y", "@chrischall/viator-mcp"],
      "env": { "VIATOR_API_KEY": "your-viator-partner-api-key" }
    }
  }
}

partnerresources.viator.com で Viator アフィリエイトに登録して、キーを取得してください。Basic Access ティアは無料です。このサーバーはこのティアを対象としており、読み取り専用の検索、コンテンツ、空き状況の確認に対応しています。予約用エンドポイントはありません(商品の結果には、アフィリエイト ID が付与された viator.com の予約用 productUrl が含まれます)。

ツール

分野ツール
商品vt_search_products、vt_get_product、vt_list_product_tags
検索vt_search_freetext
アトラクションvt_search_attractions、vt_get_attraction
空き状況vt_get_availability_schedule
参照データvt_list_destinations、vt_get_locations、vt_get_exchange_rates
ヘルスチェックvt_healthcheck — このコネクターは動作していますか? VIATOR_API_KEY が解決されたか、Viator がキーを受け入れたか、また修正すべき点があるかを報告します。他のツールが失敗した場合は、まずここを確認してください。結果が空でも、「商品がない」場合と「認証されていない」場合があります。

すべてのツールは読み取り専用です。vt_search_products と vt_search_freetext では、完全なレコードの代わりに簡潔な要約(コード、タイトル、価格、評価、予約 URL)を返す compact: true を指定できます。

環境変数

変数必須説明
VIATOR_API_KEYはいViator Partner API キー(exp-api-key として送信)
VIATOR_API_BASE_URLいいえAPI ホスト(デフォルトは本番環境です。サンドボックスキーを使用する場合は https://api.sandbox.viator.com/partner を設定してください)
VIATOR_LANGUAGEいいえレスポンスのテキストに使用する Accept-Language(デフォルトは en-US)
VIATOR_CACHE_TTLいいえ同一の読み取りをキャッシュする秒数(デフォルトは 60。0 で無効化)
VIATOR_STATIC_CACHE_TTLいいえ参照データ(目的地、タグ、場所、為替レート)をキャッシュする秒数(デフォルトは 3600)

Viator はローリング 10 秒間のウィンドウでエンドポイントごとにレート制限を設けており、429/503 の応答では Retry-After を返します。クライアントはこの値に従って(1 回)再試行し、レスポンスキャッシュによって同一の呼び出しの繰り返しが抑えられます。

開発

npm install
npm test          # vitest; no real network calls
npm run build     # tsc + esbuild bundle

このサーバーが準拠する API の仕様は、docs/VIATOR-API.md に固定されています。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。