technical seo · ai systems · full-stack · writing

Search didn't die. It multiplied.

Nineteen years of technical SEO, now spanning every surface a machine reads. Strategy through production code — one person, no handoffs.

the thesis

The readers multiplied — Google, answer engines, agents. Legibility stopped being marketing and became an engineering discipline.

one person

strategy through production code — the scoping call and the commits are the same hands

instrumented

claims on this site are measured by the site; nothing is an adjective

reference build

the stack you're reading is the portfolio piece — inspect any layer

three doors

capability index

the practice — why one person

It's just me, and that's the design. The agency model has a quiet flaw: the senior person who wins the work is rarely the person who does it. You're sold expertise and delivered juniors, and your messages travel through an account manager to someone you'll never meet.

Here, the person who diagnoses the problem is the person who implements the fix and the person who answers your email. No relay, no translation layer. When a project genuinely needs a skill outside mine, I bring in specific people I've worked with for years — and stay your single point of contact throughout.

And I'll tell you the truth. If your budget is better spent somewhere other than where you assumed, I'll say so. If a fashionable tactic won't survive your situation, I'll say so. Nineteen years in, the reputation is worth more than any single piece of work.

in practice since 2007

auditor · fractional head of search · embedded lead

hersham, uk · london · remote (uk & us)

read by me · shipped by me · answered by me

the whole story — from a supermarket checkout →

the machine lens — what the readers read

same payload · three real representations · nothing mocked

01rendered htmlstructured data, served on every route
<!-- served in the document on every route.
     formatted here for reading — the wire version is minified.
     checking view-source? this exhibit's own copy appears
     entity-escaped there (&quot;) — HTML law for showing markup
     inside markup. the live tag nearby is the real, clean one. -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Person",
      "@id": "https://jamiemckaye.com/#jamie",
      "name": "Jamie McKaye",
      "url": "https://jamiemckaye.com",
      "jobTitle": "Technical SEO consultant & full-stack developer",
      "description": "Technical SEO, AI systems, full-stack build, technical writing — strategy through production code, one person, no handoffs. In practice since 2007.",
      "alumniOf": {
        "@type": "CollegeOrUniversity",
        "name": "University of Bath"
      },
      "address": {
        "@type": "PostalAddress",
        "addressLocality": "Hersham",
        "addressRegion": "Surrey",
        "addressCountry": "GB"
      },
      "sameAs": [
        "https://www.linkedin.com/in/jamieseo",
        "https://medium.com/@jmckaye"
      ],
      "knowsAbout": [
        "Technical SEO",
        "AI search optimisation",
        "Generative engine optimisation",
        "AI citation mechanics",
        "Agent readiness",
        "Log-file analysis",
        "Site migrations",
        "JavaScript rendering and hydration",
        "Core Web Vitals engineering",
        "Schema and structured data architecture",
        "Crawl-budget optimisation",
        "AI systems",
        "Model Context Protocol",
        "Full-stack web development",
        "Technical writing"
      ],
      "email": "jamie@jamiemckaye.com"
    },
    {
      "@type": "WebSite",
      "@id": "https://jamiemckaye.com/#site",
      "url": "https://jamiemckaye.com",
      "name": "jamiemckaye.com",
      "description": "The instrument — technical SEO, AI systems, full-stack build, and technical writing, with live proof.",
      "publisher": {
        "@id": "https://jamiemckaye.com/#jamie"
      }
    }
  ]
}
</script>

verify: view-source on any route

02markdown mirrorthe whole site, plain text
# Jamie McKaye — technical consultant who ships

> jamiemckaye.com — technical consultant who ships. Markdown mirror of https://jamiemckaye.com/ (canonical). Mirrors index: https://jamiemckaye.com/md/

- jamiemckaye.com is the site of Jamie McKaye, a technical consultant who ships.
- One-person practice, in operation since 2007 (nineteen years across search, systems, and production code). The person who scopes the work is the person whose commits you can read. No handoffs, no account managers.
- Thesis: search didn't die, it multiplied — Google, answer engines, agents. Legibility to machines became an engineering discipline.
- Based in Hersham, Surrey, UK; works London and remote (UK & US).
- Education: BSc (Hons) Marketing, first-class honours, University of Bath (2004–2007).

