mcpField
K
keyword-research

keyword-research

github.com/liangdabiaoマーケティング・グロース1.0k44 回インストール1 日前に更新
リポジトリ

keyword-research について

keyword-research は、Amazon の PPC とキーワード戦略向けの調査スキルです。ASINを基に商品・競合・カテゴリ・ロングテール語を収集し、8軸で分類してレポートを作成します。

主な機能

  1. 01商品・競合・カテゴリキーワードの収集
  2. 02ロングテールキーワードの拡張
  3. 038軸によるキーワード分類
  4. 04CSV、Markdown、HTMLレポートの生成
  5. 05LLM分類とルール分類への対応

活用シーン

  1. 01Amazon商品のキーワード一覧の作成
  2. 02広告用の除外語とブランド語の特定
  3. 03競合のキーワード順位の調査

MCP 対応

Sorftime MCP API の商品トラフィック語、競合キーワード、カテゴリキーワード、関連語のツールを呼び出してデータを収集します。

インストール

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

$npx skills add https://github.com/liangdabiao/amazon-sorftime-research-mcp-skill --skill keyword-research

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

同梱ファイル

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

README.md
references/
api-tools-reference.md
report-management.md
sorftime_mcp文档.txt
sorftime-mcp-api.md
scripts/
csv_generator.py
data_parser.py
generate_html_dashboard.py
generate_markdown_report.py
keyword_collector.py
regen_md_html.py
regenerate_reports.py
test_html_gen.py
test_load_classify.py
workflow.py
templates/
dashboard_template.html

詳細

キーワード調査分析スキル

クイックリファレンス

手順Sorftime API用途データ量
1product_traffic_terms商品流入キーワード50-200
2competitor_product_keywords競合商品が対策しているキーワード100-500
3category_keywordsカテゴリの主要キーワード100-500
4keyword_related_wordsロングテールキーワードの拡張1000-2000
5LLM Agent8 次元のインテリジェント分類全件

ワンクリック実行:

# 在 Claude Code 环境中运行(自动触发 LLM 分类)
python .claude/skills/keyword-research/scripts/workflow.py B07PWTJ4H1 US --claude-code-env

その他のオプション:

# 跳过分类,仅采集数据(后续可手动LLM分类)
python .claude/skills/keyword-research/scripts/workflow.py B07PWTJ4H1 US --skip-classification

# 禁用LLM分类,使用规则分类
python .claude/skills/keyword-research/scripts/workflow.py B07PWTJ4H1 US --disable-llm-classification

トリガー条件

ユーザーが以下の形式で依頼した場合、この分析フローを開始します:

  • コマンド: /keyword-research {ASIN} {サイト}
  • 例: /keyword-research B07PWTJ4H1 US
  • 自然言語: 「この商品のキーワードリストを分析して」、「B07PWTJ4H1 のキーワードを調査して」

役割設定

あなたは、10 年の経験を持つ「Amazon PPC 広告の専門家」兼「キーワード戦略アナリスト」です。Amazon A9 アルゴリズムとキーワード対策の戦略に精通しており、大量のキーワードの中から価値の高いキーワードと除外すべきキーワードを特定できます。


データ収集戦略:プラン A(ASIN に基づく詳細分析)

输入: ASIN + 站点 + (可选) 产品信息
  ↓
┌─────────────────────────────────────────────────────────────┐
│ Step 1: 基础数据采集                                         │
├─────────────────────────────────────────────────────────────┤
│ 1. product_traffic_terms      → 产品流量词 (50-200个)       │
│ 2. competitor_product_keywords → 竞品布局词 (100-500个)     │
│ 3. category_keywords           → 类目核心词 (100-500个)      │
└─────────────────────────────────────────────────────────────┘
  ↓
┌─────────────────────────────────────────────────────────────┐
│ Step 2: 长尾词扩展                                          │
├─────────────────────────────────────────────────────────────┤
│ 从基础词中选择 Top 30 核心词                                 │
│ → 对每个调用 keyword_related_words (50-100个延伸词)         │
│ → 预计获取 1000-2000 个长尾词                               │
└─────────────────────────────────────────────────────────────┘
  ↓
