mcpField
S
seo-programmatic

seo-programmatic

github.com/agricidanielマーケティング・グロース89473 回インストール2 週間前に更新
リポジトリ

seo-programmatic について

SEO担当者向けのプログラマティックSEO分析・計画スキルです。データソースやページテンプレート、品質基準を評価し、内容の薄いページやインデックス肥大化のリスクを抑えます。

主な機能

  1. 01構造化データの品質評価
  2. 02差別化されたテンプレートの計画
  3. 03URLと内部リンクのルール策定
  4. 04薄いコンテンツの品質基準設定
  5. 05canonicalとサイトマップの管理

活用シーン

  1. 01データ駆動型ランディングページの計画
  2. 02生成ページ間の独自性の確認
  3. 03価値の低いページのインデックス防止
  4. 04プログラマティックページのURLとリンク設計の監査

インストール

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

$npx skills add https://github.com/agricidaniel/codex-seo --skill seo-programmatic

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

同梱ファイルLICENSE.txt

詳細

プログラマティック SEO の分析と計画

共有データキャッシュ

ステップ 0 -- 共有データキャッシュを確認する:

情報を収集する前に、.seo-cache/ を確認し、関連する SEO スキルから再利用できるコンテキストがないか調べます。 スキーマと依存関係マップについては、../seo/references/shared-data-cache.md を参照してください。

以下のキャッシュファイルが存在する場合は確認します:

  • .seo-cache/site-meta.json:ドメイン、ビジネスタイプ、業種、クロールのコンテキスト

  • .seo-cache/audit-scores.json:過去の全体監査における優先事項

  • .seo-cache/pages/{url-slug}/page-analysis.json:URL が指定されている場合のページ単位のコンテキスト

  • 見つかった場合:明らかに有効なフィールドを解析して使用します(「[日付]の[X]をキャッシュから使用」と記録します)

  • 見つからない、破損している、または関連性がない場合:新たな根拠を使って続行します

  • ユーザーが「refresh」または「re-run」と指定した場合:キャッシュの読み取りを無視し、書き込み時に上書きします

構造化データソースから大規模に生成された SEO ページを構築し、監査します。 低品質コンテンツによるペナルティやインデックスの肥大化を防ぐため、品質ゲートを適用します。

データソースの評価

プログラマティックページの基盤となるデータを評価します:

  • CSV/JSON ファイル:行数、列の一意性、欠損値
  • API エンドポイント:レスポンス構造、データの鮮度、レート制限
  • データベースクエリ:レコード数、フィールドの完全性、更新頻度
  • データ品質チェック:
    • 各レコードには、固有のコンテンツを生成するのに十分な一意の属性が必要です
    • 重複または類似度の高いレコードを特定します(フィールドの重複率が 80% 超)
    • データの鮮度を確認します。古いデータからは古いページが生成されます

テンプレートエンジンの計画

独自性があり、価値のあるページを生成するテンプレートを設計します:

  • 変数の挿入箇所:タイトル、H1、本文セクション、メタディスクリプション、スキーマ
  • コンテンツブロック:静的(全ページ共通)と動的(ページごとに固有)
  • 条件分岐:データの有無に応じたセクションの表示/非表示
  • 補足コンテンツ:関連項目、状況に応じたヒント、ユーザー生成コンテンツ
  • テンプレートのレビューチェックリスト:
    • 各ページは、それ単独で価値のあるリソースとして読める必要があります
    • 「マッドリブ」形式のパターンは避けます(同一のテキスト内で都市名や製品名だけを置き換える形式)
    • 動的セクションは、単なるキーワードのバリエーションではなく、実質的な情報を追加する必要があります

URL パターン戦略

一般的なパターン
  • /tools/[tool-name]:ツール/製品ディレクトリページ
  • /[city]/[service]:地域+サービスのページ
  • /integrations/[platform]:インテグレーションのランディングページ
  • /glossary/[term]:定義/参考ページ
  • /templates/[template-name]:ダウンロード可能なテンプレートページ
