ユースケース

Google マップで自社店舗の顧客レビューを分析する

自社店舗の Google マップのレビューを JSON で収集。本文、星の数、日付、オーナーの返信を新しい順に取得し、顧客の不満の中身を把握できます。

プリペイド、サブスクなしREST でも MCP でもモデル・データ・エージェントを 1 つのキーで
Google Mapslovelyjsonitems[0]"stars": 2"text": "Waited 40 minutes and…"date": "2026-10-22""owner_reply": "Sorry about that, ple…"place_id": "ChIJN1t_tDeuEmsRUsoyG…

飲食店グループ、クリニックのネットワーク、小売チェーンなどを運営していると、店舗ごとに Google マップのレビューがあり、それぞれ語る内容が違います。ある店舗では対応が遅く、別の店舗では店長の態度が悪い、といった具合です。10 店舗、50 店舗にわたるレビューを毎週人が読むのは現実的ではありません。Lovely Router がそれを収集します。プレイス ID またはリンクを送るとレビュー 1 件につき 1 つの JSON オブジェクトが返り、料金はプリペイド残高からレビュー 1 件ごとに差し引かれます。スクリプトでもダッシュボードのジョブでも AI エージェントでも、1 つの API キーで呼び出せます。

AI エージェントに任せる

このプロンプトを Claude Code、Cursor、Codex などのコーディングエージェントに貼り付けてください。ドキュメントの場所と API キーの使い方をエージェントに伝えます。

Google マップで自社店舗の顧客レビューを分析する. Use the Lovely Router data tools: each returns JSON and is billed per result.

- Docs (read first): https://lovelyrouter.com/docs/tools/find.md and https://lovelyrouter.com/docs/tools/run.md
- Plan first: POST https://lovelyrouter.com/v1/tools/suggest with `{"task": "<my task in plain words>"}` (free). It returns the tools to run in order, each with an example `input`, the `input_required` fields, an estimated cost and a ready-made `run` request. Replace the example values with my task's; if a field is unclear, read the tool with GET https://lovelyrouter.com/v1/tools/<id>. To browse instead, POST https://lovelyrouter.com/v1/tools/discover searches the catalog.
- Show me the plan and its estimated cost (`total_est_cost_usd`) before running anything large.
- Run: POST https://lovelyrouter.com/v1/tools/<id>/run with `{"input": {...}, "max_results": N}`. A 200 has the finished run with `items`; a 202 means it is still running, so poll the `poll` path until `status` is `succeeded`, `failed`, `timed_out` or `stopped`.
- Only delivered results are billed. Keep max_results small on the first run, check the output, then scale up.
- If you support MCP, connect https://lovelyrouter.com/mcp instead (Streamable HTTP, same key; https://lovelyrouter.com/docs/tools/mcp.md) and use suggest_tools, get_tool and run_tool.
- Auth: read my API key from the LOVELY_API_KEY environment variable and send it as `Authorization: Bearer $LOVELY_API_KEY`. Never print or commit the key. If it is not set, ask me to create one at https://lovelyrouter.com/app/keys.
- Billing is prepaid: every call is charged to my balance, so test with a small request before running anything large.
- Every docs page is plain Markdown; the full index is https://lovelyrouter.com/llms.txt.

My task: <the inputs (links, keywords or accounts) and how many results you need>
01

仕組み

010203
  1. プレイス ID を集める

    各店舗のプレイス ID を使います。ChIJ または GhIJ で始まる 27 文字の ID、または Google マップのプレイスのリンクです。

  2. 上限を付けてツールを実行する

    それらを maxReviews と max_results と一緒に POST /v1/tools/google-maps-reviews/run に送ります。reviewsSort で、新しい順、評価の低い順、関連度の高い順のどれで取得するかを選べます。

  3. グループ化して読む

    レビューを店舗と週ごとにグループ化します。低い星の数を数えたら、不満に共通する点をモデルに要約させます。

02

1 回のリクエストでレビューを取得する

Google マップのレビューツールは、placeIds または startUrls を受け取ります。maxReviews は店舗ごとのレビュー数の上限、max_results は実行全体の上限です。

