# New Category Research

> 新しく参入・仕入れを検討しているカテゴリの下調べを、Ahrefs（検索需要と難易度）→ Google Trends（季節性と伸び）→ Keepa（上位商品の価格帯・評価・順位）→ TrendViewer（レビューで不満が集中している観点）の順に集めて1枚の比較表と判断メモにする。ユーザーが「新規カテゴリの市場調査をしたい」「参入すべきカテゴリを比べたい」「この商品ジャンルは需要があるか」「競合の価格帯と不満点を知りたい」「仕入れ候補の下調べ」と言ったとき、また候補カテゴリ名を複数挙げて比較を頼まれたときは、MCP名が出ていなくてもこのスキルを使うこと。

- Skill: `haldata-net/new-category-research` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add haldata-net/new-category-research`
- Raw SKILL.md: https://api.skillmd.com/api/skills/haldata-net/new-category-research/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: haldata-net (https://skillmd.com/u/haldata-net)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/haldata-net/new-category-research

---


# 新規参入カテゴリの下調べを1時間で終える

haldata.net/mcp-dir/ の組み合わせレシピ「新規参入カテゴリの下調べを1時間で終える」の実行版。
流れは **事実で絞る（需要・季節性・価格帯）→ 理由を読む（レビューの不満と強み）→ 行動に落とす（空いている訴求ポジション3つ）**。

なぜ4つ重ねるか。検索需要だけでは「大きいが勝てない」市場に入ってしまう。価格帯だけでは「安いが不満だらけ」を見落とす。レビューの不満の集中点は「既存商品が解決できていないこと」＝参入する側が名乗れる位置そのもの。4つを1枚に並べて初めて参入順が議論できる。

## 前提

| 必要なもの | 用途 | 無いとき |
|---|---|---|
| Ahrefs MCP（公式・従量課金） | 月間検索数・上位表示の難易度・検索意図 | 省略可。「需要」列を Trends の相対値だけにする |
| Google Trends MCP（HALDATA 自作。同等のものでよい） | 12か月の相対人気・ピーク月 | 省略可。季節性は Ahrefs の月次推移で代用 |
| Keepa MCP（HALDATA 自作。Keepa API を叩くもの） | Amazon 上位商品の価格・評価・レビュー数・ランキング | 省略可。価格帯は手作業と書く |
| TrendViewer MCP | 観点別の言及数・肯定率・否定率 | 進められない |

所要時間の目安：候補2〜4カテゴリで **20分以内**（TrendViewer の分析が既にあるとき。HALDATA の検証は2カテゴリで10.5分）。無ければ分析の新規作成に約2時間。
**費用に注意**：Ahrefs は返る行ごとにユニットを消費し、Keepa はトークンを消費する。候補は **最大4カテゴリ**、Ahrefs は1カテゴリ1〜2語、Keepa の商品名検索は1カテゴリ1回に抑える。ツールの正確な引数と消費量は `references/tools.md`。

## Step 0. 入力を確定する

1. 候補カテゴリ名（1〜4個）。各カテゴリに代表的な検索語を1〜2語（例：「猫 自動トイレ」）
2. 国（既定：日本 `JP`／Amazon.co.jp）
3. 自社の強み（製造・仕入れ・保証・価格など、分かれば）。判断メモの「勝てる位置」に使う

## Step 1. 事実で絞る

### 1-a. 検索需要と難易度（Ahrefs）

候補語をまとめて1回 `keywords-explorer-overview`（`country="jp"`, `keywords` はカンマ区切り, `select="keyword,volume,difficulty,cpc,traffic_potential,intents,serp_features"`）。
読み方：`volume` が需要、`difficulty` が上位表示の難しさ（0〜100。40以上は記事サイトが強い）、`intents.transactional`/`commercial` が買う気の有無、`serp_features` に `shopping` があれば商品検索の場。`cpc` は USD セント。
季節性まで取るなら `volume_monthly_history` を `select` に足し、`volume_monthly_date_from/to` で直近12か月を指定する。
`difficulty` が 0 で `volume` が数千あるときは「未算出」の可能性が高い。0 を「競争が無い」と読まず、レポートに「難易度は未算出の可能性」と書く。
上位ページの顔ぶれ（商品ページか記事か）を見たいときだけ `serp-overview` を **1語・`type="organic"`・`top_positions=10`** で呼ぶ。`type` を付けないと SERP 機能まで行に数えられ、1語で数百ユニット消費する。

### 1-b. 季節性と伸び（Google Trends）

`compare_keywords(keywords=[最大5語], timeframe="today 12-m", geo="JP")` を1回。返る系列（12か月は週次）からピーク月と直近3か月の向き（上向き／横ばい／下向き）を読む。`get_keyword_interest` は同じ系列を返すので、`compare_keywords` で足りるときは呼ばない。相対値（最大100）なので絶対量は Ahrefs と組み合わせて読む。

### 1-c. 上位商品の価格帯（Keepa）

カテゴリ語で `keepa_search(term)` を1回（Amazon の検索順で最大20件。評価・レビュー数はここでは null のことがある）→ 先頭5件の ASIN を `keepa_product(asin="A,B,C,D,E")` で1回（評価・レビュー数・価格・売れ筋ランキングはこちらで取る。現在値が返る）。
表にする：価格の最小・中央・最大、評価の平均、レビュー数の合計、売れ筋ランキングの最良値。**入数が違う商品が混ざるので、タイトルの「×N個」「N本入」から1個あたりの価格に換算して並べる**（換算できないものは「入数不明」と書く）。価格帯は「中央値±」で書き、上位商品名は伏せてよい（競合名は書かなくても判断できる）。

## Step 2. 理由を読む（TrendViewer）

カテゴリごとに `list_analyses(state="complete")` で既存の分析を探す。無ければ `submit_analysis`（`category={name, detail}`、`search_queries=[{keyword, mall}]` でカテゴリ語を楽天と Amazon の両方、`mode="manual"`）で作り、約2時間待つ（ユーザーに伝えていったん止める。枠が無いエラーは何を消すかユーザーの判断）。

`get_analysis_data(wldh_slug, include_per_sku=true, include_sub_viewpoints=false)` で観点表を取る。返りは大きく、クライアントがファイルに退避することがある。そのときは `jq` で `.viewpoints, .total_mentions, [.per_sku[] | {title, price, rating, review_count, from_search, description}]` だけ抜いて読む。
既存の分析がカテゴリ専用でない（複数カテゴリの混在、`search_queries` 無しで `from_search` が全て false 等）ときは、観点表は全体の値で読み、価格・評価は `title` にカテゴリ語を含む SKU だけで見て、その旨を注意欄に書く。

| 抜き出すもの | 条件（既定） |
|---|---|
| 不満が集中している観点 | `negative_rate` が高い順に上位3つ。`mention_count >= 30` |
| 強みの観点（既存商品が既に満たしている） | `positive_rate >= 0.80` かつ `mention_count >= 100`、上位3つ |
| 言及数合計 | `total_mentions`（レビューの厚み。1,000未満は判断材料として薄いと書く） |

`get_review_insights(dimension="motivation", group_by="viewpoint", min_count=30)` も取り、動機率が基準（`baseline_pm_rate`）の1.2倍以上の観点を「買う理由」として併記する。ただし観点名そのものが動機を表すもの（「購入のきっかけ・動機」「リピート意向」など）は除いて、具体的な性能・価格・使い勝手の観点だけを挙げる。該当が無ければ「買う理由の観点：該当なし」と書く。

## Step 3. 行動に落とす

### 3-a. 比較表（1枚）

候補カテゴリを行、列は：言及数合計／不満が最も集中する観点（否定率）／強みの観点（肯定率）／月間検索数／難易度／12か月の相対人気（ピーク月）／Amazon 上位の価格帯（中央値）／評価平均。

### 3-b. 空いている訴求ポジション（3つ）

「不満が集中している観点」のうち、上位商品の説明文（`per_sku[].description`）や強みの観点で **既に解決を名乗っていないもの** を選ぶ。1つにつき：
- 観点名と否定率・言及数
- なぜ空いているか（上位商品が触れていない／触れているが否定率が下がっていない）
- 名乗り方の方向（仕様・保証・価格のどれで担保するか）。自社の強みが分かっていればそれに寄せる

### 3-c. 判断メモ

カテゴリごとに「需要 × 競争 × 不満の集中度」で1〜2行。参入順の案を1本。
- 需要が大きく難易度も高い → 検索では戦いにくい。明確な差別化（不満観点の解決）が要る
- 需要は中程度で難易度が低く不満が1点に集中 → 最有力
- 需要が小さいがレビュー言及が多い → 既存商品の改善余地が具体的（改善型）
- 季節性が強い → 在庫と広告の時期を書く

## 出力フォーマット

```
# カテゴリ下調べレポート（{日付}）
候補：{A} / {B} / {C} / {D}　国：日本
## 1. 比較表
（3-a の表）
## 2. カテゴリ別の詳細
各カテゴリ：需要（Ahrefs）／季節性（Trends）／価格帯（Keepa：最小・中央・最大、評価、レビュー数）／レビュー観点（不満上位3・強み上位3・買う理由）
## 3. 空いている訴求ポジション（3つ）
## 4. 判断メモと参入順
## 5. 注意
データ日付・未接続のツール・消費したユニット／トークン・言及数が薄いカテゴリ・分析を新規作成した場合は完了予定
```

## やらないこと

- レビュー原文を載せない（集計値のみ）
- 上位商品のブランド名・商品名を必要以上に書かない（価格帯と評価で足りる）
- Ahrefs / Keepa をカテゴリあたり上限を超えて呼ばない（費用が読めなくなる）
- 需要ゼロを1語の結果で決めない（言い換え語を1つ足してから）

## 参照

- `references/tools.md` — Ahrefs・Trends・Keepa・TrendViewer の正確な呼び方と消費量
- `examples/` — HALDATA での実行例