┌─────────────────────────────────────────────────────────────┐
│ Step 3: 数据清洗                                            │
├─────────────────────────────────────────────────────────────┤
│ 1. 去重(归一化:小写、去除特殊字符)                        │
│ 2. 过滤无效词(过短、非英文、乱码)                          │
│ 3. 合并搜索量/CPC 等指标                                    │
└─────────────────────────────────────────────────────────────┘
  ↓
最终词库: 2000+ 关键词

キーワード分類:8 次元インテリジェント分類モデル

分類の次元
次元識別子判定ルール適用戦略
否定/要注意キーワードNEGATIVE商品と無関係、または商品説明と一致しないキーワード否定キーワードとして直接追加
ブランドキーワードBRAND競合ブランド名競合対策または否定
素材キーワードMATERIAL商品の素材に関連するキーワード完全一致のキーワードターゲティング
シーンキーワードSCENARIO使用シーン/場所に関するキーワードシーン別に広告グループを分割
属性修飾キーワードATTRIBUTE商品の属性/特徴に関するキーワードロングテールの完全一致ターゲティング
機能キーワードFUNCTION商品の機能に関連するキーワード部分一致で流入を拡大
主要商品キーワードCORE商品の主要名称ビッグキーワードに出稿して掲載枠を獲得
その他OTHER未分類、スペルミス、その他の言語キーワードの追加
分類の判定例(Coat Rack の場合)
产品信息: Coat Rack Wall Mount, Wood, 5 Hooks, Entryway

否定词: freestanding, over door, floor, tree, shoe
品牌词: umbra, simplehuman, mDesign, household essentials
材质词: wood, wooden, metal, aluminum, bamboo
场景词: entryway, bathroom, mudroom, garage, bedroom
属性词: wall mount, heavy duty, rustic, vintage, expandable, 5 hook
功能词: hanging, storage, organizer, display
核心词: coat rack, hook, hanger, hat rack, towel rack
其他: coatrac (拼写错误), perchero (西语)

実行フロー

フェーズ 1:データ収集
Step 1.1:商品流入キーワードを取得
curl -s -X POST "https://mcp.sorftime.com?key={API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"product_traffic_terms","arguments":{"amzSite":"US","asin":"ASIN"}}}'

返されるデータ: 検索量、CPC などの指標を含むキーワードリスト

Step 1.2:競合商品が対策しているキーワードを取得
curl -s -X POST "https://mcp.sorftime.com?key={API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"competitor_product_keywords","arguments":{"amzSite":"US","asin":"ASIN"}}}'

返されるデータ: 各キーワードにおける競合商品のランキング位置

Step 1.3:カテゴリの主要キーワードを取得
# 首先获取产品详情以获取 NodeID
curl -s -X POST "https://mcp.sorftime.com?key={API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"product_detail","arguments":{"amzSite":"US","asin":"ASIN"}}}'

# 然后获取类目关键词
curl -s -X POST "https://mcp.sorftime.com?key={API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"category_keywords","arguments":{"amzSite":"US","nodeId":"NODE_ID"}}}'
Step 1.4:ロングテールキーワードを拡張

基本キーワードから主要なものを上位 30 件選び、それぞれに対して呼び出します:

curl -s -X POST "https://mcp.sorftime.com?key={API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":N,"method":"tools/call","params":{"name":"keyword_related_words","arguments":{"amzSite":"US","searchKeyword":"KEYWORD"}}}'

フェーズ 2:LLM によるインテリジェント分類
分類プロンプトのテンプレート
你是一位亚马逊关键词分类专家。请根据以下产品信息,将关键词列表按 8 个维度分类。

【产品信息】
产品名称: {product_name}
材质: {material}
核心属性: {features}
使用场景: {use_cases}
否定特征: {negative_features}

【分类维度】
1. NEGATIVE: 不相关的词,需直接否定
2. BRAND: 竞品品牌名称
3. MATERIAL: 材质相关词 (wood, metal, aluminum...)
4. SCENARIO: 使用场景词 (entryway, bathroom...)
5. ATTRIBUTE: 属性修饰词 (wall mount, heavy duty...)
6. FUNCTION: 功能词 (hanging, storage...)
7. CORE: 核心产品词 (coat rack, hook...)
8. OTHER: 其他(拼写错误、其他语言等)