curl https://lovelyrouter.com/v1/tools/google-maps-reviews/run \
  -H "Authorization: Bearer $LOVELY_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "input": {
      "placeIds": ["ChIJN1t_tDeuEmsRUsoyG83frY4"],
      "maxReviews": 3,
      "reviewsSort": "newest"
    },
    "max_results": 3
  }'

60 秒を過ぎても実行中の場合は 202 が返ります。ポーリングの方法はツールを実行するをご覧ください。

03

各レビューに含まれる情報

フィールド群取得できるもの
Rating付けられた星の数
Contentレビューの本文
Timingレビューの日付
Responseオーナーの返信(ある場合)

language を使うと、指定した言語のレビューを取得できます。出力をモデルと組み合わせれば、同じジョブでレビューの翻訳や分類もできます。

04

レシピ

店舗別の低評価ダイジェストを毎週送る。

各店舗を reviewsSort を newest にして実行し、直近 7 日間の星 1 つか 2 つのレビューだけを残して、店長に送ります。

返信のないレビューを見つける。

オーナーの返信がないレビューを絞り込み、カスタマーケアの担当者にリストを渡します。

クレームのテーマ別に店舗を比べる。

店舗ごとに 200 件のレビューを集め、待ち時間、スタッフ、清潔さ、価格などのテーマをモデルに付けさせて、店舗を比較します。

最悪のレビューから読む。

reviewsSort を lowestRanking にして、普通のレビューを読む前に、最も怒っている顧客が何を書いたかを確認します。

競合の弱点を調べる。

ライバルのプレイス ID を lowestRanking で実行し、繰り返し出てくる不満を確かめて、その点で自社が上回れるかどうかを検討します。

普段の言葉で頼みたい場合は、MCP サーバーを接続して Claude Code や Cursor に次のように伝えます。「places.txt にある各プレイス ID の最新レビューを 100 件ずつ読み取り、星 1 つか 2 つのものにフラグを付けて、不満をテーマごとにグループ化してください。max_results は 1000 に設定してください。」

05

他のレビュー・地域ソースと組み合わせる

06

料金

料金はレビュー 1 件ごとにかかります。実行を開始すると最大費用(呼び出し料金 + レビュー 1 件あたりの単価 × max_results)が仮押さえされ、実際に返った分で精算されて、仮押さえの残りは残高に戻ります。失敗またはタイムアウトした実行は返したレビューの分だけを支払い、開始時に拒否された実行は無料です。

毎週 300 件のレビューを取得すると、週あたりレビュー 300 件分として課金されます。サブスクリプションや月額の最低利用料はなく、$5 からチャージでき、1 つの残高でツールとモデルの両方を支払えます。現在の価格は上のカードに表示されており、料金ではすべてのツールを一覧できます。

07

よくある質問

?
プレイス ID はどこで見つけられますか?+

プレイス ID は ChIJ または GhIJ で始まる 27 文字の文字列です。代わりに、Google マップのプレイスのリンクを startUrls に渡すこともできます。店舗を探すには google-maps-places が役立ちます。

何件のレビューを取得できますか?+

maxReviews は店舗ごとのレビュー数の上限で、1 回の実行では max_results により合計で最大 500 件まで返せます。それ以上は複数の実行を開始してください。

最新のレビューだけを取得できますか?+

はい。reviewsSort を newest に設定します。ほかの選択肢は mostRelevant、highestRanking、lowestRanking です。

オーナーの返信は含まれますか?+

はい。オーナーの返信がある場合は、各レビューに含まれる情報の一部として返ります。

サブスクリプションは必要ですか?+

いいえ。プリペイド残高にクレジットを追加し、実行ごとに残高から差し引かれます。失敗した実行は返した結果の分だけを支払い、自動で更新されるものは何もありません。

複数のプラットフォームでレビューを追うなら、レビューモニタリング、ツールカタログ、料金をご覧ください。

モデル・データ・エージェントを 1 つのプリペイドキーで

サブスクリプションなし。チャージして必要な分だけ使い、すべての請求をログで確認できます。