mcpField
S
seo-technical

seo-technical

github.com/sickn33マーケティング・グロース48.9k96 回インストール今日更新
リポジトリ

seo-technical について

seo-technicalは、クロール、インデックス、パフォーマンス、レンダリング、インフラを確認する技術SEO監査スキルです。AIクローラーやJavaScript SEOも含むチェックリストとレポート形式を備えています。

主な機能

  1. 01クロールとインデックスの確認
  2. 02セキュリティとURL構造のレビュー
  3. 03モバイルとCore Web Vitalsの確認
  4. 04構造化データとJavaScript SEOのガイド
  5. 05AIクローラーとIndexNowの確認
  6. 06スコア付き監査レポートの構成

活用シーン

  1. 01robots.txt、サイトマップ、canonicalタグの確認
  2. 02JavaScriptサイトのレンダリングとインデックスリスクの評価
  3. 03セキュリティヘッダーとモバイル対応の監査

インストール

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

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill seo-technical

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

詳細

テクニカルSEO監査

使用する場面

  • クロール可能性、インデックス登録可能性、パフォーマンス、レンダリングに焦点を当てたテクニカルSEOレビューをユーザーが求めている場合に使用します。
  • robots.txt、正規化、JavaScript SEO、Core Web Vitals、AI クローラーのアクセスを監査する場合に使用します。
  • コンテンツよりも、インフラや実装に重点を置いたタスクの場合に使用します。

カテゴリー

1. クロール可能性
  • robots.txt:存在し、有効で、重要なリソースをブロックしていない
  • XML サイトマップ:存在し、robots.txt で参照され、有効な形式である
  • Noindex タグ:意図的な設定か、誤った設定か
  • クロール深度:重要なページがホームページから3クリック以内にある
  • JavaScript レンダリング:重要なコンテンツの表示に JS の実行が必要か確認する
  • クロールバジェット:大規模サイト(10k ページ超)では、効率性が重要
AI クローラーの管理

2025〜2026年現在、AI 企業はモデルのトレーニングや AI 検索の提供を目的として、積極的にウェブをクロールしています。robots.txt を使用してこれらのクローラーを管理することは、テクニカルSEOにおける重要な考慮事項です。

既知の AI クローラー:

クローラー企業robots.txt のトークン用途
GPTBotOpenAIGPTBotモデルのトレーニング
ChatGPT-UserOpenAIChatGPT-Userリアルタイムの閲覧
ClaudeBotAnthropicClaudeBotモデルのトレーニング
PerplexityBotPerplexityPerplexityBot検索インデックス+トレーニング
BytespiderByteDanceBytespiderモデルのトレーニング
Google-ExtendedGoogleGoogle-ExtendedGemini のトレーニング(検索には使用されません)
CCBotCommon CrawlCCBotオープンデータセット

主な違い:

  • Google-Extended をブロックすると Gemini のトレーニングへの利用を防げますが、Google 検索のインデックス登録や AI Overviews には影響しません(これらには Googlebot が使用されます)
  • GPTBot をブロックすると OpenAI のトレーニングへの利用を防げますが、ブラウジングを通じた ChatGPT によるコンテンツの引用(ChatGPT-User)は防げません
  • 各ベンダーの最新ドキュメントで、クローラーの用途と制御方法を確認してください。この表は完全なものでも、恒久的な一覧でもありません。

例:AI クローラーを選択的にブロックする場合:

# Allow search indexing, block AI training crawlers
User-agent: GPTBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: Bytespider
Disallow: /

# Allow all other crawlers (including Googlebot for search)
User-agent: *
Allow: /

**推奨事項:**ブロックする前に、AI での可視性戦略を検討してください。AI システムに引用されることで、ブランド認知度や参照トラフィックが向上します。AI での可視性を最適化するには、seo-geo スキルも参照してください。

2. インデックス登録可能性
  • canonical タグ:自己参照であり、noindex と競合していない
  • 重複コンテンツ:ほぼ重複するページ、パラメーター付き URL、www 版と非 www 版
  • 内容の薄いコンテンツ:ページの目的に対して有用な情報が不十分なコンテンツ。任意の最低語数を設けないこと
  • ページネーション:rel=next/prev または「さらに読み込む」パターン
  • Hreflang:多言語・多地域サイトで正しく設定されている
  • インデックス肥大化:クロールバジェットを消費する不要なページ
3. セキュリティ
  • HTTPS:強制され、有効な SSL 証明書があり、混在コンテンツがない
  • セキュリティヘッダー:
    • Content-Security-Policy (CSP)
    • Strict-Transport-Security (HSTS)
    • X-Frame-Options
    • X-Content-Type-Options
    • Referrer-Policy
  • HSTS preload:セキュリティ要件の高いサイトでは、プリロードリストへの登録を確認する
4. URL 構造
  • クリーン URL:内容がわかる表現で、ハイフンを使用し、コンテンツ用のクエリパラメーターを含まない
  • 階層:サイト構造を反映した論理的なフォルダー構成
  • リダイレクト:リダイレクトチェーンがない(最大1ホップ)。恒久的な移転には301を使用する
  • URL の長さ:100文字超を指摘する
  • 末尾のスラッシュ:一貫して使用する
5. モバイル最適化
  • レスポンシブデザイン:viewport メタタグとレスポンシブ CSS
  • タッチターゲット:最小48x48px、間隔は8px
  • フォントサイズ:基本サイズを最小16pxにする
  • 横スクロールがない
  • モバイルファーストインデックス:モバイル版のコンテンツが同等であることを確認し、実際の Googlebot のクロール記録を調べる。すべての Google クローラーやフェッチャーがモバイルのユーザーエージェントを使用すると推測しないこと。
