Files
our-claude-skills/custom-skills/13-seo-schema-validator/desktop/SKILL.md
Andrew Yim d1cd1298a8 feat(reference-curator): Add pipeline orchestrator and refactor skill format
Pipeline Orchestrator:
- Add 07-pipeline-orchestrator skill with code/CLAUDE.md and desktop/SKILL.md
- Add /reference-curator-pipeline slash command for full workflow automation
- Add pipeline_runs and pipeline_iteration_tracker tables to schema.sql
- Add v_pipeline_status and v_pipeline_iterations views
- Add pipeline_config.yaml configuration template
- Update AGENTS.md with Reference Curator Skills section
- Update claude-project files with pipeline documentation

Skill Format Refactoring:
- Extract YAML frontmatter from SKILL.md files to separate skill.yaml
- Add tools/ directories with MCP tool documentation
- Update SKILL-FORMAT-REQUIREMENTS.md with new structure
- Add migrate-skill-structure.py script for format conversion

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 01:01:02 +07:00

113 lines
2.7 KiB
Markdown

# SEO Schema Validator
## Purpose
Extract and validate structured data (JSON-LD, Microdata, RDFa) against schema.org vocabulary and Google Rich Results requirements.
## Core Capabilities
1. **Extract** - Find all structured data on page
2. **Parse** - JSON-LD, Microdata, RDFa formats
3. **Validate** - Schema.org compliance
4. **Rich Results** - Google eligibility check
## MCP Tool Usage
```
mcp__firecrawl__scrape: Extract page HTML with structured data
mcp__perplexity__search: Research schema requirements
```
## Workflow
1. Scrape target URL
2. Locate structured data blocks
3. Parse each format found
4. Validate against schema.org
5. Check Rich Results eligibility
6. Report issues and recommendations
## Supported Schema Types
| Type | Required Properties | Rich Result |
|------|---------------------|-------------|
| Article | headline, author, datePublished, image | Yes |
| Product | name, offers (price, availability) | Yes |
| LocalBusiness | name, address, telephone | Yes |
| FAQPage | mainEntity (questions) | Yes |
| Organization | name, url, logo | Sitelinks |
| BreadcrumbList | itemListElement | Yes |
| WebSite | name, url, potentialAction | Sitelinks |
| Review | itemReviewed, reviewRating | Yes |
| Event | name, startDate, location | Yes |
| Recipe | name, image, ingredients | Yes |
## Validation Levels
### Level 1: Syntax
- Valid JSON structure
- Proper nesting
- No parsing errors
### Level 2: Vocabulary
- Valid @type values
- Known property names
- Correct value types
### Level 3: Rich Results
- Required properties present
- Recommended properties
- Google-specific requirements
## Output Format
```markdown
## Schema Validation: [URL]
### Schemas Found: X
#### Schema 1: [Type]
- Format: JSON-LD
- Valid: Yes/No
- Rich Results Eligible: Yes/No
**Issues:**
- [Error/Warning list]
**Properties:**
| Property | Present | Valid |
|----------|---------|-------|
### Summary
- Valid: X
- Invalid: X
- Rich Results Ready: X
### Recommendations
1. [Fixes needed]
```
## Common Issues
| Issue | Severity | Fix |
|-------|----------|-----|
| Missing required property | Error | Add property |
| Invalid date format | Error | Use ISO 8601 |
| Missing @context | Error | Add schema.org context |
| No image property | Warning | Add image URL |
## Limitations
- Cannot test rendered schema (JavaScript)
- Validation against schema.org, not all Google features
- Use Google Rich Results Test for final verification
## Notion Output (Required)
All audit reports MUST be saved to OurDigital SEO Audit Log:
- **Database ID**: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef`
- **Properties**: Issue (title), Site (url), Category, Priority, Found Date, Audit ID
- **Language**: Korean with English technical terms
- **Audit ID Format**: [TYPE]-YYYYMMDD-NNN