mcpField
P
pp-tripadvisor

pp-tripadvisor

github.com/mvanhornその他2.1k63 回インストール今日更新
リポジトリ

pp-tripadvisor について

pp-tripadvisorは、Agentが`tripadvisor-pp-cli`でTripadvisorのホテル、レストラン、観光地を検索・確認・比較するためのスキルです。順位付き検索とローカルSQLiteキャッシュに加え、施設情報、最近の口コミ、写真を扱えます。

主な機能

  1. 01名前や座標で施設を検索
  2. 02候補の順位付けと比較
  3. 03旅行者プロフィールに合う結果を選択
  4. 04評価と口コミ数の変化を追跡
  5. 05施設情報、口コミ、写真を一括取得

活用シーン

  1. 01都市で評価の高いレストランを探す
  2. 02候補のホテルを比較する
  3. 03地点周辺の高評価施設を探す
  4. 04追跡中の施設の評価低下を確認する

MCP 対応

スキルの説明には、`tripadvisor-pp-mcp` MCPサーバーのインストールとClaude Codeへの登録方法が記載されています。このサーバーはMCP経由でTripadvisor CLIの機能を提供します。

インストール

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

$npx skills add https://github.com/mvanhorn/printing-press-library --skill pp-tripadvisor

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

詳細

Tripadvisor — Printing Press CLI

前提条件:CLI をインストールする

このスキルは tripadvisor-pp-cli バイナリを使用します。**このスキルのコマンドを実行する前に、CLI がインストールされていることを必ず確認してください。**インストールされていない場合は、先にインストールします。

  1. Printing Press インストーラーを使用してインストールします。デフォルトでは、macOS/Linux では $HOME/.local/bin に、Windows では %LOCALAPPDATA%\Programs\PrintingPress\bin にバイナリがインストールされます。
    npx -y @mvanhorn/printing-press-library install tripadvisor --cli-only
    
  2. 確認します:tripadvisor-pp-cli --version
  3. このスキルを実行するエージェント/ランタイムの $PATH に、表示されたインストールディレクトリが含まれていることを確認します。

npx でのインストールに失敗した場合(Node がない、オフラインなど)は、Go による直接インストールに切り替えます(Go 1.26.6 以降が必要です)。この方法では $GOPATH/bin(デフォルトは $HOME/go/bin)にインストールされるため、代わりにそのディレクトリを $PATH に追加してください。

go install github.com/mvanhorn/printing-press-library/library/travel/tripadvisor/cmd/tripadvisor-pp-cli@latest

インストール後に --version が「command not found」と表示された場合、ランタイムから $PATH 上のバイナリディレクトリが見えていません。確認が成功するまで、スキルのコマンドを実行しないでください。

ホテル、レストラン、観光スポットを検索し、エージェントが順位付けして選べるよう、評価、レビュー件数、ランキングを事前に取得します。基本の 5 つのエンドポイントに加え、best と nearby-best は検索と順位付けを 1 回の呼び出しで行い、compare はスポットを並べて比較し、drift は前回確認してから評価が下がったかどうかを検出します。これらはすべてローカルの SQLite キャッシュを利用するため、繰り返しの照会は無料で、オフラインでも行えます。

この CLI を使用する場面

エージェントが Tripadvisor のスポットを検索し、評価、レビュー件数、ランキングで比較する必要がある場合に、この CLI を使用します。たとえば、都市内または地点周辺で最適なホテル/レストラン/観光スポットを選ぶ、特定の候補を並べて比較する、スポットの詳細、最近の旅行者レビュー、写真を取得するといった用途です。ローカルキャッシュにより、繰り返しの比較をすばやくオフラインで行えます。

使用しない場面

