mcpField
S
seo

seo

github.com/addyosmaniマーケティング・グロース3.0k52.6k 回インストール9 週間前に更新
リポジトリ

seo について

Lighthouse の監査と Google Search のガイドに基づく、開発者やサイト監査担当者向けの SEO スキルです。クロールやインデックスの問題、コンテンツ品質、構造化データの適格性、エージェント向けの閲覧シグナルを区別します。

主な機能

  1. 01Lighthouse SEO 監査手順
  2. 02クロールとインデックス設定の確認
  3. 03メタデータと構造化データの確認
  4. 04Agentic Browsing シグナルの確認
  5. 05証拠に基づく検証ガイド

活用シーン

  1. 01インデックスとクロール設定の調査
  2. 02ページテンプレートごとのメタデータ確認
  3. 03構造化データの構文と適格性シグナルの確認
  4. 04レンダリング済みページのエージェント閲覧評価

MCP 対応

Chrome DevTools MCP が使える場合、`lighthouse_audit` でレンダリング後の SEO と Agentic Browsing を確認します。WebMCP の登録、スキーマ、フォーム対応も監査シグナルとして扱います。

インストール

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

$npx skills add https://github.com/addyosmani/web-quality-skills --skill seo

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

同梱ファイルreferences/STRUCTURED-DATA.md

詳細

SEO 最適化

Lighthouse の SEO 監査と Google 検索のガイドラインに基づく検索エンジン最適化です。テクニカル SEO、オンページ最適化、構造化データに重点を置きます。

エビデンスに基づく監査ワークフロー

レンダリング済みのページを利用できる場合:

  1. その機能を利用できる場合は、ライブの Lighthouse SEO と Agentic Browsing のチェックを実行します。Chrome DevTools MCP を使用する場合は、lighthouse_audit を使用します。結果を使って、レンダリング済みページの問題箇所を特定します。
  2. Lighthouse だけでは確認できないシグナルを調査します。レスポンスヘッダー、リダイレクト、robots.txt、サイトマップの網羅性、ページテンプレート間の canonical の一貫性、構造化データの適格性、ユーザーがアクセス権を提供した場合は Search Console のエビデンスなどです。
  3. テクニカルなクロール/インデックス登録に関する所見と、コンテンツの品質や権威性を分けて扱います。ランキング要因の重みを作り上げたり、順位の変化を約束したりしないでください。
  4. ソースを修正し、同じチェックを再実行します。インデックス登録やランキングの結果については、検索エンジンによる検証が未完了であることを報告します。

ライブツールを利用できない場合は、カテゴリ別の Lighthouse CLI 出力に加え、ソースと HTTP を直接確認します。Lighthouse の SEO スコアは、テクニカルなチェックの一部を有用に網羅するものですが、ランキングを予測するものではありません。

領域このスキルで確認できること
クロールとインデックス登録の制御技術的な設定と一貫性
レンダリング済みメタデータとセマンティクス存在の有無、妥当性、ページテンプレートの問題
構造化データ構文と適格性のシグナル。リッチリザルトが保証されるわけではありません
Core Web VitalsCore Web Vitals スキルによるフィールド/ラボのエビデンスへのリンク
コンテンツの有用性と権威性品質を確認しますが、架空のランキング比率は割り当てません

テクニカル SEO

クロール可能性

robots.txt:

# /robots.txt
User-agent: *
Allow: /

# Block admin/private areas
Disallow: /admin/
Disallow: /api/
Disallow: /private/

# Don't block resources needed for rendering
# ❌ Disallow: /static/

Sitemap: https://example.com/sitemap.xml

Meta robots:


<meta name="robots" content="index, follow">


<meta name="robots" content="noindex, nofollow">


<meta name="robots" content="index, nofollow">


<meta name="robots" content="max-snippet:150, max-image-preview:large">

Canonical URL:


<link rel="canonical" href="https://example.com/page">


<link rel="canonical" href="https://example.com/current-page">


<link rel="canonical" href="https://example.com/products">

XML サイトマップ
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://example.com/</loc>
    <lastmod>2024-01-15</lastmod>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://example.com/products</loc>
    <lastmod>2024-01-14</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
</urlset>

サイトマップのベストプラクティス:

  • サイトマップあたり最大 50,000 URL または 50MB
  • 大規模なサイトではサイトマップインデックスを使用する
  • canonical でインデックス登録可能な URL のみを含める
  • コンテンツの変更時に lastmod を更新する
  • Google Search Console に送信する
URL 構造
✅ Good URLs:
https://example.com/products/blue-widget
https://example.com/blog/how-to-use-widgets

❌ Poor URLs:
https://example.com/p?id=12345
https://example.com/products/item/category/subcategory/blue-widget-2024-sale-discount

URL のガイドライン:

  • アンダースコアではなくハイフンを使用する
  • 小文字のみを使用する
  • 短くする(75 文字未満)
  • ターゲットキーワードを自然に含める
  • 可能な限りパラメーターを避ける
  • 常に HTTPS を使用する
