PluginBench
Skill
Review
Audit score 70

seo-schema

agricidaniel/claude-seo

Detect, validate, and generate Schema.org structured data for rich search results and AI overviews.

What is seo-schema?

Scans pages for JSON-LD, Microdata, and RDFa markup; validates against Google's current schema requirements; and generates ready-to-use structured data templates. Use when optimizing for rich results, AI Mode entity resolution, or implementing schema markup.

  • Detect JSON-LD, Microdata, and RDFa markup on any page
  • Validate schema against Google's supported rich result types and required properties
  • Flag deprecated schema types with retirement dates and recommended replacements
  • Generate valid JSON-LD templates for 20+ active schema types (Organization, Article, LocalBusiness, Product, Event, etc.)
  • Check for common errors: missing @context, invalid @type, relative URLs, placeholder text, invalid date formats
  • Output SCHEMA-REPORT.md with validation results and generated-schema.json with implementation-ready code

How to install seo-schema

npx skills add https://github.com/agricidaniel/claude-seo --skill seo-schema
Claude Code
Cursor
Windsurf
Cline

How to use seo-schema

  1. 1.Provide a URL or page content to analyze
  2. 2.The skill scans for existing JSON-LD, Microdata, and RDFa markup
  3. 3.Review the validation report for errors, deprecated types, and missing opportunities
  4. 4.Use generated JSON-LD templates to implement or fix schema markup
  5. 5.Deploy the corrected markup to your page's initial HTML (not JavaScript-injected for time-sensitive types)

Use cases

Good for
  • Audit existing schema markup on a website and identify validation errors or deprecated types
  • Generate JSON-LD for a new blog post, product page, or local business listing
  • Verify that Product and Offer markup is in server-rendered HTML (not JavaScript-injected) for timely Google processing
  • Replace retired schema types (HowTo, FAQPage, SpecialAnnouncement) with current alternatives
  • Implement structured data for AI Overviews and entity resolution on Q&A or profile pages
Who it's for
  • SEO specialists optimizing for rich results and Google Search features
  • Content creators adding schema markup to blog posts and articles
  • E-commerce teams implementing Product and Offer structured data
  • Local business owners setting up LocalBusiness and Organization markup
  • Developers building schema validation into content workflows

seo-schema FAQ

What's the difference between JSON-LD, Microdata, and RDFa?

JSON-LD is Google's stated preference and is easiest to implement as a script tag. Microdata uses HTML attributes (itemscope, itemprop). RDFa uses typeof and property attributes. This skill detects all three but recommends JSON-LD for new implementations.

Is FAQPage still useful after Google retired it in May 2026?

FAQPage no longer generates a rich result in Google Search, but the markup still aids AI Mode and AI Overviews for entity resolution. For genuine user Q&A pages, use QAPage instead. Existing FAQPage markup is flagged as Info-level, not Critical.

Why does the skill recommend server-rendered JSON-LD over JavaScript-injected markup?

Per Google's December 2025 JS SEO guidance, structured data injected via JavaScript may face delayed processing. For time-sensitive markup (Product, Offer), include JSON-LD in the initial server-rendered HTML to ensure timely indexing.

What schema types are currently active and recommended?

Active types include Organization, LocalBusiness, Product, Article, BlogPosting, Event, JobPosting, Review, BreadcrumbList, VideoObject, and 10+ others. See the skill's schema-types.md reference for the complete list. Deprecated types (HowTo, FAQPage, SpecialAnnouncement, CourseInfo) are flagged with retirement dates.

Can I use placeholder text in generated schema?

Yes, the skill marks placeholders clearly (e.g., [Company Name], [Phone]) for you to fill in. Never deploy schema with unfilled placeholders or false data; validation will catch these before output.

Full instructions (SKILL.md)

Source of truth, from agricidaniel/claude-seo.


name: seo-schema description: > Detect, validate, and generate Schema.org structured data. JSON-LD format preferred. Use when user says "schema", "structured data", "rich results", "JSON-LD", or "markup". user-invocable: true argument-hint: "[url]" license: MIT metadata: author: AgriciDaniel version: "2.2.0" category: seo

Schema Markup Analysis & Generation

