All SEO (10-18) and GTM (20-21) skills now require saving reports to: - Database: OurDigital SEO Audit Log (2c8581e5-8a1e-8035-880b-e38cefc2f3ef) - Format: Korean content with English technical terms - Audit ID: [TYPE]-YYYYMMDD-NNN Updated files: - 9 SEO skills (code/CLAUDE.md + desktop/SKILL.md) - 2 GTM skills (code/CLAUDE.md + desktop/SKILL.md) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3.7 KiB
3.7 KiB
CLAUDE.md
Overview
Schema markup generator: create JSON-LD structured data from templates for various content types.
Quick Start
pip install -r scripts/requirements.txt
# Generate Organization schema
python scripts/schema_generator.py --type organization --url https://example.com
# Generate from template
python scripts/schema_generator.py --template templates/article.json --data article_data.json
Scripts
| Script | Purpose |
|---|---|
schema_generator.py |
Generate schema markup |
base_client.py |
Shared utilities |
Supported Schema Types
| Type | Template | Use Case |
|---|---|---|
| Organization | organization.json |
Company/brand info |
| LocalBusiness | local_business.json |
Physical locations |
| Article | article.json |
Blog posts, news |
| Product | product.json |
E-commerce items |
| FAQPage | faq.json |
FAQ sections |
| BreadcrumbList | breadcrumb.json |
Navigation path |
| WebSite | website.json |
Site-level info |
Usage Examples
Organization
python scripts/schema_generator.py --type organization \
--name "Company Name" \
--url "https://example.com" \
--logo "https://example.com/logo.png"
LocalBusiness
python scripts/schema_generator.py --type localbusiness \
--name "Restaurant Name" \
--address "123 Main St, City, State 12345" \
--phone "+1-555-123-4567" \
--hours "Mo-Fr 09:00-17:00"
Article
python scripts/schema_generator.py --type article \
--headline "Article Title" \
--author "Author Name" \
--published "2024-01-15" \
--image "https://example.com/image.jpg"
FAQPage
python scripts/schema_generator.py --type faq \
--questions questions.json
Output
Generated JSON-LD ready for insertion:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Company Name",
"url": "https://example.com",
"logo": "https://example.com/logo.png"
}
</script>
Template Customization
Templates in templates/ can be modified. Required fields are marked:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "{{REQUIRED}}",
"author": {
"@type": "Person",
"name": "{{REQUIRED}}"
},
"datePublished": "{{REQUIRED}}",
"image": "{{RECOMMENDED}}"
}
Validation
Generated schemas are validated before output:
- Syntax correctness
- Required properties present
- Schema.org vocabulary compliance
Use skill 13 (schema-validator) for additional validation.
Dependencies
jsonschema>=4.21.0
requests>=2.31.0
python-dotenv>=1.0.0
Notion Output (Required)
IMPORTANT: All audit reports MUST be saved to the OurDigital SEO Audit Log database.
Database Configuration
| Field | Value |
|---|---|
| Database ID | 2c8581e5-8a1e-8035-880b-e38cefc2f3ef |
| URL | https://www.notion.so/dintelligence/2c8581e58a1e8035880be38cefc2f3ef |
Required Properties
| Property | Type | Description |
|---|---|---|
| Issue | Title | Report title (Korean + date) |
| Site | URL | Audited website URL |
| Category | Select | Technical SEO, On-page SEO, Performance, Schema/Structured Data, Sitemap, Robots.txt, Content, Local SEO |
| Priority | Select | Critical, High, Medium, Low |
| Found Date | Date | Audit date (YYYY-MM-DD) |
| Audit ID | Rich Text | Format: [TYPE]-YYYYMMDD-NNN |
Language Guidelines
- Report content in Korean (한국어)
- Keep technical English terms as-is (e.g., SEO Audit, Core Web Vitals, Schema Markup)
- URLs and code remain unchanged
Example MCP Call
mcp-cli call notion/API-post-page '{"parent": {"database_id": "2c8581e5-8a1e-8035-880b-e38cefc2f3ef"}, "properties": {...}}'