6. コアウェブバイタル
  • LCP(Largest Contentful Paint):目標 <2.5s
  • INP(Interaction to Next Paint):目標 <200ms
    • INP は 2024 年 3 月 12 日に FID に置き換わりました。FID は 2024 年 9 月 9 日に、すべての Chrome ツール(CrUX API、PageSpeed Insights、Lighthouse)から完全に削除されました。FID にはどこでも言及しないでください。
  • CLS(Cumulative Layout Shift):目標 <0.1
  • 評価には実ユーザーデータの 75 パーセンタイルを使用します
  • MCP が利用可能な場合は、PageSpeed Insights API または CrUX データを使用します
7. 構造化データ
  • 検出対象:JSON-LD(推奨)、Microdata、RDFa
  • Google がサポートするタイプに照らして検証します
  • 詳細な分析については seo-schema スキルを参照してください
8. JavaScript のレンダリング
  • コンテンツが初期 HTML で表示されるか、JavaScript が必要かを確認します
  • クライアントサイドレンダリング(CSR)とサーバーサイドレンダリング(SSR)を判別します
  • インデックス登録の問題につながる可能性がある SPA フレームワーク(React、Vue、Angular)を指摘します
  • 該当する場合は、動的レンダリングの設定を確認します
JavaScript SEO:canonical とインデックス登録に関するガイダンス(2025 年 12 月)

Google は 2025 年 12 月、JavaScript SEO のドキュメントを更新し、重要な点を明確にしました。

  1. canonical の競合: 生の HTML に含まれる canonical タグと、JavaScript によって挿入される canonical タグが異なる場合、Google はどちらか一方を使用する可能性があります。サーバーでレンダリングされた HTML と JavaScript でレンダリングされた出力で、canonical タグが同一であることを確認してください。
  2. JavaScript と noindex: 生の HTML に <meta name="robots" content="noindex"> が含まれていて、JavaScript がこれを削除した場合でも、Google は生の HTML の noindex を適用する可能性があります。初期 HTML レスポンスで正しい robots ディレクティブを配信してください。
  3. 200 以外のステータスコード: Google は 200 以外のレスポンスをレンダリングしない場合があります。クライアントサイドでの修復に頼らず、正しいステータス、コンテンツ、ディレクティブを配信してください。
  4. JavaScript 内の構造化データ: JavaScript によって挿入される Product、Article などの構造化データは、処理が遅れる可能性があります。時間的制約のある構造化データ(特に e コマースの Product マークアップ)は、初期のサーバー側レンダリング HTML に含めてください。

ベストプラクティス: JavaScript による挿入に頼るのではなく、重要な SEO 要素(canonical、meta robots、構造化データ、title、meta description)を初期のサーバー側レンダリング HTML で配信してください。

9. IndexNow プロトコル
  • Bing、Yandex、Naver 向けにサイトが IndexNow をサポートしているか確認します
  • Google 以外の検索エンジンでサポートされています
  • Google 以外の検索エンジンでより速くインデックス登録されるよう、導入を推奨します

出力

技術スコア:XX/100

定性的なスコアは任意です。評価基準、証拠の情報源、確認できなかった項目を明示してください。クロールリクエストの範囲を定め、読み取り専用の分析の一環として robots、HSTS preload、本番環境の設定を変更しないでください。クローラーとレンダリングに関する説明は、Google クローラーおよびJavaScript SEOで確認してください。

カテゴリ別内訳
カテゴリステータススコア
クロール可能性pass/warn/failXX/100
インデックス登録可能性pass/warn/failXX/100
セキュリティpass/warn/failXX/100
URL 構造pass/warn/failXX/100
モバイルpass/warn/failXX/100
コアウェブバイタルpass/warn/failXX/100
構造化データpass/warn/failXX/100
JS レンダリングpass/warn/failXX/100
IndexNowpass/warn/failXX/100
重大な問題(直ちに修正)
優先度:高(1 週間以内に修正)
優先度:中(1 か月以内に修正)
優先度:低(バックログ)

DataForSEO との連携(任意)

DataForSEO MCP ツールが利用可能な場合は、実際のページ分析(ステータスコード、ページのタイミング、リンク切れ、ページ上のチェック)に on_page_instant_pages を、Lighthouse 監査(パフォーマンス、アクセシビリティ、SEO スコア)に on_page_lighthouse を、技術スタックの検出に domain_analytics_technologies_domain_technologies を使用します。

エラー処理

シナリオ対応
URL に到達できないステータスコードとともに接続エラーを報告します。URL の確認、DNS 解決の確認、サイトが一般公開されていることの確認を提案します。
robots.txt が見つからないルートドメインで robots.txt が検出されなかったことを伝えます。適切なディレクティブを含むファイルの作成を推奨します。残りのカテゴリの監査は続行します。
HTTPS が設定されていない重大な問題として指摘します。HTTP がリダイレクトなしで提供されているか、混在コンテンツが存在するか、SSL 証明書がない、または期限切れかを報告します。
Core Web Vitals のデータを利用できないCrUX データを利用できないことを伝えます(トラフィックの少ないサイトではよくあります)。Lighthouse を使ってラボ環境でのパフォーマンスを診断し、フィールドデータに基づく Core Web Vitals とは別に表示します。また、CrUX にデータを登録するためにトラフィックを作り出してはいけません。

制限事項

  • タスクが上記の説明にある範囲に明確に該当する場合にのみ、このスキルを使用してください。
  • 出力を、環境固有の検証、テスト、または専門家によるレビューの代わりとして扱わないでください。
  • 必要な入力、権限、安全上の境界、または成功基準が不足している場合は、作業を停止して確認を求めてください。

コメント