URL のルール
  • データから生成した、小文字でハイフン区切りのスラッグを使用します
  • サイトアーキテクチャを反映した論理的な階層にします
  • スラッグの重複を避け、生成時に一意性を保証します
  • URL は 100 文字未満にします
  • 主要コンテンツの URL にクエリパラメーターを使用しません
  • 末尾のスラッシュの使用を統一します(既存サイトの形式に合わせます)

内部リンクの自動化

  • ハブ&スポークモデル:カテゴリのハブページから個別のプログラマティックページにリンクします
  • 関連項目:データ属性に基づいて、関連する 3~5 ページへ自動的にリンクします
  • パンくずリスト:URL 階層から BreadcrumbList スキーマを生成します
  • 相互リンク:属性(同じカテゴリ、同じ都市、同じ機能)を共有するプログラマティックページ同士をリンクします
  • アンカーテキスト:説明的で、バリエーションのあるアンカーテキストを使用します。完全一致キーワードの繰り返しは避けます
  • リンク密度:1,000 語あたり 3~5 個の内部リンク(seo-content のガイドラインに合わせます)

低品質コンテンツ対策

品質ゲート
指標しきい値対応
コンテンツレビュー未実施のページ100+⚠️ 警告:公開前にコンテンツ監査が必要です
根拠がないページ500+🛑 強制停止:ユーザーの明示的な承認と低品質コンテンツの監査が必要です
ページごとの独自コンテンツ<40%❌ 低品質コンテンツとしてフラグを付けます(ペナルティのリスクが高い可能性があります)
ページごとの文字数<300⚠️ レビュー対象としてフラグを付けます(十分な価値がない可能性があります)
スケールドコンテンツ乱用: 執行の背景(2025~2026年)

Google のスケールドコンテンツ乱用ポリシー(2024年3月導入)は、2025年に大規模な執行強化を迎えました:

  • 2025年6月: AI 生成コンテンツを大規模に掲載するウェブサイトを対象とした手動措置の波
  • 2025年8月: SpamBrain スパムアップデートにより、AI 生成のリンクスキームやコンテンツファームに対するパターン検出が強化
  • 結果: Google は、2024年3月の執行以降、検索結果における低品質で独自性のないコンテンツが45%減少したと報告

プログラムマティックページのための強化された品質ゲート:

  • コンテンツの差別化: 任意の2つのプログラムマティックページ間で、コンテンツの30~40%以上が真に独自である必要があります(単なる都市名やキーワードの文字列置換ではない)
  • 人的レビュー: 公開前に生成ページの最低5~10%をサンプルレビュー
  • 段階的な展開: 50~100ページ単位のバッチで公開します。拡大する前に2~4週間、インデックス登録とランキングを監視します。明示的な品質レビューなしに500ページ以上のプログラムマティックページを同時に公開しないでください。
  • 単独価値テスト: 各ページは次を満たす必要があります:「他に類似ページが存在しなくても、このページは公開する価値があるか?」
  • サイトレピュテーション乱用: 高い権威のドメイン(自身のものではない)の下でプログラムマティックコンテンツを公開する場合、サイトレピュテーション乱用のペナルティを引き起こす可能性があります。Google は2024年11月からこれを積極的に執行し始めました。

推奨: <40% unique content での WARNING ゲートは引き続き適切です。スケールドコンテンツ乱用のリスクを防ぐため、<30% の独自コンテンツで HARD STOP を検討してください。

安全なプログラムマティックページ(大規模でも OK)

✅ 統合ページ(実際のセットアップドキュメント、API の詳細、スクリーンショット付き) ✅ テンプレート/ツールページ(ダウンロード可能なコンテンツ、使用手順付き) ✅ 用語集ページ(例や関連用語を伴う200語以上の定義) ✅ 製品ページ(独自の仕様、レビュー、比較データ) ✅ データ駆動型ページ(レコードごとの独自の統計、チャート、分析)

ペナルティリスク(大規模では避ける)

❌ 同一のテキストの都市名だけを入れ替えた地域ページ ❌ 業界固有の価値がない「[業界]向けのベスト[ツール]」 ❌ 実際の比較データがない「[競合]の代替」 ❌ 人的レビューと独自の付加価値がない AI 生成ページ ❌ コンテンツの60%超が共有テンプレートの定型文であるページ

