mcpField
Y
yelp-search

yelp-search

github.com/letta-ai生産性152164 回インストール4 週間前に更新
リポジトリ

yelp-search について

Yelp Search Integration は、Yelp で地域の店舗を検索し、詳細を取得するスクリプト群です。近隣のサービスを比較する用途に向き、電話番号検索やレビュー本文の抽出も選択できます。

主な機能

  1. 01場所とカテゴリによる店舗検索
  2. 02評価、距離、価格での並べ替えと絞り込み
  3. 03店舗情報と営業時間の取得
  4. 04電話番号から店舗を検索
  5. 05ブラウザー経由でのレビュー本文抽出

活用シーン

  1. 01価格帯を指定した近隣レストラン探し
  2. 02評価と距離によるサービス事業者の比較
  3. 03訪問前の営業時間確認
  4. 04電話番号を使った店舗の特定

インストール

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

$npx skills add https://github.com/letta-ai/skills --skill yelp-search

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

同梱ファイル

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

LICENSE
scripts/
details.py
get_reviews.py
phone_search.py
scrape_reviews.py
search.py

詳細

Yelp 検索連携

Yelp で地域のビジネスを検索し、サービスを探したり、連絡先情報を確認したり、評価をチェックしたり、営業時間を取得したりできます。

セットアップ

1. Yelp API キー(必須)
  1. https://www.yelp.com/developers にアクセスします
  2. アカウントを作成するか、サインインします
  3. 「Create App」をクリックして、フォームに入力します
  4. API キーをコピーします

.env ファイルに追加します:

YELP_API_KEY=your_api_key_here
2. レビュー用の Browser-Use(任意)

レビューのテキストを抽出する場合にのみ必要です(処理に時間がかかり、リクエストあたり約 30~60 秒かかります)。

依存関係をインストールします:

uv add browser-use playwright langchain-openai
uv run playwright install chromium

.env に追加します:

OPENAI_API_KEY=your_openai_key_here

注:レビューの抽出では、(Yelp が直接のスクレイピングをブロックするため)DuckDuckGo を検索するのに browser-use を使用します。ほとんどの用途では、API から取得できる評価と review_count で十分です。

スクリプト

すべてのスクリプトは tools/yelp-search/scripts/ にあり、uv run python で実行してください。

search.py - ビジネスを検索する(主要ツール)
uv run python tools/yelp-search/scripts/search.py "search term" --location "City, State"

オプション:

フラグ説明例
--location、-l市区町村、住所、または郵便番号"San Francisco" または "94123"
--latitude/--longitudeGPS 座標--latitude 37.78 --longitude -122.41
--limit、-n結果の件数(デフォルト:5)-n 10
--sort-by並べ替え順rating、distance、review_count、best_match
--price価格フィルター(1~4)$ と $$ のみの場合は --price 1,2
--jsonJSON をそのまま出力

例:

# Find top-rated dog groomers
uv run python tools/yelp-search/scripts/search.py "dog groomer" -l "San Francisco" --sort-by rating

# Find cheap restaurants nearby
uv run python tools/yelp-search/scripts/search.py "restaurants" -l "94123" --price 1,2 --sort-by distance

# Search near a specific address
uv run python tools/yelp-search/scripts/search.py "laundry pickup" -l "123 Main St, San Francisco"
details.py - ビジネスの営業時間と情報を取得する
uv run python tools/yelp-search/scripts/details.py "business-alias"

ビジネスのエイリアスは Yelp の URL にあります(例:the-laundry-corner-san-francisco)。

phone_search.py - 電話番号から逆引き検索する
uv run python tools/yelp-search/scripts/phone_search.py "+14155551234"
get_reviews.py - レビューのテキストを抽出する(時間がかかります)
uv run python tools/yelp-search/scripts/get_reviews.py "Business Name" -l "City" -n 3

注: browser-use を使用するため、処理に時間がかかります(約 30~60 秒)。Yelp は直接のスクレイピングをブロックするため、回避策として DuckDuckGo でキャッシュされたレビューを検索します。

scrape_reviews.py - Yelp を直接スクレイピングする(代替手段)
uv run python tools/yelp-search/scripts/scrape_reviews.py "https://www.yelp.com/biz/business-alias" -n 5

Browserbase の認証情報が必要です:

BROWSERBASE_API_KEY=your_key_here
BROWSERBASE_PROJECT_ID=your_project_id

注: Browserbase とプロキシを使用して、Yelp の CAPTCHA を回避します。get_reviews.py より信頼性が高い一方、Browserbase アカウントが必要です。

ベストプラクティス

レビューのテキストを使わずに品質を評価する

通常、API が提供する評価と review_count で十分です:

評価レビュー件数解釈
4.5+50+優秀で、信頼できるデータ
4.5+<20有望ですが、データは限定的
4.0-4.4100+良好で、実績が豊富
<4.0任意注意して利用してください
特定の要件に合ったサービスを探す

(週末の営業時間、集荷/配達など)特定の要件に合ったサービスを探す場合:

  1. --sort-by rating を指定して検索し、最適な候補を見つけます
  2. 上位候補の詳細を取得し、営業時間を確認します
  3. 必要な時間に営業しているビジネスに絞り込みます
  4. Yelp には情報がない場合もあるため、集荷や配達などの具体的なサービスについては、直接連絡して確認します
検索のヒント
  • "laundry" だけでなく、"laundry pickup" のように具体的な語句を使います
  • 正確な距離を調べるには、住所の近くを検索します:-l "123 Main St, City"
  • まず rating で並べ替え、その後、結果の distance を確認します
  • review_count を確認します。レビュー数が少ないのに評価が高い場合、信頼性が低い可能性があります

応答データ

各ビジネスの結果には、次の情報が含まれます:

  • name - ビジネス名
  • phone - 電話番号(テキスト送信や電話に使用)
  • rating - Yelp の評価(星 1~5 個)
  • review_count - レビュー件数
  • price - 価格帯($~$$$$)
  • location - 住所全体
  • hours - 曜日ごとの営業時間(詳細情報に含まれます)
  • distance - 検索場所からの距離
  • categories - ビジネスのカテゴリ
  • is_open_now - 現在の営業/休業状況

制限事項

機能ステータス備考
ビジネス検索✅ 動作します高速で信頼性があります
ビジネス詳細✅ 動作します営業時間を含みます
電話番号検索✅ 動作します逆引き検索
レビュー本文(API)❌ 有料のみエンタープライズプランが必要です
レビュー本文(スクレイピング)⚠️ 遅いDuckDuckGo 経由の browser-use による回避策
  • 無料 API プラン:1 日あたり 500 回の呼び出し
  • 1 リクエストあたりの結果は最大 50 件です
  • 一部のビジネス情報(店頭受け取り/配達)は API に含まれていません。店舗に直接お問い合わせください

コメント