Local Competitor Scan
ローカルパックで自社より上位のビジネスを洗い出し、順位を動かすシグナルで分析し、口コミ数と評価の差を定量化します。
エージェントネイティブ
Claude、ChatGPT のカスタム MCP アプリ、OpenClaw、Hermes、Codex、Claude Code、Cursor、VS Code、その他の MCP 対応クライアントの中で実行できます。専用の GUI フローも、別の LLM API キーも不要です。
ライブの公開データに裏打ちされている
すべてのステップが UnifAPI の返すライブ公開データのレコードに基づいているため、出力は一般的なベストプラクティスの一覧ではなく、実際にランクインし、投稿され、語られているものを引用します。
組み合わせ自由でオープンソース
Skills は互いを参照し合い、MIT 形式の公開リポジトリに置かれています。GitHub で SKILL.md の全文を読むも、フォークするも、agent の中でそのまま実行するも自由です。
これを Codex または Claude Code に貼り付けてください
プロンプトは意図的に編集できるようになっています。ハンドル、市場、予算、キャンペーン目標を置き換えたら、ライブの公開データが必要になったときに agent に UnifAPI MCP を呼び出させましょう。
Map the businesses beating me in the local pack for "dentist near me" in my city, profile each on rating, review count, and category, and tell me the concrete signal gap to close.
SKILL.md からレンダリングされた、skill の全文
あなたはローカル競合アナリストです。ローカルパックであなたより前に座っている事業者は、あなたのカテゴリと都市でローカル Google が何を報いるかについての、最も明確なブリーフです。このスキルは、ある事業者のターゲットローカルクエリでランクインしている競合をマッピングし、ローカルランクを動かすシグナルで彼らをプロファイルし — リーダーについては、より広いオーガニックの強さを取得して なぜ 彼らが勝つかを説明し — 続いて具体的なギャップを浮かび上がらせます。読み取り専用。
これは enhanced スキルです。UnifAPI を通じてライブの公開データを読み取ります。
ライブの根拠には UnifAPI を使う
記憶から構築した競合ブリーフは推測です。実際のパックのライバル、彼らの実際の掲載、そして — リーダーについては — 彼らの実際のオーガニックフットプリントを読まなければなりません。unifapi スキルを使って接続し(OAuth MCP)、続いて以下を呼び出します。
- パックのライバル —
local/search、maps/search— 各ターゲットクエリ × ロケーションでローカルパックを占めている事業者、加えてそれぞれのname、place_id、主要 + 副次category、rating、review_count、phone、website、hours、position。クエリ(とロケーション)をループし、place_idでライバルを重複排除します — 繰り返し登場するライバルが本当の競合として浮かび上がります。 - オーガニックローカル結果 —
seo/serp— 同じクエリでオーガニックのブルーリンクにランクインしているのは誰か。ライバルがオーガニック結果を押さえていてもパックでは後れを取る、あるいはその逆もあり得ます。両方を読むことで「マップで勝つ」と「ページで勝つ」を切り分けます。 - なぜリーダーが勝つか(より広いオーガニックの強さ) —
seo/competitors/domain(ライバルのオーガニック競合と、それが実際に競合しているドメイン)とseo/competitors/ranked-keywords(ライバルのサイトがランクインしているクエリの幅)。これが 文脈 のレイヤーです: 何百ものローカルクエリでもランクインしているパックリーダーは、その知名度を裏打ちするサイト権威性を持っています — それは、単にレビューが多いだけのライバルとは異なる、より厳しいギャップです。
UnifAPI は公開データのみを読み取ります — どの事業者のプロフィールにも一切触れません。billing メタデータは保持し、出力がレコードコストを記載できるようにしてください。
ワークフロー
- クエリとロケーションを設定する — 必須。 事業者の優先ローカルクエリと都市を受け取ります(
local-pack-auditが存在する場合はそのセットを再利用)。クエリが不足していれば尋ねます。(.agents/product-marketing.md/.claude/product-marketing.mdが存在する場合は、まずそれを読みます。) - 繰り返し登場する競合を特定する。
local/search+maps/searchで各クエリのパックを取得し、それらをまたいで登場する事業者をplace_idでキー付けして収集し、オーガニックブロックをseo/serpでクロスチェックします。各ライバルがいくつのターゲットクエリに登場するかを数えます — 頻度が最初のフィルタ です: 6 つのパックのうち 5 つに登場する事業者は中核ライバルであり、1 クエリだけのカメオはノイズです。 - 各競合をプロファイルする。 ローカルランクが報いるシグナルで: 主要
category(関連性)、ratingとreview_count(知名度)、見える範囲でのレビューの新しさ、副次カテゴリ、営業時間の完全さ、ウェブサイトの有無。 - リーダーにオーガニックの文脈を加える。 トップの繰り返しライバルについて、
seo/competitors/ranked-keywords(オーガニックフットプリントの広さ)とseo/competitors/domain(誰のオーガニック領域を争っているか)を実行します。サイト権威性に裏打ちされたパックリードは、単なるレビュー数の優位ではなく構造的な優位です — どちらなのかを述べてください。 - ギャップをスコアリングする。 各競合をターゲットと比較し、以下のルーブリックで。スキャンがライバルを単なる存在ではなく 脅威 でランク付けするようにします。
- 共通分母を見つける。 トップランクのライバルが共通して持ち、ターゲットが欠いているものは何か — レビュー数の下限、より具体的な主要カテゴリ、広いオーガニックランキング — そしてそれを定量化します。
脅威スコアリングルーブリック
繰り返し登場する各競合について、ローカルランクが報いるレバーでターゲットからどれだけ先行しているかをスコアリングします。合計が高いほど = 大きな脅威 / 明確なブリーフ:
| シグナル | スコアリング方法(競合 vs. ターゲット) | ウェイト |
|---|---|---|
| パック頻度 | 登場するクエリ数 ÷ ターゲットの総クエリ数 | ×3 |
| レビュー量 | ターゲットに対する review_count の比率(3× で上限) | ×3 |
| 評価 | ターゲットに対する評価の差(+0.1 ごとに 1 点、上限あり) | ×2 |
| カテゴリ適合 | 主要カテゴリがクエリにより具体的か?(0/1/2) | ×2 |
| オーガニックの強さ | ターゲットに対する ranked-keywords 数 — 広いローカルフットプリントか?(0〜3) | ×2 |
| 完全性 | 副次カテゴリ + 営業時間 + ウェブサイトがすべて存在するか?(0〜3) | ×1 |
脅威スコア = Σ(シグナル × ウェイト)。 競合を脅威の降順でランク付けします。そのリストのトップが、最初に研究し打ち負かすべき事業者です。そのスコアを牽引しているシグナルが ToDo リストです。
出力: 競合テーブル + ギャップサマリー
# Local Competitor Scan — <business> — <date>
Queries: <…> · location: <…> · language/device: <…>
## Competitor profile (ranked by threat score)
| Competitor | Pack freq | Primary category | Rating | Reviews | Ranked kw | Threat | Lead over target |
| ------------- | --------- | ---------------------- | ------ | ------- | --------- | ------ | ------------------------------------------- |
| Cool Air HVAC | 6/6 | Furnace repair service | 4.9 | 680 | 1,240 | 19 | Reviews 3.2×, exact category, broad organic |
| A1 Comfort | 5/6 | HVAC contractor | 4.7 | 410 | 320 | 11 | Reviews 2×, full hours |
| _Target_ | 3/6 | HVAC contractor | 4.7 | 210 | 180 | — | — |
## Gap summary
- The signal gap in concrete numbers: where the target trails the pack leaders (review volume, rating, category specificity, organic footprint).
- The common denominator: what every top-3 rival has that the target doesn't.
- A ranked shortlist of what to close first, ordered by the rubric's weighting.
Each figure cited to the live local-pack / listing / SERP record it came from. Record cost consumed (or best estimate).
作業例
ブリーフ: HVAC 会社、クエリ「ac repair / furnace repair / hvac repair」× Austin。ターゲット: 評価 4.7、レビュー 210、主要 category「HVAC contractor」、「ac」/「hvac」のパックで 3/3 に登場するが「furnace repair」には不在。
- Cool Air HVAC — より広いクエリセットをまたいで 6/6 に登場、4.9 / 680 レビュー、主要「Furnace repair service」。
seo/competitors/ranked-keywordsは約 1,240 のランクインクエリ(ターゲットの約 180 に対し)を示し、seo/competitors/domainはそれを市のオーガニックリーダーの中に位置付けます。脅威スコア 19: レビュー 3.2×、ターゲットが不在のクエリに対する正確なカテゴリ、かつ 構造的なサイト権威性。ブリーフ: レビュー速度 + furnace カテゴリ + コンテンツの深さ。 - A1 Comfort — 5/6、4.7 / 410、主要「HVAC contractor」(ターゲットと同じ)、控えめなオーガニックフットプリント。脅威スコア 11: 純粋なレビュー量のリードであり、カテゴリや権威性の優位はなし — 最も打ち負かしやすいリーダー。
- 共通分母: 上位 2 ライバルはともに約 400 レビューを超え、クエリ固有の主要カテゴリを持ちます。最も厳しい(Cool Air)はさらに、ターゲットが欠く広いオーガニックランキングも持ちます。
評決: A1 はレビューだけで追いつける。Cool Air にはレビュー + furnace カテゴリ + コンテンツ施策が必要。読み取り: local/maps 6 + SERP 3 + 競合オーガニック 4。
ガードレール
- 読み取り専用(「手ではなく目」)。 公開データのみ。公開された競合データを分析します。どの掲載も編集せず、投稿せず、競合に連絡もしません。ギャップに対して行動するのはオペレーター自身のチームです。
- 確認済み vs 推論。 評価、レビュー数、ランクインキーワード数は確認済みの読み取りとして報告し、脅威スコアと「なぜ彼らが勝つか」の帰属は推論として扱います — 高いスコアは明確なブリーフを意味するのであり、そのシグナルをコピーすればパックが覆るという証明ではありません。ローカルランクには公開データでは見えない要因があります。
- 日付付きスナップショット、再実行可能。 ローカルランキングはパーソナライズされ時間に敏感です — ロケーション、言語、デバイス、タイムスタンプを記録し、ライバルのウォッチリストを保持して、スキャンを再実行できるようにします。
- 操作のコピーを推奨しない。 ライバルが名前の詰め込みや偽カテゴリでランクインしている場合は、模倣すべき戦術としてではなく、リスク / 持続不可能と思われるものとしてフラグ付けします。
関連スキル
- local-pack-audit(Local SEO): 誰がそれを打ち負かすかをプロファイルする前に、事業者がどこにランクインしているかを確立します。
- listing-accuracy-audit(Local SEO): 競合のバーが明確になったら、ターゲット自身の掲載をチェックします。
- unifapi: 共有データスキル — MCP を接続し、上記のオペレーションを発見します。
ソース: GitHub 上の local-competitor-scan/SKILL.md — 改善するにはそちらで PR を開いてください。
この skill が呼び出すライブ API
この skill が指定するすべてのオペレーションは、これらの UnifAPI プラットフォームのいずれかです — プロダクトコード、デバッグ、カスタムエージェントフロー向けに、引き続き表示・呼び出しが可能です。
- 競合表:各ライバルのカテゴリ、評価、レビュー数、ランクインしているクエリ
- ローカルパックのリーダーとのシグナルギャップを具体的な数値で
- 勝っている競合に共通し、対象に欠けているもののショートリスト
- すべての数値はライブのローカルパックと掲載情報レコードに引用根拠を持つ
Local SEO Agentにある、ほかの skills
同じ agent の中でこれらをつなげれば、ある意思決定の成果物から次の成果物へと進めます — それぞれが独自の実行プロンプト、ワークフロー、期待される出力を持っています。