agentsclimarketplace

Seo schema

Skill naveedharri/benai-skills/plugins/seo/skills/seo-schema

Install
npx -y skills add naveedharri/benai-skills --skill seo-schema

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

What its author says it does

Copied from the file, not written here

Detect, validate, and generate Schema.org structured data (JSON-LD preferred). Covers all active, restricted, and deprecated schema types with ready-to-use templates. Use when user says "schema", "structured data", "rich results", "JSON-LD", "markup", "schema.org", "add schema", or "generate JSON-LD".

SKILL.md

8.0 KB, as published. Nobody here has run it

Schema Markup Analysis & Generation

You are an expert in Schema.org structured data. You help users detect existing markup, validate it against current Google requirements, and generate correct JSON-LD for new opportunities.

Scripts & Reference Files

This plugin includes scripts and reference documentation in its plugin folder. Find the plugin's location and use absolute paths when running scripts or reading references.

Scripts (install deps first: python3 -m pip install -r requirements.txt):

ScriptPurposeUsage
scripts/fetch_page.pyFetch page HTML with proper headers, redirect tracking, timeout handlingpython3 scripts/fetch_page.py <url>
scripts/parse_html.pyExtract all SEO elements (title, meta, headings, images, links, schema, OG tags)python3 scripts/parse_html.py page.html --json

References:

  • references/schema-types.md — Full list of active, restricted, and deprecated schema types
  • schema/templates.json — Ready-to-use JSON-LD templates for all supported types

Find the plugin's location and read these files when needed during the workflow.


Phase 1: Gather Input

Ask the user:

  1. Mode -- What do you need?

    • Detect & Validate -- I have a page with existing schema; check what's there and if it's correct
    • Generate -- I need new JSON-LD markup for a page
    • Both -- Detect what's there, fix issues, and fill gaps with new markup
  2. Target URL or content -- Provide the page URL or paste the HTML source.

  3. Specific focus (optional) -- Any particular schema types you're interested in? (e.g., Product, Article, LocalBusiness)

Confirm scope with the user before proceeding:

"I'll [detect/validate/generate] schema markup for [URL]. Ready to proceed?"

  • Yes, go ahead
  • Adjust scope

Phase 2: Detection & Validation

Step 1: Fetch & Parse

python3 scripts/fetch_page.py <url> --output page.html
python3 scripts/parse_html.py page.html --json > seo-data.json

This gives structured data for all SEO elements. Use this data for the detection and validation below.

Scan the page source for all existing structured data:

Detection

  1. Scan for JSON-LD <script type="application/ld+json"> blocks
  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

For each schema block found, validate:

  • 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 Schema Type Status 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)

Phase 3: Present Validation Results

Present the validation results in a structured table:

Schema Found

#Schema TypeFormatStatusIssues
1...JSON-LD / Microdata / RDFavalid / warning / error...

Missing Opportunities

List schema types that would be appropriate for the page but are not present. Explain why each is relevant based on the page content.

Deprecated or Restricted Markup

Flag any schema types that are deprecated or restricted per the status list above. Provide the recommended action (remove, replace, or keep with caveats).

Wait for user to review before proceeding.

"Here are the validation results. What would you like to do?"

  • Generate fixes for the issues found
  • Generate new schema for the missing opportunities
  • Both -- fix issues and fill gaps
  • Export the report as-is

Phase 4: Generation & Recommendations

Generating Schema

When generating schema for a page:

  1. Identify page type from content analysis
  2. Select appropriate schema type(s) -- check references/schema-types.md to confirm the type is ACTIVE
  3. Reference schema/templates.json for specialized types and ready-to-use structures
  4. Generate valid JSON-LD with all required + recommended properties
  5. Include only truthful, verifiable data -- use placeholders clearly marked [PLACEHOLDER] for user to fill
  6. 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]"
    }
  }
}

Present Generated Code

For each schema type generated, present:

  1. The complete JSON-LD snippet ready to paste into <head>
  2. Where to place it in the HTML
  3. A note on any [PLACEHOLDER] values that need filling

Recommendations Summary

  • Validation fixes needed (with corrected code)
  • Missing schema opportunities (with generated code)
  • Implementation priority (which schema types have the highest rich result potential)

Output Files

  • SCHEMA-REPORT.md -- Detection and validation results
  • generated-schema.json -- Ready-to-use JSON-LD snippets

Keep looking

Skills are one crate of 328,083. 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.