mcpField
S
seo-aeo-schema-generator

seo-aeo-schema-generator

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

seo-aeo-schema-generator について

seo-aeo-schema-generator は、ページ内容に基づいて構造化データを生成・検証するスキルです。SEOやコンテンツ担当者向けに、対応するスキーマ型、項目チェック、JSON-LD出力、実装手順を扱います。

主な機能

  1. 01対応スキーマ型のJSON-LD生成
  2. 02必須項目と推奨項目の確認
  3. 03不足データと未解決プレースホルダーの指摘
  4. 04URL、日付、価格の検証
  5. 05実装とテストのガイド

活用シーン

  1. 01ランディングページへの構造化データ追加
  2. 02ArticleやProductマークアップの準備
  3. 03FAQとパンくずスキーマの確認
  4. 04公開前のマークアップ点検

インストール

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

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

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

同梱ファイル

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

references/
aggregate-rating-schema.json
breadcrumb-schema.json
article-schema.json
howto-schema.json
review-schema.json
faq-schema.json
organization-schema.json
product-schema.json
webpage-schema.json
website-schema.json

詳細

スキーマジェネレーター スキル

説明

ユーザーが任意のページ向けに構造化データのマークアップを生成、記述、または検証したい場合に、このスキルを有効にします。 次のようなフレーズがトリガーになります:「スキーマを生成」「JSON-LD を作成」「〜のスキーママークアップ」「〜の構造化データ」 「FAQ スキーマ」「商品スキーマ」「記事スキーマ」 「Google にページの内容を理解してもらう」「リッチリザルト スキーマ」 「スキーマジェネレーター:[タイプ]」「[ページ]にスキーマを追加」。


入力形式

{
  "page_type": "landing-page",
  "schema_types": ["Article"],
  "page_data": {
    "url": "string — canonical URL of the page",
    "title": "string — page title",
    "description": "string — page description",
    "primary_keyword": "string",
    "date_published": "string — ISO format: YYYY-MM-DD",
    "date_modified": "string — ISO format: YYYY-MM-DD",
    "author_name": "string — for Article schema",
    "brand_name": "string",
    "brand_url": "string — homepage URL",
    "logo_url": "string — absolute URL to brand logo",
    "product": {
      "name": "string",
      "description": "string",
      "image_url": "string",
      "price": "decimal",
      "currency": "string — ISO 4217, e.g. USD, GBP",
      "availability": "InStock | OutOfStock | PreOrder",
      "sku": "string — optional"
    },
    "reviews": [
      {
        "author": "string",
        "rating": "integer — 1 to 5",
        "review_body": "string",
        "date": "string — YYYY-MM-DD"
      }
    ],
    "aggregate_rating": {
      "rating_value": "decimal — e.g. 4.7",
      "review_count": "integer",
      "best_rating": "integer — usually 5",
      "worst_rating": "integer — usually 1"
    },
    "faqs": [
      {
        "question": "string",
        "answer": "string"
      }
    ],
    "how_to": {
      "name": "string — title of the how-to",
      "description": "string",
      "total_time": "string — ISO 8601 duration, e.g. PT30M",
      "steps": [
        {
          "name": "string — step title",
          "text": "string — step instructions"
        }
      ]
    },
    "breadcrumbs": [
      {
        "position": "integer — 1, 2, 3...",
        "name": "string — label",
        "url": "string — absolute URL"
      }
    ]
  }
}

スキーマタイプ一覧

このスキルでは、次のスキーマタイプをサポートしています。 1つのページに複数のタイプを指定できます。

スキーマタイプ最適な用途検索での用途の可能性(保証なし)
Articleブログ記事、ピラーページ、ニュース記事のリッチリザルト、トップニュース
FAQPage任意のページにある FAQ セクション現在、Google の FAQ リッチリザルトはありません
HowTo手順を追ったガイドGoogle の HowTo リッチリザルトは廃止済み
Product商品ページまたは価格ページSERP での価格、在庫状況、評価
Review個別の商品またはサービスのレビューSERP での星評価
AggregateRating複数のレビューがあるページレビュー件数付きの星評価
BreadcrumbListナビゲーション階層のある任意のページSERP URL に表示されるパンくずリストのパス
Organizationホームページまたは会社概要ページブランドのナレッジパネルに関するシグナル
WebPage基本的な構造化された識別情報が必要な任意のページクローラーによるページ理解を向上
WebSiteホームページのみサイトの識別情報。サイトリンク検索ボックスは廃止済み