【待分类关键词】
{keywords_json}

【输出格式】
请以 JSON 格式输出:
{
  "NEGATIVE": ["word1", "word2", ...],
  "BRAND": [...],
  ...
}
バッチ処理戦略
  • バッチサイズ: 1 バッチあたり 150 個のキーワード
  • 並列処理: 複数のバッチを並行して処理できます
  • 結果の統合: 各分類の件数を集計し、キーワードをまとめます

フェーズ 3:レポート生成
出力ファイルの構成
keyword-reports/
└── {ASIN}_{Site}_{YYYYMMDD}/
    ├── report.md                    # Markdown 分析报告
    ├── keywords.csv                 # 完整关键词词库(分类后)
    ├── negative_words.txt           # 否定词清单
    ├── brand_words.txt              # 品牌词清单
    ├── categorized_summary.json     # 分类统计
    └── dashboard.html               # HTML 可视化仪表板
keywords.csv の形式
keyword,category,search_volume,cpc,competition,application,relevance_score
coat rack,CORE,54000,1.85,high,广泛匹配,1.00
wooden coat rack,MATERIAL,12000,1.25,medium,精准匹配,0.95
freestanding coat rack,NEGATIVE,4500,0.85,low,直接否定,0.00
...

商品情報のサポート(任意)

分類精度を高めるため、ユーザーからの商品情報の提供に対応しています:

入力方法

方法 1: コマンドライン引数

python workflow.py B07PWTJ4H1 US --product-info product.json

方法 2: 対話形式で収集

请输入产品核心属性(用逗号分隔):
> Wall Mount, 5 Hooks, 16.5 inches, Heavy Duty
商品情報の JSON 形式
{
  "product_name": "Coat Rack Wall Mount",
  "material": "Wood",
  "features": ["Wall Mount", "5 Hooks", "16.5 inches", "Heavy Duty"],
  "use_cases": ["Entryway", "Bathroom", "Mudroom", "Garage"],
  "negative_features": ["Freestanding", "Over Door", "Floor"]
}

Sorftime API リファレンス

キーワード関連インターフェース
インターフェース呼び出しコストパラメーター戻り値
product_traffic_terms1asin, site商品流入キーワード
competitor_product_keywords1asin, site競合商品が対策しているキーワード
category_keywords1nodeId, siteカテゴリの主要キーワード
keyword_related_words1searchKeyword, site関連するロングテールキーワード
keyword_detail1keyword, siteキーワードの詳細
product_detail1asin, site商品の詳細
呼び出し形式
curl -s -X POST "https://mcp.sorftime.com?key={API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":N,"method":"tools/call","params":{"name":"TOOL_NAME","arguments":{"amzSite":"US","KEY":"VALUE"}}}'

対応サイト

Amazon: US, GB, DE, FR, IN, CA, JP, ES, IT, MX, AE, AU, BR, SA


注意事項

  1. API Key の設定: .mcp.json から自動的に読み込みます
  2. データの重複排除: 正規化処理(小文字化、特殊文字の削除)
  3. LLM 分類: バッチ処理で、1 バッチあたり 150 個のキーワード
  4. 出力エンコーディング: UTF-8。中国語と特殊文字に対応
  5. レポートの命名: {ASIN}_{Site}_{YYYYMMDD} 形式

トラブルシューティング

問題 1: API が「該当する商品が見つかりません」を返す

原因: ASIN が Sorftime データベースに存在しません 解決方法:

  1. product_search を使用して ASIN を検証します
  2. サイトが正しいか確認します
問題 2: 分類結果が不正確

原因: 商品情報のコンテキストが不足している、またはルールベースの分類が使用されています 解決方法:

  1. 商品情報の JSON ファイルを提供します
  2. Claude Code 環境で実行し、LLM 分類を使用します
  3. LLM 分類を手動で実行した後、結果を categorized_result.json に保存します
問題 3: ロングテールキーワードの拡張数が不足