この CLI は、次の用途には使用しないでください。

  • ホテル、テーブル、ツアーの予約には使用しないでください。Content API は読み取り専用であり、このツールでは予約できません。
  • レビュー履歴をすべて取得する用途には使用しないでください。無料の Content API が返すのは、場所ごとに最新のレビュー最大 5 件です。
  • tripadvisor.com を直接スクレイピングする用途には使用しないでください。ボット対策が施されており、対象範囲外です。
  • レビューの感情を要約または評価する用途には使用しないでください。ユーザー生成のテキストをそのまま返し、解釈はエージェントが行います。

独自の機能

これらの機能は、この API を扱う他のツールでは利用できません。

候補を比較する
  • best — 場所の種類を検索し、上位候補の詳細を自動取得して、評価、レビュー件数、または Tripadvisor ランキングで順位付けした結果を 1 つの表で返します。

    「Y で最高の X を探す」というタスクでは、find を呼び出してから自分で 10 回 show を呼び出す代わりに、これを使用してください。

    tripadvisor-pp-cli best "Paris" --category hotels --top 5 --sort rating --agent
    
  • compare — 2~5 件の場所 ID の詳細(サブ評価と旅行タイプの内訳を含む)を取得し、構造化された比較表を 1 つ出力します。

    エージェントがすでに絞り込んだ特定の候補から選ぶ場合は、これを使用してください。

    tripadvisor-pp-cli compare 93450 258705 1641927 --agent
    
  • nearby-best — 緯度/経度をもとに周辺の場所を検索し、スキャン上限まで詳細を一括取得して、カテゴリと最低評価で絞り込み、上位 K 件を返します。

    座標から「現在地周辺で最も評価の高い<種類>」を探す場合は、これを使用してください。

    tripadvisor-pp-cli nearby-best "48.8606,2.3376" --category restaurants --min-rating 4.0 --top 5 --agent
    
  • fit — 宣言された旅行者プロフィール(家族、カップル、一人旅、ビジネス)との旅行タイプの内訳の適合度に基づいて、検索結果を順位付けします。

    実際に旅行する人に合わせて候補を調整する場合は、これを使用してください。

    tripadvisor-pp-cli fit "Orlando" --category hotels --traveler families --top 5 --agent
    
蓄積されるローカル状態
  • drift — 保存済みの場所の評価/レビュー件数のスナップショットを最新の取得結果と比較し、差分を報告します。しきい値を超える低下があれば通知します。

    追跡している場所の評価が前回の確認以降に下がったかを検出する場合は、これを使用してください。

    tripadvisor-pp-cli drift 93450 --threshold 0.2 --agent
    
エージェント向けの連携機能
  • digest — 1 件の場所 ID から、詳細、上位レビュー(ユーザー生成)、写真 URL をまとめた、エージェント向けの単一ペイロードを作成します。

    3 回に分けて取得することなく、1 つの場所の全体像が必要な場合は、これを使用してください。

    tripadvisor-pp-cli digest 93450 --reviews 3 --agent
    

コマンドリファレンス

find — 名前でホテル、レストラン、観光スポット、または地理的エリアをTripadvisorで検索します

  • tripadvisor-pp-cli find <searchQuery> — 名前で場所を検索します。show/reviews/photosに渡せるlocation_id、名前、住所を返します。

near — 緯度/経度の地点付近にあるTripadvisorの場所を検索します

  • tripadvisor-pp-cli near <latLong> — 「緯度,経度」の付近にある場所を検索します。location_id、名前、住所を返します。

photos — 場所の写真URLを一覧表示します(サムネイル/中/大/オリジナルサイズ)

  • tripadvisor-pp-cli photos <locationId> — location_idで指定した場所の写真について、サムネイル/中/大/オリジナルのURLを返します。Content APIでは最大5件です。

reviews — 場所の最近の旅行者レビューを一覧表示します(ユーザー生成コンテンツ。Content APIでは最大5件を返します)

  • tripadvisor-pp-cli reviews <locationId> — location_idで指定した場所の最近のレビューを返します。