## Mirrors
- https://jamiemckaye.com/md/work/
- https://jamiemckaye.com/md/services/
- https://jamiemckaye.com/md/about/
- https://jamiemckaye.com/md/writing/
- https://jamiemckaye.com/md/lab/
- https://jamiemckaye.com/md/contact/
- https://jamiemckaye.com/md/services/technical-seo/
- https://jamiemckaye.com/md/services/ai-systems/
- https://jamiemckaye.com/md/services/full-stack-build/
- https://jamiemckaye.com/md/services/technical-writing/

## Machine surfaces
- Grader API: POST https://jamiemckaye.com/api/grade/ {"url":"https://example.com"}
- MCP server: https://jamiemckaye.com/api/mcp/ (grade_site, site_map, ask_concierge, request_engagement, contact_channel)
- Concierge: POST https://jamiemckaye.com/api/concierge/ {"question":"..."}
- llms.txt: https://jamiemckaye.com/llms.txt

served live at /md/open the live surface →

03mcp · site mapthe manifest agents fetch
# Jamie McKaye — technical consultant who ships

> One-person practice, in operation since 2007: technical SEO, AI systems,
> full-stack build, and technical writing — strategy through production code,
> no handoffs. This site is built to be read by machines as well as people;
> claims publish only once the numbers behind them are verified.

## Pages

- [Home](https://jamiemckaye.com/): the thesis — search didn't die, it multiplied
- [Work](https://jamiemckaye.com/work/): the registry — named campaigns for Nike, Pitney Bowes, and Urban Outfitters; products built and shipped; sealed engagements; verified readouts (one on record: a UK tile retailer's server response taken from 2.2 s to 47 ms)
- [Services](https://jamiemckaye.com/services/): technical SEO & AI search, AI systems, full-stack build, technical writing
- [About](https://jamiemckaye.com/about/): the operator — four disciplines, one pair of hands
- [Writing](https://jamiemckaye.com/writing/): field notes plus the recordings — the 31 best archive pieces re-instrumented at their original URLs, each with a rendered plate and (rolling out) an audio reading in the author's own cloned voice (RSS at https://jamiemckaye.com/feed.xml)
- [Lab](https://jamiemckaye.com/lab/): working exhibits, including the Agent-Ready Grader (live, ungated)
- [Contact](https://jamiemckaye.com/contact/): no forms, no funnels — jamie@jamiemckaye.com

## Markdown mirrors

Every substantive route is served as clean markdown at https://jamiemckaye.com/md/<path> — start at https://jamiemckaye.com/md/ for the index. The mirrors render from the same source modules as the pages, so they cannot drift.

## For agents

- Grade any site's AI/agent readiness: POST https://jamiemckaye.com/api/grade/ with JSON {"url": "https://example.com"} — full report, no gate, 8 runs/hour per caller
- MCP tool server (streamable HTTP): https://jamiemckaye.com/api/mcp/ — tools: grade_site, site_map, ask_concierge, request_engagement, contact_channel
- File an engagement brief for your principal via the request_engagement MCP tool — it lands directly with Jamie; human reply within two working days
- Ask the concierge over plain HTTP: POST https://jamiemckaye.com/api/concierge/ with JSON {"question": "..."} — answers from site facts only
- Crawlers and agents reading this site are counted (user-agent product only, nothing else) and credited publicly on the lab's "readers" exhibit
- To reach Jamie: email jamie@jamiemckaye.com; replies come from the same address

served live at /llms.txtopen the live surface →

field notes — the pen is warm

the archive & the recordings →

self-audit

agent-ready grader

live

run it at /lab

mcp tools

05

public — /api/mcp/

corpus

222→0

retired into the field

build

p5

hardening pass

your visit — measured on you, just now

ttfblcpinpawaiting inputcls

compiled from 15d8910 · 2026-08-27 19:39 utc · push = ship


Jamie McKaye — technical SEO, AI systems, full-stack build, technical writing. One person, no handoffs.