How to Use The Website Specification to Audit and Improve Your Website

Updated

The Website Specification (specification.website) is a platform-agnostic checklist of 173 technical topics a good website should cover, organised into ten categories and each linked back to an underlying standard (WHATWG, W3C, IETF RFCs, WCAG, MDN). You use it in three steps: audit your site against the checklist, read the page for any item you fail to learn what it is and how to implement it, then fix and re-check. It works whether you run WordPress, Drupal, TYPO3, Next.js, Astro, Hugo, Django, or plain HTML — the spec stays the same, and implementation hints follow it rather than the other way round.

Step 1: Audit

Run the checklist against your site. Every item is a yes/no question, so the output is a pass/fail list rather than a score.

You can do this two ways:

  • Manually — browse the topics and check each one against your site.
  • With an agent — the spec is exposed as a read-only, no-auth MCP server, so a compatible agent can query it and run the audit for you.

To connect an agent over MCP, use this configuration:

{
  "mcpServers": {
    "specification-website": {
      "transport": "http",
      "url": "https://mcp.specification.website/mcp"
    }
  }
}

There is also a published Agent Skill that teaches a compatible agent when and how to use the spec. If you prefer to pull content directly, per-page Markdown is available via /llms.txt and by sending Accept: text/markdown on any spec URL.

What to expect: a list of items your site passes and fails. Because each item is binary, you can hand the failures straight to whoever implements the fix without interpreting a score.

Step 2: Learn

Open any item you failed. Each page tells you three things: what the item is, why it matters, and how to implement it. Every topic links back to its source standard, so you can go deeper than the spec itself when you need to.

The ten categories, with topic counts, are:

Category Topics Covers
Foundations 20 HTML, head, and document basics every page needs
SEO 14 robots.txt, sitemaps, canonicals, structured data
Accessibility 30 WCAG-aligned rules so people of all abilities can use the site
Security 20 Headers, transport, and policies that keep visitors safe
Well-Known URIs 13 Standard agreed-upon paths under /.well-known/
Agent Readiness 22 Making a site legible to AI agents and crawlers
Performance 26 Core Web Vitals, caching, images, fonts, network behaviour
Privacy 7 Consent, signals, and respecting visitor choice
Resilience 8 Error pages, offline behaviour, redirects
Internationalisation 13 Language and locale handling

If you are new to the spec, start with the categories where a failure has the widest blast radius — Security and Accessibility — then work outward. The spec is also actively maintained: recent additions include auth.md agent registration guidance, a page on status messages, and a page on /.well-known/gpc.json, so it is worth re-checking the changelog before a fresh audit.

Step 3: Improve and re-check

Fix what is missing, then run the checklist again. Re-auditing after changes is what turns the spec from a reading exercise into a working process — the same yes/no items give you a clean before-and-after.

Two things make this easier:

  • Every page has an "Edit on GitHub" link. If a topic is unclear or you spot a gap, you can contribute a fix directly. The spec is built in the open under an MIT licence, and sources are credited on every page.
  • The spec is platform-agnostic by design. Implementation hints follow the standard, not a particular CMS or framework, so a fix you make in Next.js and a fix you make in Drupal are both judged against the same item.

Choosing how to run it

Approach Best when Trade-off
Manual checklist You want to understand each item as you go Slower on a large site
Agent via MCP You want a fast first pass across many pages You still need to read the item pages to fix failures

Either way, the loop is the same: audit, learn, improve, re-check.