独自性の計算

独自コンテンツ % = (このページに固有の語数) / (ページ上の総語数) × 100

プログラムマティックセット内の他のすべてのページと比較して測定します。共有のヘッダー、フッター、ナビゲーションは計算から除外されます。テンプレートの定型文は含まれます。

正規化戦略

  • すべてのプログラムマティックページには、自己参照の canonical タグが必要です
  • パラメータのバリエーション(並べ替え、フィルター、ページネーション)はベース URL に正規化します
  • ページネーションされたシリーズ: ページ1に正規化するか、rel=next/prev を使用します
  • プログラムマティックページが手動ページと重複する場合、手動ページが正規となります
  • 意図的なクロスドメイン設定でない限り、異なるドメインへの canonical は設定しないでください

サイトマップ統合

  • すべてのプログラムマティックページのサイトマップエントリを自動生成します
  • サイトマップファイルごとに50,000 URL で分割します(プロトコルの上限)
  • 複数のサイトマップファイルが必要な場合はサイトマップインデックスを使用します
  • <lastmod> は実際のデータ更新タイムスタンプを反映します(生成時刻ではありません)
  • noindex に設定されたプログラムマティックページはサイトマップから除外します
  • robots.txt にサイトマップを登録します
  • 新しいレコードがデータソースに追加されるたびに、サイトマップを動的に更新します

インデックス肥大化の防止

  • 低価値ページの noindex: 品質ゲートを満たさないページ
  • ページネーション: ページ1以降のページネーションされた結果を noindex にします(または rel=next/prev を使用します)
  • ファセットナビゲーション: フィルタリングされたビューを noindex にし、ベースカテゴリに正規化します
  • クロールバジェット: プログラムマティックページが10kを超えるサイトでは、Search Console でクロール統計を監視します
  • 薄いページの統合: データが不十分なレコードを集約ページに統合します
  • 定期的な監査: インデックス登録されたページ数と意図したページ数を毎月レビューします

出力

プログラムマティック SEO スコア: XX/100
評価サマリー
カテゴリステータススコア
データ品質✅/⚠️/❌XX/100
テンプレートの独自性✅/⚠️/❌XX/100
URL 構造✅/⚠️/❌XX/100
内部リンク✅/⚠️/❌XX/100
低品質コンテンツのリスク✅/⚠️/❌XX/100
インデックス管理✅/⚠️/❌XX/100
重大な問題(直ちに修正)
優先度:高(1週間以内に修正)
優先度:中(1か月以内に修正)
優先度:低(バックログ)
推奨事項
  • データソースの改善
  • テンプレートの変更
  • URL パターンの調整
  • 品質ゲートへの準拠に向けた対応

エラー処理

シナリオアクション
URL に到達できないステータスコードを含む接続エラーを報告します。URL にアクセスできるか確認し、認証が必要かどうかを確認するよう提案します。
プログラムによって生成されたページが検出されないテンプレート生成またはデータ駆動型のページパターンが見つからなかったことをユーザーに伝えます。ページでクライアントサイドレンダリングが使用されていないか、URL が正しいセクションを指しているかを確認するよう提案します。
低品質コンテンツのしきい値を超過品質ゲートの警告を発します。独自コンテンツの割合を報告し、独自性が 40% 未満のページにフラグを立てます。続行する前に、ユーザーの確認を必須とします。
品質ゲート違反正当な理由なく 500 ページ以上、または独自コンテンツが 30% 未満という HARD STOP のしきい値で分析を停止します。調査結果を提示し、続行するにはユーザーの明示的な承認を必須とします。

共有データキャッシュへの書き込み

すべての作業が完了し、ワークフローによって永続的な調査結果が得られた場合は、簡潔な JSON サマリーを .seo-cache/ に書き込みます。 ../seo/references/shared-data-cache.md のスキーマと命名規則を使用します。少なくとも cache_type、analyzed_at、ソース URL/ドメイン、主な調査結果、問題点、推奨事項、ツールの制限事項を含めます。.seo-cache/ が .gitignore にない場合は追加します。

コメント