Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/AgricIDaniel/claude-seo/llms.txt

Use this file to discover all available pages before exploring further.

/seo schema is a three-phase command: it detects all existing structured data on a page (JSON-LD, Microdata, and RDFa), validates each block against Google’s supported rich result types and required property lists, and then generates ready-to-use JSON-LD for any missing opportunities. Every audit distinguishes active types (recommend freely), types with no rich results but AI value (keep with a note), and deprecated types (flag for removal). Claude SEO always recommends JSON-LD as the primary format — it is Google’s stated preference and the cleanest to validate and maintain.

Syntax

/seo schema <url>
Example:
/seo schema https://example.com

What It Does

1

Detect

Scans the page source for all three structured data formats:
  • JSON-LD blocks inside <script type="application/ld+json">
  • Microdata attributes (itemscope, itemprop, itemtype)
  • RDFa attributes (typeof, property, resource)
For SPA sites, --mode always is preferred — many frameworks (React Helmet, Next/Head, vue-meta) inject JSON-LD client-side, leaving raw HTML empty of structured data. Comparing raw_content vs content confirms whether schema is server-rendered.
2

Validate

Each detected block is checked against Google’s requirements:
  • @context is https://schema.org (not http)
  • @type is a valid, non-deprecated type
  • All required properties are present for the type
  • Property values match expected types (text, URL, date, number)
  • No placeholder text (e.g., "[Business Name]")
  • All URLs are absolute (not relative)
  • Dates are in ISO 8601 format
The dual validator checks both the Rich Results Test and the Schema Markup Validator for comprehensive coverage.
3

Identify gaps

Based on page content analysis, the audit identifies schema types that are missing but applicable — an Article page without Article schema, a product page without AggregateRating, a local business without LocalBusiness.
4

Generate JSON-LD

For every gap and every validation failure, Claude SEO produces ready-to-use JSON-LD using only truthful, verifiable data. Placeholders are clearly marked for the user to fill. Output is written to SCHEMA-REPORT.md and generated-schema.json.

Active Schema Types

All types below are currently supported by Google for rich results or AI entity resolution. Use them freely.
  • Organization — company identity, sameAs links, logo, contact
  • LocalBusiness — physical or service-area business with geo coordinates and opening hours
  • Person — individual with credentials, affiliations, sameAs
  • ProfilePage — profile pages for authors or public figures (new in v2)
  • ContactPage — dedicated contact pages
  • WebSite — sitelinks search box, site-wide identity
  • WebPage — general page metadata

Deprecated Types

The following Schema.org types no longer produce rich results in Google Search and should not be added to new pages. Existing implementations of some types should be flagged and migrated.
TypeRetiredWhat to Do
HowToSeptember 2023Remove or keep for AI citation legibility only — no SERP effect. Use clear H2 step headings instead.
FAQPageMay 7, 2026No rich results for any site as of this date. Flag existing FAQPage as Info (not Critical) — the markup still aids AI Mode and AI Overviews entity resolution. Do not recommend removal; do not add new FAQPage for SERP benefit. Use QAPage for genuine user-submitted Q&A.
SpecialAnnouncementJuly 31, 2025Remove entirely. Use Event for time-bounded announcements; Article or WebPage otherwise.
CourseInfo carouselJune 2025The carousel variant is retired. The single-result Course rich card is still live.
EstimatedSalary / OccupationalAggregateRatingJune 2025Use JobPosting with baseSalary for specific roles.
LearningVideoJune 2025Use VideoObject (the generic video rich result still renders).
ClaimReviewJune 2025No replacement. The fact-check rich result was its only consumer.
VehicleListing / VehicleJune 2025Use Product with vehicle-specific properties for items sold online.

E-Commerce Schema (v2)

Version 2 added a dedicated e-commerce schema validator that checks beyond base Product and Offer validity:
PropertyWhat It Validates
hasMerchantReturnPolicyReturns policy schema with returnPolicyCategory, merchantReturnDays, returnMethod
shippingDetailsOfferShippingDetails with shippingRate, deliveryTime, shippingDestination
MemberProgramLoyalty programme linkage for eligible products
energyEfficiencyClassEU energy label compliance for applicable product categories
ProductGroup variantsVariant-level variesBy assertions (size, color, material) with per-variant Offer
Run python3 scripts/schema_ecommerce_validate.py <url> directly to validate e-commerce schema in isolation.

Sample Output

Below is a verbatim excerpt from a real /seo schema https://rankenstein.pro/about audit showing the detection and validation tables:
# Schema Markup Report: rankenstein.pro/about

**URL:** https://rankenstein.pro/about
**Date:** 2026-02-09
**Format Detected:** JSON-LD (3 blocks) | No Microdata | No RDFa

---

## Summary

| Metric | Value |
|--------|-------|
| **JSON-LD Blocks** | 3 |
| **Schema Types** | Organization, WebSite, SoftwareApplication |
| **Critical Issues** | 2 |
| **Warnings** | 5 |
| **Passed Checks** | 18 |
| **Overall Grade** | B+ (solid foundation, actionable gaps) |

---

## Existing Schema Validation

### 1. Organization (`@id: #organization`)

| Property | Value | Status | Notes |
|----------|-------|--------|-------|
| `@context` | https://schema.org | Valid | |
| `@type` | Organization | Valid | Active type |
| `@id` | https://rankenstein.pro#organization | Good | Enables cross-referencing |
| `name` | Rankenstein | Valid | |
| `description` | Present, 200+ chars | Good | Descriptive and keyword-rich |
| `url` | https://rankenstein.pro | Valid | Absolute URL |
| `logo` | ImageObject with @id, url, width, height, caption | Excellent | Well-structured |
| `foundingDate` | "2024" | Imprecise | Year-only accepted but ISO 8601 preferred |
| `areaServed` | "Worldwide" | Text | Works but GeoShape is more semantic |
| `contactPoint` | email + contactType | Valid | Consider adding telephone |
| `founder` | 1 Person (Daniel Agrici) | Incomplete | Page describes two co-founders; second missing |
| `sameAs` | 5 social profiles | Good | GitHub, X, LinkedIn, YouTube, Reddit |
| `knowsAbout` | 6 topics | Good | Relevant topical signals |

**Critical Issue:** The `founder` property only includes Daniel Agrici.
Benjamin Samar (Co-Founder & Technical Director) is displayed on the page
but absent from the schema. This creates a content-schema mismatch that
can confuse search engines.

JavaScript Rendering Note

Per Google’s December 2025 JavaScript SEO guidance, structured data injected via JavaScript may face delayed processing. For time-sensitive markup — especially Product, Offer, and AggregateRating on e-commerce pages — include the JSON-LD block in the initial server-rendered HTML rather than relying on client-side injection.

Output Files

  • SCHEMA-REPORT.md — detection results, per-block validation tables, missing opportunity analysis, and replacement guidance for deprecated types
  • generated-schema.json — ready-to-use JSON-LD snippets for every identified gap, with clearly marked placeholders

Google API Enrichment

When Google Search Console credentials are configured (Tier 1), /seo schema cross-references schema issues against live rich result impressions in GSC to show which schema problems are actively costing Rich Result appearances.

Build docs developers (and LLMs) love