schema.org markup for a whole site
Claude turns your site's markup into one graph: the organization is declared once and pages point to it.
Version 1.0.0 · · MIT license
Add schema.org structured data to the whole site
- Found
- pass
- 7 JSON-LD blocks across 4 page types
- Organization
- pass
- Declared once: /#organization
- @id references
- pass
- 23 of 23 resolve to a declared node
- FAQPage
- pass
- Questions match the text on the page
- Rich Results Test
- not run
- Needs a browser: 4 URLs to check listed below
The graph lives in lib/seo.ts, with generators for 4 page types.
Install and run
Install the skill
Paste into a terminal: the command unpacks the skill into ~/.claude/skills/. Then restart Claude Code.
mkdir -p ~/.claude/skills curl -fsSL https://brusnica.dev/skills/schema-graph.skill -o /tmp/schema-graph.skill unzip -o /tmp/schema-graph.skill -d ~/.claude/skills/For one project only, unpack it into .claude/skills/ inside that project.
Ask Claude
- Add schema.org structured data to this site
- Our Organization schema differs on every page — fix it
- Audit the JSON-LD and tie it into one graph
The skill loads on its own when a task matches. Your own words work.
What the skill does
Every real thing — the company, the website, a service, a product — is one node with a stable @id, and other blocks point to it. The skill finds existing markup (SEO plugins included), sets up a module with the site's entities, writes generators for services, products, articles, FAQs and breadcrumbs, and checks that every @id reference leads to a node.
One organization, site-wide
Organization and WebSite are declared once on the home page, no duplicates.
From the data the page shows
Prices, FAQs and breadcrumbs come from the layout's source, so they never drift.
Graph links checked
After the build, the skill checks that every @id reference leads to a node.
You'll need
- Claude Code opened in the project folder
- A Next.js, Astro, WordPress or static-generator site
- Python 3 or Node to check the HTML
Good to know
Search engines show rich results at their discretion: markup doesn't guarantee them. The Rich Results Test and Schema Markup Validator open in a browser; the skill gives you the URLs.
Read SKILL.md before installing, it's plain text. A skill runs with your files and network.
Common questions
An organization declared on every page with different details looks like several companies. In a graph there's one, and pages point to it via @id.
No. It extends the plugin's graph through filters instead of adding a second organization.
It's one signal: an assistant can more easily cite a company whose details form one entity. Nobody can guarantee results.
Yes, it's MIT-licensed: use, change and share it, keeping the copyright notice.
Want the result rather than the skill?
We'll run the audit and make the fixes ourselves: SEO, GEO, structured data, speed — on your site or a new Next.js one.