HTTPS とセキュリティ

<img src="https://example.com/image.jpg">


<img src="http://example.com/image.jpg">

SEO の信頼性を示すセキュリティヘッダー:

Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
X-Frame-Options: DENY

オンページ SEO

タイトルタグ

<title>Page</title>
<title>Home</title>


<title>Blue Widgets for Sale | Premium Quality | Example Store</title>

タイトルタグのガイドライン:

  • 50~60 文字という目安は、合否の基準ではなく、大まかな lint チェックの目安としてのみ使用します。Google はレンダリングされたデバイスの幅に合わせてタイトルリンクを切り詰めるため、ツールが対応している場合はプレビューの幅を確認します。
  • ページのトピックを冒頭付近で自然に説明する
  • 各ページで固有のものにする
  • ユーザーが検索結果を区別しやすくなる場合はブランド名を加える
  • 適切な場合は行動を促す表現にする

タイトルリンクの書き換えと切り詰めは、別々に扱います。<title> が短くても、Google は表示されているページタイトル、見出し、アンカーテキスト、その他の情報源を基に、異なるタイトルリンクを作成する場合があります。自動的に短くするのではなく、正確性と一貫性を調べてください。Google のタイトルリンクに関するガイダンスをご覧ください。

メタディスクリプション

<meta name="description" content="">


<meta name="description" content="Shop premium blue widgets with free shipping. 30-day returns. Rated 4.9/5 by 10,000+ customers. Order today and save 20%.">

メタディスクリプションのガイドライン:

  • 約 150~160 文字という目安は、lint チェックの目安としてのみ使用します。スニペットはクエリとデバイスによって異なり、Google はメタディスクリプションの代わりにページのコンテンツを選ぶ場合があります。
  • ページのトピックを自然に含める
  • 魅力的な行動喚起にする
  • 各ページで固有のものにする
  • ページのコンテンツと一致させる
見出し構造

<h2>Welcome to Our Store</h2>
<h4>Products</h4>
<h1>Contact Us</h1>


<h1>Blue Widgets - Premium Quality</h1>
  <h2>Product Features</h2>
    <h3>Durability</h3>
    <h3>Design</h3>
  <h2>Customer Reviews</h2>
  <h2>Pricing</h2>

見出しのガイドライン:

  • メインのページ見出しを具体的にし、階層を明確にします。有効な HTML に複数の <h1> が含まれていることだけを理由に、ページを不合格にしないでください。
  • 論理的な階層にする(レベルを飛ばさない)
  • キーワードを自然に含める
  • 汎用的な表現ではなく、具体的にする
画像 SEO

<img src="IMG_12345.jpg">


<img src="blue-widget-product-photo.webp"
     alt="Blue widget with chrome finish, side view showing control panel"
     width="800"
     height="600"
     loading="lazy">

画像のガイドライン:

  • キーワードを含む説明的なファイル名
  • alt テキストで画像の内容を説明する
  • 圧縮し、適切なサイズにする
  • フォールバック付きの WebP/AVIF
  • ファーストビュー外の画像は遅延読み込みする
内部リンク

<a href="/products">Click here</a>
<a href="/widgets">Read more</a>


<a href="/products/blue-widgets">Browse our blue widget collection</a>
<a href="/guides/widget-maintenance">Learn how to maintain your widgets</a>

リンクのガイドライン:

  • キーワードを含む説明的なアンカーテキスト
  • 関連する内部ページへのリンク
  • ページごとの適切なリンク数
  • 壊れたリンクを速やかに修正する
  • 階層構造にはパンくずリストを使用する

構造化データ(JSON-LD)

ユーザーがスキーママークアップを要求した場合、または監査で構造化データの問題が表面化した場合は、構造化データリファレンスをお読みください。Organization、Article、Product、FAQ、Breadcrumb の例と検証リンクが含まれています。

  • 表示されている正確な内容を記述してください。 リッチリザルトを得るためだけに型や主張を追加しないでください。
  • 該当する最も具体的な型を使用してください。 識別子と絶対 URL はレンダリング間で安定させてください。
  • レンダリングされた出力を検証してください。 構文を通過しても、検索エンジンの対象や表示が保証されるわけではありません。

エージェント型ブラウジングと AI による発見可能性

これらの概念は分けて考えてください:

  • Lighthouse Agentic Browsing は、アシスタントがレンダリングされたページを理解して操作するのに役立つ技術的信号を測定します。現在のチェックには、エージェント向けのアクセシビリティツリー、オプションの llms.txt、および存在する場合の WebMCP の登録、スキーマ、フォームのカバレッジが含まれます。
  • 検索インデックスとランキング は検索エンジンのシステムに依存し、Agentic Browsing スコアから推測することはできません。
  • AI による取り込みや引用 は製品ごとに異なります。技術的に閲覧可能なページや有効な llms.txt ファイルがあっても、AI 製品がそれを取り込み、ランク付け、または引用することを証明するものではありません。

