agentsclimarketplace

Seo schema jsonld

Skill Hainrixz/claude-seo-ai/skills/seo-schema-jsonld

Audit and generate structured data (JSON-LD) for a page — detect, validate, and complete Tier-1 schema.org types (Article, Organization, Person, Product/Offer, BreadcrumbList, LocalBusiness, Review, VideoObject, Event), flag microdata/RDFa and deprecated-for-rich-results types (FAQPage/HowTo), and produce ready-to-inject JSON-LD blocks. Module M5. Feeds both the Search SEO and AI Visibility scores.From its SKILL.md

Install
npx -y skills add Hainrixz/claude-seo-ai --skill seo-schema-jsonld

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • runs commandsInstructs the agent to run 1 command, including `node ${CLAUDE_SKILL_DIR}/../../scripts/validate-jsonld.mjs --url <u>`.

SKILL.md

3.7 KB, 833 tokens by cl100k_base, as published. Nobody here has run it

seo-schema-jsonld (M5)

Structured data is the single highest-leverage signal for both classic rich results and AI citation. Reference: references/schema-tier1.md. Templates: schema/jsonld-templates/.

Audits

Working from the PageSnapshot (rendered_dom if present, else raw_html):

  1. Detect every <script type="application/ld+json"> block; parse JSON; note any inline microdata/RDFa (flag for migration to JSON-LD).
  2. Validate each block: valid JSON, recognized @type, required + recommended properties present per references/schema-tier1.md.
  3. Completeness vs the page's content & vertical: e.g. an article page should have Article/BlogPosting with author (Person), datePublished, dateModified, image, publisher; a product page Product + Offer (price, priceCurrency, availability).
  4. Entity hygiene: stable @id, @graph linkage, sameAs (defer the sameAs audit detail to M6/seo-entity-linking).
  5. Date agreement: schema datePublished/dateModified should match visible dates (cross-check with M13).
  6. Deprecation honesty: if FAQPage/HowTo present, do NOT report them as a rich-result win — label deprecated-for-SERP (still parseable by AI).

Fixes (fixable: auto)

Generate complete, valid JSON-LD blocks inferred from page content for any missing/incomplete Tier-1 type:

  • Article/BlogPosting from <article>, <h1>, byline, dates, hero image.
  • Organization/WebSite from footer/contact/logo.
  • Product+Offer from product DOM (name, image, price, currency, availability).
  • BreadcrumbList from nav breadcrumb.
  • Person (author) with credential fields the user supplies. Use a single @graph with stable @ids. Inject missing dateModified/@id. The block is a diff for fix (AUTO). Never invent prices, dates, ratings, or sameAs identity links — ask or leave a clearly-marked TODO placeholder the user fills.

Verification

  • Offline: node ${CLAUDE_SKILL_DIR}/../../scripts/validate-jsonld.mjs --url <u> — checks JSON validity + required properties against the templates.
  • Tier 1: confirm eligibility with Google Rich Results Test / schema.org validator. When unavailable, status is needs_api, not pass.

Findings

Emit findings per schema/finding.schema.json. Examples:

  • M5.article.missing — no Article schema on an editorial page (severity 4, fail, fixable: auto, axis both, confidence established).
  • M5.product.missing_offer_price — Product without Offer.price on a product page (status fail, severity 4, fixable: auto, axis both, confidence established).
  • M5.faqpage.deprecated_richresult — FAQPage present (status warn, severity 1, fixable: advisory, axis ai, confidence established; rationale cites Google FAQ rich-result removal; not counted as a win). Each finding: evidence.observed quotes what's on the page; verification.reproduce is the runnable command above; expected_impact is banded + confidence-tagged (no naked %).

Honesty

  • FAQPage/HowTo: parseable by AI, no Google rich results — keep if present, don't add expecting SERP features.
  • Don't mark up content not visible on the page; keep schema consistent with any product feed.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most marketing audience skills give in 833 tokens

Counted across 690 of the 894 authors here whose files we hold, read 2026-08-07

  • Apply Poppins font to headingsin 41 of 690, across 6 files
  • Apply Lora font to body textin 41 of 690, across 6 files
  • Use Arial fallback for headingsin 39 of 690, across 4 files
  • Use Georgia fallback for body textin 39 of 690, across 4 files
  • Maintain text hierarchy and formattingin 39 of 690, across 4 files
  • Use accent colors for non-text shapesin 38 of 690, across 3 files
  • Use RGB values for precise color matchingin 38 of 690, across 3 files
  • Use brand colors for primary text and backgroundsin 36 of 690, across 1 file
  • Read product marketing context file before asking questions, starting, or auditingin 35 of 690, across 23 files
  • Use active voice instead of passive voicein 26 of 690, across 10 files
  • Implement or generate appropriate JSON-LD structured datain 24 of 690, across 17 files
  • Prioritize clarity over clevernessin 22 of 690, across 8 files

Said here and by no other author read

  • emit findings per finding schema
  • flag inline microdata or rdfa for migration
  • validate json against recognized types and required properties
  • infer missing tier-1 schema from page content
  • use a single @graph with stable @id values
  • inject missing dateModified or @id values

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.