algo-seo-schema
Implement Schema.org structured data markup in JSON-LD format for enhanced search results. Use this skill when the user needs to add rich snippets to web pages, implement FAQ/Product/Article schema, or validate structured data — even if they say 'rich snippets', 'structured data', or 'Google rich results'.
pinned to #4e7f4f8updated last month
Ask your AI client: “install skills/algo-seo-schema”.
Requires the metahub MCP server installed in your client. Set up MCP.
mh install skills/algo-seo-schemametahub onboarded this repo on the author's behalf.
If you own github.com/asgard-ai-platform/skills on GitHub, claim the listing to take over publishing. Your claim preserves the existing eval history and badges; only the curator label is replaced with verified-publisher on your next publish.
Stars
225
Last commit
last month
Latest release
published
- #ai-agent
- #anthropic
- #claude
- #claude-agent-skills
- #claude-code
- #coding-agent
- #knowledge-base
- #mcp
- #methodology
- #open-source
- #prompt-engineering
- #skills
- #taiwan
Automated checks the publisher passed at publish time — structure, docs, safety, and whether the artifact behaves as claimed.4e7f4f8· last month
Documentation
8 passed1 warningHomepage or repository declaredwarn
No homepage or repository declared.
Add a "homepage" or "repository" field to SKILL.md.
Description quality
46 words · 307 chars — "Implement Schema.org structured data markup in JSON-LD format for enhanced searc…"
README is present and substantial
33,936 chars · 20 sections · 3 code blocks
Tags / topics declared
13 total — ai-agent, anthropic, claude, claude-agent-skills, claude-code, coding-agent (+7)
README has usage / example sections
no labeled section but 3 code blocks document usage
Homepage / docs URL declared
https://vault.asgard-ai.com/skills/
Description is substantive
Description is 46 words.
Documentation present and substantive
Documentation present (SKILL.md, 562 words).
Documentation shows usage
Documentation includes 2 code examples.
Release history
1- releasecurrent4e7f4f8warnlast month
Contents
Schema.org Structured Data
Overview
Schema.org structured data provides machine-readable page context to search engines via JSON-LD. Enables rich results (stars, FAQs, breadcrumbs, product cards) in SERPs. Implementation is O(1) per page — it's a markup task, not computational.
When to Use
Trigger conditions:
- Adding rich snippet eligibility to web pages
- Implementing product, article, FAQ, HowTo, or event markup
- Debugging Google Search Console structured data errors
When NOT to use:
- When optimizing page content or keywords (use content SEO)
- When improving page speed (use Core Web Vitals optimization)
Algorithm
IRON LAW: Schema Markup Must MATCH Visible Content
Marking up content that users can't see violates Google guidelines
and risks manual penalties. Every structured data field must
correspond to content visible on the page.
Phase 1: Input Validation
Identify page type (Article, Product, FAQ, HowTo, Event, etc.). Map visible content to required and recommended schema properties. Gate: Page type identified, all required properties have visible content.
Phase 2: Core Algorithm
- Select the correct Schema.org type from the vocabulary
- Map page content to schema properties (name, description, image, etc.)
- Build JSON-LD object with @context and @type
- Handle nested types (e.g., Product contains Offer contains Price)
- Place JSON-LD in
<script type="application/ld+json">in<head>
Phase 3: Verification
Validate with Google Rich Results Test. Check: no errors, all required fields present, no mismatch with visible content. Gate: Passes Google Rich Results Test with zero errors.
Phase 4: Output
Return complete JSON-LD markup ready for insertion.
Output Format
{
"schema": {"@context": "https://schema.org", "@type": "Product", "name": "...", "offers": {"@type": "Offer", "price": "29.99", "priceCurrency": "TWD"}},
"validation": {"errors": 0, "warnings": 1, "eligible_rich_results": ["Product snippet"]}
}
Examples
Sample I/O
Input: FAQ page with 3 questions and answers Expected: FAQPage schema with 3 Question/Answer pairs in JSON-LD
Edge Cases
| Input | Expected | Why |
|---|---|---|
| Page with no clear type | Use WebPage as fallback | Most generic valid type |
| Multiple schemas needed | Array of JSON-LD objects | One page can have multiple types |
| Missing required field | Error, do not generate | Incomplete schema hurts more than none |
Gotchas
- Required vs recommended: Google requires certain fields per type. Missing required fields = schema ignored entirely. Check documentation per type.
- Nesting depth: Deeply nested schemas (Product > Offer > Seller > Address) are error-prone. Validate each nesting level.
- Schema spam: Adding schema for content not on the page (fake reviews, unavailable prices) triggers manual actions.
- Type specificity: Use the most specific type available. "Article" is better than "WebPage"; "NewsArticle" is better than "Article" for news content.
- Testing gap: Google Rich Results Test shows what Google sees, but not all valid schema triggers rich results. Eligibility ≠ guarantee of display.
References
- For complete property reference by type, see
references/type-properties.md - For common validation errors and fixes, see
references/validation-errors.md
Reviews
No reviews yet. Be the first.
Related
Verification Before Completion
Evidence before assertions, always
Writing Plans
Turn specs into phased implementation plans
Test-Driven Development
Red → green → refactor discipline for any feature or bugfix
mh install skills/algo-seo-schema