show — 場所の詳細情報を表示します:評価、レビュー件数、ランキング、住所、営業時間、価格帯、受賞歴

  • tripadvisor-pp-cli show <locationId> — location_idで指定した場所の詳細情報を表示します。評価、num_reviews、ランキングを先頭に表示するため、エージェントが選択肢を比較できます。
適切なコマンドを見つける

実行したいことは分かっていても、どのコマンドを使えばよいか分からない場合は、CLIに直接問い合わせます。

tripadvisor-pp-cli which "<capability in your own words>"

whichは、自然言語で指定した機能に関する問い合わせを、このCLIの厳選された機能インデックスから最適なコマンドに解決します。終了コード0は1件以上一致したことを、終了コード2は確信を持てる一致がなかったことを示します。一致しなかった場合は--helpを使うか、検索内容を絞り込んでください。

レシピ

都市で評価の高いレストラン
tripadvisor-pp-cli best "Lisbon" --category restaurants --top 5 --sort rating --agent

検索を行い、上位の検索結果の詳細を自動取得して、レビュー件数とともに評価順で返します。

2つのホテルを比較する
tripadvisor-pp-cli compare 93450 258705 --agent --select name,rating,num_reviews,ranking

両方の詳細情報を取得し、選択の決め手となる項目に比較対象を絞り込みます。

座標付近でおすすめの場所
tripadvisor-pp-cli nearby-best "48.8606,2.3376" --category attractions --min-rating 4.5 --top 5 --agent

緯度/経度から付近の観光スポットを検索し、評価の高い場所をランキング形式で表示します。

この場所の評価は下がった?
tripadvisor-pp-cli drift 93450 --threshold 0.2 --agent

キャッシュされた評価のスナップショットを最新の取得結果と比較し、意味のある低下があれば通知します。

1回の呼び出しで全体像を確認
tripadvisor-pp-cli digest 93450 --reviews 3 --agent --select name,rating,reviews

詳細情報、最近のレビュー、写真を1つのペイロードにまとめ、必要な情報に絞り込みます。

認証の設定

keyクエリパラメーターとして渡す公式のTripadvisor Content APIキーを使用します(TRIPADVISOR_API_KEYを設定してください)。tripadvisor.com/developersでキーを作成します。キーが表示される前に、IP制限(パブリックIPv4アドレスを/32で指定)またはドメイン制限を追加する必要があります。ドメイン制限付きのキーでは、すべてのリクエストにRefererヘッダーも必要です。

tripadvisor-pp-cli doctorを実行して、設定を確認してください。

エージェントモード

任意のコマンドに--agentを追加します。次のオプションに展開されます:--json --compact --no-input --no-color --yes。

  • パイプ可能 — stdoutにJSON、stderrにエラーを出力します

  • フィルター可能 — --selectでフィールドを絞り込めます。ドット区切りのパスでネストされた構造をたどり、配列内も要素ごとに処理します。出力の多いAPIでコンテキストを小さく保つのに役立ちます。

    tripadvisor-pp-cli find mock-value --agent --select id,name,status
    
  • プレビュー可能 — --dry-runでリクエストを送信せずに表示します

  • オフライン対応 — 同期/検索コマンドでは、利用可能な場合にローカルのSQLiteストアを使用できます

  • 非対話型 — プロンプトは表示せず、すべての入力をフラグで指定します

  • 読み取り専用 — このCLIを、作成、更新、削除、公開、コメント、賛成票、招待、注文、送信、その他のデータを変更するリクエストに使用しないでください

レスポンスのエンベロープ

ローカルストアまたはAPIからデータを読み取るコマンドは、出力をデータの取得元を示すエンベロープでラップします。

{
  "meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
  "results": <data>
}

データには.resultsを、ライブデータかローカルデータかの確認には.meta.sourceを解析してください。人間が読める形式のN results (live)という概要は、stdoutが端末で、かつ機械処理用の形式フラグ(--json、--csv、--compact、--quiet、--plain、--select)が設定されていない場合にのみstderrへ出力されます。パイプやエージェントによる処理、および明示的に形式を指定した実行では、stdoutにJSONのみが出力されます。