ページ上で確認できるコンテンツに対応したタイプだけを使用してください。FAQPage や HowTo が AI による情報抽出につながるという確立された保証はありません。Google は HowTo リッチリザルトを 2023 年に、サイトリンク検索ボックスを 2024 年に、FAQ リッチリザルトを 2026 年 5 月に廃止しました。Schema.org の有効性と、Google の機能の対象となることは別々のものです。


リッチリザルトの対象となるためのルール

Google は、各スキーマタイプがリッチリザルトの対象となるために、特定のフィールドが存在することを求めています。 必須フィールドが欠けている場合、影響を受けるのは該当機能であり、ページのインデックス登録全体ではありません。最新の Google 機能ガイドを確認してください。以下の表はコンテンツのチェックリストであり、対象可否を完全に検証するものではありません。

FAQPage
フィールドステータス備考
@type必須FAQPage である必要があります
mainEntity必須Question オブジェクトの配列
name必須質問文
acceptedAnswer必須text を含む Answer オブジェクト
最低質問数コンテンツの確認実際の質問と回答が少なくとも1つあること。質問が2つ必要という根拠のないルールはありません
回答の長さ推奨回答ごとに300語未満
Article

Google が現在推奨として挙げている Article のプロパティは、見出し、代表画像、公開日/更新日、著者の識別情報です。利用可能で事実に基づく値を含めてください。出版社のロゴや日付を捏造しないでください。トップニュースに Article マークアップは必要ありません。

商品
フィールドステータス備考
name必須商品名
image必須絶対 URL
description推奨
offers条件付き商品スニペットでは、name に加えて offers、review、aggregateRating のいずれかが必要です。販売者向けリスティングには別のルールがあります
price条件付き選択した価格付き Offer の方式で必須です
priceCurrency条件付き価格付きオファーには ISO 4217 を使用してください。機能固有のルールを確認してください
availability推奨Schema.org の在庫状況 URL
aggregateRating推奨星評価の表示が可能になります
HowTo
フィールドステータス備考
name必須手順のタイトル
step必須HowToStep オブジェクトの配列
text必須各手順の説明
totalTime推奨ISO 8601 形式の期間
image推奨利用可能な場合は各手順の画像
BreadcrumbList
フィールドステータス備考
itemListElement必須ListItem オブジェクトの配列
position必須整数。1 から始まります
name必須パンくずリストのラベル
item必須各パンくず項目の絶対 URL

出力構造

スキルは常に、次の正確な形式で出力する必要があります。

# Schema Markup Output

**Page:** [page title]
**URL:** [url]
**Schema Types Generated:** [list all types]
**Potential Rich Results (eligibility unverified until tested):** [list eligible rich results]
**Structured Content Types Added:** [list AEO-relevant schema types]

---

## Validation Summary

| Schema Type       | Required Fields Complete | Rich Result Eligible | Issues Found |
|-------------------|--------------------------|----------------------|--------------|
| [type]            | ✅ / ❌                  | ✅ / ❌              | [n or none]  |
| [type]            | ✅ / ❌                  | ✅ / ❌              | [n or none]  |

---

## Issues Found

[If no issues: ✅ All schema types passed validation.]

**Issue:** [Specific field missing or incorrect]
**Schema Type:** [type]
**Severity:** Required / Recommended
**Fix:** [Exact instruction — what to add or change]

---

## JSON-LD Output

Place all script blocks inside the `<head>` of your HTML.
Use one `<script>` block per schema type.

### [Schema Type 1]
```html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "[type]",
  [all populated fields from references/ template]
}
</script>
```

### [Schema Type 2]
```html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "[type]",
  [all populated fields]
}
</script>
```

---

## Implementation Instructions

