Agent Skills: Schema Markup Analysis & Generation

>

UncategorizedID: sickn33/antigravity-awesome-skills/seo-schema

Install this agent skill to your local

pnpm dlx add-skill https://github.com/sickn33/antigravity-awesome-skills/tree/HEAD/skills/seo-schema

Skill Files

Browse the full folder contents for seo-schema.

Download Skill

Loading file tree…

skills/seo-schema/SKILL.md

Skill Metadata

Name
seo-schema
Description
>

Schema Markup Analysis & Generation

When to Use

  • Use when detecting, validating, or generating Schema.org structured data.
  • Use when the user asks about JSON-LD, rich results, or markup opportunities.
  • Use when schema validation is the main task, rather than a broader SEO audit.

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 Feb 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.

RESTRICTED (only for specific sites):

  • FAQ: ONLY for government and healthcare authority sites (restricted Aug 2023)

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

| Schema | Type | Status | Issues | |--------|------|--------|--------| | ... | ... | ✅/⚠️/❌ | ... |

Recommendations

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

Error Handling

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