エージェントからのフィードバック

あなた(またはエージェント)がこの CLI に違和感を覚えたら、記録してください。

tripadvisor-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
tripadvisor-pp-cli feedback --stdin < notes.txt
tripadvisor-pp-cli feedback list --json --limit 10

エントリーはローカルの ~/.local/share/tripadvisor-pp-cli/feedback.jsonl に保存されます。TRIPADVISOR_FEEDBACK_ENDPOINT が設定されていて、かつ --send が指定されるか、TRIPADVISOR_FEEDBACK_AUTO_SEND=true に設定されていない限り、POST されることはありません。デフォルトの動作はローカルのみです。

バグ報告ではなく、意外に感じたことを書いてください。短く、具体的に、1 行で書きます。それが積み重なっていきます。

出力の送信先

すべてのコマンドで --deliver <sink> を指定できます。出力は標準出力に加えて(または標準出力の代わりに)指定したシンクに送られるため、エージェントはコマンド結果をパイプで直接渡すことなく振り分けられます。次の 3 つのシンクに対応しています。

シンク動作
stdoutデフォルト。標準出力のみに書き込みます
file:<path>出力を <path> にアトミックに書き込みます(一時ファイル + リネーム)
webhook:<url>出力本文を URL に POST します(--compact の場合は application/json または application/x-ndjson)

不明なスキームは、対応しているスキームを示す構造化エラーとともに拒否されます。Webhook の失敗時にはゼロ以外の終了コードが返され、URL と HTTP ステータスが標準エラーに記録されます。

名前付きプロファイル

プロファイルは、呼び出しのたびに再利用するフラグ値の保存セットです。スケジュールされたエージェントが同じ設定で毎回同じコマンドを実行する場合に使います。これは HeyGen の「Beacon」パターンです。

tripadvisor-pp-cli profile save briefing --json
tripadvisor-pp-cli --profile briefing find mock-value
tripadvisor-pp-cli profile list --json
tripadvisor-pp-cli profile show briefing
tripadvisor-pp-cli profile delete briefing --yes

明示的なフラグは常にプロファイルの値より優先され、プロファイルの値はデフォルトより優先されます。agent-context は、利用可能なすべてのプロファイルを available_profiles の下に一覧表示するため、情報を調べるエージェントは実行時にそれらを検出できます。

終了コード

コード意味
0成功
2使用方法のエラー(引数が誤っています)
3リソースが見つかりません
4認証が必要です
5API エラー(上流の問題)
7レート制限中(待ってから再試行してください)
10設定エラー

引数の解析

$ARGUMENTS を解析します。

  1. 空、help、または --help → tripadvisor-pp-cli --help の出力を表示します
  2. install で始まる場合 → mcp で終わる場合は MCP のインストール、それ以外の場合は上記の「前提条件」を参照します
  3. その他すべて → 直接使用(--agent を付けて CLI コマンドを実行します)

MCP サーバーのインストール

  1. MCP サーバーをインストールします。
    go install github.com/mvanhorn/printing-press-library/library/travel/tripadvisor/cmd/tripadvisor-pp-mcp@latest
    
  2. Claude Code に登録します。
    claude mcp add tripadvisor-pp-mcp -- tripadvisor-pp-mcp
    
  3. 確認します:claude mcp list

直接使用

  1. インストール済みか確認します:which tripadvisor-pp-cli 見つからない場合は、インストールを提案します(このスキルの冒頭にある「前提条件」を参照)。
  2. ユーザーのクエリに最適なコマンドを、上記の「独自の機能」と「コマンドリファレンス」から選びます。
  3. --agent フラグを付けて実行します。
    tripadvisor-pp-cli <command> [subcommand] [args] --agent
    
  4. 曖昧な場合は、サブコマンドのヘルプを確認します:tripadvisor-pp-cli <command> --help。

コメント