1. Copy each `<script>` block above
2. Paste inside the `<head>` tag of your HTML —
   after the `<title>` tag, before `</head>`
3. One script block per schema type —
   multiple types may also be combined in an @graph with stable @id links
4. Test immediately using Google's Rich Results
   Test: https://search.google.com/test/rich-results
5. Test using Schema.org Validator:
   https://validator.schema.org
6. After deploying, request re-indexing in
   Google Search Console

---

## Testing Checklist

- [ ] All required fields populated for each schema type
- [ ] No placeholder text left in any field
- [ ] All URLs are absolute (https://...) not relative (/page)
- [ ] Date fields use ISO 8601 format (YYYY-MM-DD)
- [ ] Price uses decimal format (e.g. 49.00 not $49)
- [ ] Currency uses ISO 4217 code (USD not $)
- [ ] FAQPage reflects real visible questions and answers
- [ ] Serialize JSON safely and escape < as \u003c when embedding to prevent a closing script tag from ending the block
- [ ] Every script block or @graph parses correctly
- [ ] Tested in Google Rich Results Test ✅
- [ ] Tested in Schema.org Validator ✅

References フォルダー

references/ フォルダーには、サポートされているすべてのスキーマタイプについて、例示用の未検証 JSON-LD テンプレートが含まれています。 スクリプトはこれらを基本構造として使用し、 ページデータを入力します。

references/
├── faq-schema.json
├── article-schema.json
├── product-schema.json
├── review-schema.json
├── aggregate-rating-schema.json
├── howto-schema.json
├── breadcrumb-schema.json
├── organization-schema.json
├── webpage-schema.json
└── website-schema.json

各テンプレートには、必須フィールドと推奨フィールドがすべて含まれており、次の形式のプレースホルダー値が設定されています。 "{{field_name}}"。schema_builder.py は同梱されていません。型付きオブジェクトを構築してシリアライズしてください。テキスト置換は使用しないでください。配列/オブジェクトのフィールドは、引用符で囲んだ JSON 文字列ではなく、配列/オブジェクトのままにしてください。


実行手順

  1. page_type と schema_types を読み取ります — schema_types が空の場合は、続行する前に Schema Type Menu を使用して page_type に基づく 適切なタイプを推奨します
  2. 要求されたスキーマタイプごとに、 references/ から対応するテンプレートを読み込みます
  3. page_data のすべてのフィールドを テンプレートのプレースホルダーにマッピングします
  4. Rich Result Eligibility Rules に照らして 必須フィールドをすべて確認します — 必須フィールドが不足している場合は、 出力前に問題として報告します
  5. 推奨フィールドをすべて確認します — 不足している場合は警告として報告しますが、出力は妨げません
  6. すべての URL が絶対 URL であること、 すべての日付が ISO 8601 形式であること、 すべての価格が小数形式であることを検証します
  7. スキーマタイプごとに、単一の <script> ブロックを生成します
  8. Validation Summary テーブルを作成します
  9. すべての問題を、重大度と正確な修正手順とともに一覧表示します
  10. 実装手順と テストチェックリストを作成します
  11. 提供されたページデータを使って選択した参照テンプレートに値を入力し、必須フィールドを検証して、未解決のプレースホルダーをブロッキング問題として示します。プロジェクト提供のスキーマヘルパーは補助的な確認にのみ使用してください。レビュー、評価、商品に関する主張を捏造して出力してはいけません。

接続されたスキル

  • 出力を受け取るスキル: seo-aeo-landing-page-writer、 seo-aeo-blog-writer、seo-aeo-content-quality-auditor、 seo-aeo-internal-linking
  • 出力先: オーケストレーターワークフロー — 公開前チェックリストの直前の最終ステップ

使用する場面

ページに JSON-LD 構造化データを追加または検証する際に使用します。提供された表示コンテンツが、選択したスキーマタイプを裏付けている必要があります。

制限事項

  • 構造化データは、ページに表示される正確なコンテンツと一致している必要があります。JSON-LD が有効でも、リッチリザルトへの表示、インデックス登録、または表示が保証されるわけではありません。

コメント