セマンティック HTML、説明的なラベル、クロール可能なコンテンツ、正確なメタデータ、明確なページ構造を優先してください。これらは人、検索エンジン、エージェントにとって有益だからです。WebMCP ツールは、アプリケーションに公開する価値のあるアクションがあり、ユーザーがその統合を望む場合にのみ追加してください。ツール名、説明、スキーマ、フォームの注釈は Lighthouse で検証してください。

クローラー制御は製品ごとに異なります

包括的な「AI ボット」ルールを適用するのではなく、文書化された各ユーザーエージェントを個別に監査してください:

制御文書化された目的ブロックした場合の効果
OAI-SearchBotChatGPT 検索での発見ページコンテンツが ChatGPT の要約やスニペットに含まれなくなります。リンクとタイトルはサードパーティの発見を通じて引き続き表示される可能性があります
PerplexityBotPerplexity 検索インデックスそのクローラーがブロックされたコンテンツを検索結果用にインデックスしなくなります
Claude-SearchBot / Claude-UserClaude 検索インデックス / ユーザー主導の取得検索での可視性が低下する可能性があります / ユーザー主導のリクエストに対する取得が防止されます
Google-ExtendedGoogle がクロールしたコンテンツの特定の Gemini トレーニングおよびグラウンディング用途を制御Google 検索への掲載やランキングには影響しません

GPTBot や ClaudeBot などのトレーニング制御は、検索およびユーザーフェッチの制御とは別ものです。GoogleOther は汎用クローラーであり、AI 検索の可視性を切り替えるスイッチではありません。現在の名前と結果については、ベンダーが保守するドキュメントで確認してください: OpenAI、Perplexity、Anthropic、Google。

llms.txt は任意です

llms.txt は実験的な提案であり、ベンダー間で共通の検出標準ではありません。Lighthouse では /llms.txt が利用可能かどうかや、その形式を検証できますが、対象の製品がそれを読み取ることを示すものではありません。ユーザーから求められた場合、または対応するコンシューマーが文書で確認できる場合にのみ追加してください。クロール可能性、セマンティック HTML、正確なメタデータ、有用なコンテンツより優先して推奨してはいけません。ランキングや引用の要因として扱ったり、サイトマップを重複させたり、この監査の評価を上げることだけを目的にコンテンツを再編成したりしてはいけません。


モバイル SEO

レスポンシブデザイン

<meta name="viewport" content="width=1024">


<meta name="viewport" content="width=device-width, initial-scale=1">
タップ対象
/* ❌ Too small for mobile */
.small-link {
  padding: 4px;
  font-size: 12px;
}

/* ✅ Adequate tap target */
.mobile-friendly-link {
  padding: 12px;
  font-size: 16px;
  min-height: 48px;
  min-width: 48px;
}
フォントサイズ
/* ❌ Too small on mobile */
body {
  font-size: 10px;
}

/* ✅ Readable without zooming */
body {
  font-size: 16px;
  line-height: 1.5;
}

国際 SEO

Hreflang タグ

<link rel="alternate" hreflang="en" href="https://example.com/page">
<link rel="alternate" hreflang="es" href="https://example.com/es/page">
<link rel="alternate" hreflang="fr" href="https://example.com/fr/page">
<link rel="alternate" hreflang="x-default" href="https://example.com/page">
言語の宣言
<html lang="en">

<html lang="es-MX">

SEO 監査チェックリスト

重大
  • HTTPS が有効
  • robots.txt でクロールが許可されている
  • 重要なページに noindex が設定されていない
  • タイトルタグが設定され、一意である
  • ページの主見出しが内容を的確に表し、階層が論理的である
優先度:高
  • メタディスクリプションが設定されている
  • サイトマップが送信されている
  • 正規 URL が設定されている
  • モバイル対応である
  • Core Web Vitals の基準を満たしている
優先度:中
  • 構造化データが実装されている
  • 内部リンク戦略がある
  • 画像の代替テキストがある
  • 内容を説明する URL である
  • パンくずナビゲーションがある
  • エージェントのアクセスが重要な場合、Agentic Browsing の失敗を確認している
継続的に実施
  • Search Console でクロールエラーを修正する
  • コンテンツの変更時にサイトマップを更新する
  • ランキングの変化を監視する
  • リンク切れを確認する
  • Search Console のインサイトを確認する

ツール

ツール用途
Google Search Consoleインデックス登録の監視、問題の修正
Google PageSpeed Insightsパフォーマンスと Core Web Vitals
Rich Results Test構造化データの検証
ライブ Lighthouse 監査(Chrome DevTools MCP: lighthouse_audit)エージェント向けのレンダリング後 SEO および Agentic Browsing の確認
Lighthouse CLISEO 監査の代替手段
Screaming Frogクロール分析

参考資料

コメント