Detection

  1. Scan page source for JSON-LD <script type="application/ld+json">
  2. Check for Microdata (itemscope, itemprop)
  3. Check for RDFa (typeof, property)
  4. Always recommend JSON-LD as primary format (Google's stated preference)

Validation

  • Check required properties per schema type
  • Validate against Google's supported rich result types
  • Test for common errors:
    • Missing @context
    • Invalid @type
    • Wrong data types
    • Placeholder text
    • Relative URLs (should be absolute)
    • Invalid date formats
  • Flag deprecated types (see below)

Schema Type Status (as of May 2026)

Read references/schema-types.md for the full list. Key rules:

ACTIVE (recommend freely):

Organization, LocalBusiness, SoftwareApplication, WebApplication, Product (with Certification markup as of April 2025), ProductGroup, Offer, Service, Article, BlogPosting, NewsArticle, Review, AggregateRating, BreadcrumbList, WebSite, WebPage, Person, ProfilePage, ContactPage, VideoObject, ImageObject, Event, JobPosting, Course, DiscussionForumPosting

VIDEO & SPECIALIZED (recommend freely):

BroadcastEvent, Clip, SeekToAction, SoftwareSourceCode

See schema/templates.json for ready-to-use JSON-LD templates for these types.

JSON-LD and JavaScript rendering: Per Google's December 2025 JS SEO guidance, structured data injected via JavaScript may face delayed processing. For time-sensitive markup (especially Product, Offer), include JSON-LD in the initial server-rendered HTML.

NO RICH RESULTS — KEEP FOR AI:

  • FAQPage: Google retired FAQ rich results for ALL sites on May 7, 2026 (supersedes the Aug 2023 gov/health restriction). No SERP feature anymore — but flag existing FAQPage at Info (not Critical), since the markup still aids AI Mode / AI Overviews entity resolution. For genuine user Q&A pages, use QAPage.

DEPRECATED (never recommend):

  • HowTo: Rich results removed September 2023
  • SpecialAnnouncement: Deprecated July 31, 2025
  • CourseInfo, EstimatedSalary, LearningVideo: Retired June 2025
  • ClaimReview: Retired from rich results June 2025
  • VehicleListing: Retired from rich results June 2025
  • Practice Problem: Retired from rich results late 2025
  • Dataset: Retired from rich results late 2025
  • Book Actions: Deprecated then reversed, still functional as of Feb 2026 (historical note)

Generation

When generating schema for a page:

  1. Identify page type from content analysis
  2. Select appropriate schema type(s)
  3. Generate valid JSON-LD with all required + recommended properties
  4. Include only truthful, verifiable data. Use placeholders clearly marked for user to fill
  5. Validate output before presenting

Common Schema Templates

Organization

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "[Company Name]",
  "url": "[Website URL]",
  "logo": "[Logo URL]",
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "[Phone]",
    "contactType": "customer service"
  },
  "sameAs": [
    "[Facebook URL]",
    "[LinkedIn URL]",
    "[Twitter URL]"
  ]
}

LocalBusiness

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "[Business Name]",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "[Street]",
    "addressLocality": "[City]",
    "addressRegion": "[State]",
    "postalCode": "[ZIP]",
    "addressCountry": "US"
  },
  "telephone": "[Phone]",
  "openingHours": "Mo-Fr 09:00-17:00",
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "[Lat]",
    "longitude": "[Long]"
  }
}

Article/BlogPosting

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "[Title]",
  "author": {
    "@type": "Person",
    "name": "[Author Name]"
  },
  "datePublished": "[YYYY-MM-DD]",
  "dateModified": "[YYYY-MM-DD]",
  "image": "[Image URL]",
  "publisher": {
    "@type": "Organization",
    "name": "[Publisher]",
    "logo": {
      "@type": "ImageObject",
      "url": "[Logo URL]"
    }
  }
}

Output

  • SCHEMA-REPORT.md: detection and validation results
  • generated-schema.json: ready-to-use JSON-LD snippets

Validation Results

SchemaTypeStatusIssues
......✅/⚠️/❌...

Recommendations

  • Missing schema opportunities
  • Validation fixes needed
  • Generated code for implementation

Error Handling

ScenarioAction
URL unreachableReport connection error with status code. Suggest verifying URL and checking if the page requires authentication.
No schema markup foundReport that no JSON-LD, Microdata, or RDFa was detected. Recommend appropriate schema types based on page content analysis.
Invalid JSON-LD syntaxParse and report specific syntax errors (missing brackets, trailing commas, unquoted keys). Provide corrected JSON-LD output.
Deprecated schema type detectedFlag the deprecated type with its retirement date. Recommend the current replacement type or advise removal if no replacement exists.