原因: 主要キーワードの選定が不正確、または API のレート制限 解決方法:

  1. 検索量の重みを増やすように、主要キーワードの選定方法を調整します
  2. API のレート制限を回避するため、--long-tail-limit の数を減らします
  3. --skip-long-tail を使用してロングテールキーワードの拡張をスキップします
問題 4: 分類結果に「分類に失敗したか、結果が提供されていません」と表示される、またはルールベースの分類が使用されている

原因: コマンドライン環境で実行され、LLM 分類が開始されていません 解決方法:

  1. --claude-code-env パラメーターを使用して、LLM 分類モードを強制的に有効にします:
    python workflow.py B07PWTJ4H1 US --claude-code-env
    
  2. システムが分類プロンプトを出力します。プロンプトをコピーして Claude に送り、分類を実行します
  3. 分類結果を categorized_result.json として保存します
  4. workflow.py を再実行すると、分類結果が自動的に読み込まれ、レポートが再生成されます
問題 5: LLM 分類を手動で実行する方法

状況: データを収集したものの、分類が不正確 解決方法:

  1. 出力ディレクトリ内の classification_prompt.txt を確認します
  2. プロンプトを Claude に送り、分類を実行します
  3. 分類結果を categorized_result.json として保存します
  4. レポート再生成スクリプトを実行します

参考ドキュメント


LLM 分類の手動実行フロー

ルールベースの分類結果が不正確な場合は、LLM 分類を手動で実行できます:

手順 1: 分類プロンプトを確認
cat keyword-reports/{ASIN}_{Site}_{YYYYMMDD}/classification_prompt.txt
手順 2: プロンプトを Claude に送信

プロンプト全体をコピーし、Claude に送って分類を実行します

手順 3: 分類結果を保存

Claude から返された JSON を次の場所に保存します:

keyword-reports/{ASIN}_{Site}_{YYYYMMDD}/categorized_result.json
手順 4: レポートを再生成

regenerate_reports.py には、次の複数の使用方法があります:

方法 1: レポートディレクトリ内から実行(自動検出)
cd keyword-reports/{ASIN}_{Site}_{YYYYMMDD}/
python ../../.claude/skills/keyword-research/scripts/regenerate_reports.py
方法 2: ASIN とサイトを指定
python .claude/skills/keyword-research/scripts/regenerate_reports.py --asin B0FG6QG8C8 --site US
方法 3: 出力ディレクトリのフルパスを指定
python .claude/skills/keyword-research/scripts/regenerate_reports.py --dir "keyword-reports\B0FG6QG8C8_US_20260314"
方法 4: 利用可能なすべてのレポートディレクトリを一覧表示
python .claude/skills/keyword-research/scripts/regenerate_reports.py --list

バージョン更新履歴

v1.3 (2026-03-14)
  • ✅ 优化 regenerate_reports.py: 移除硬编码 ASIN
  • ✅ 支持多种使用方式:
    • 从报告目录内运行(自动检测)
    • 使用 --asis 和 --site 参数指定
    • 使用 --dir 参数指定完整目录
    • 使用 --list 列出所有可用报告
  • ✅ 改进错误提示: 更友好的错误信息和帮助文档
v1.2 (2026-03-14)
  • ✅ 修复 LLM 分类触发问题
  • ✅ 添加 --claude-code-env 参数强制启用 LLM 分类
  • ✅ 改进环境检测逻辑
  • ✅ 在 Claude Code 环境中自动触发 LLM 分类
  • ✅ 分类完成后自动使用 LLM 结果重新生成报告
v1.1 (2026-03-14)
  • ✅ 添加 Claude Code 环境检测
  • ✅ 添加 --skip-classification 选项
  • ✅ 改进规则分类:扩展 IP 品牌词识别
  • ✅ 改进规则分类:添加主题属性词
  • ✅ 更新故障排查文档
v1.0 (2026-03-13)
  • 初始版本
  • 支持 Sorftime API 数据采集
  • 支持 8 维智能分类
  • 生成 Markdown/CSV/HTML 报告

本技能版本: v1.3 | 最后更新: 2026-03-14

コメント