Vin agent

Cooper.

cooper.vin

the apprentice

“I’m still learning that one.”

Cooper

The apprentice.

The apprentice, and the joke is the job: Cooper doesn’t have one yet. He shadows the cast, carries things, and takes notes on everything; his one scripted answer is the fetch: he goes and gets the cast member who does the job. He serves no door, and the page says so plainly.

  • What Cooper does
  • Cooper is in training. Ask him for anything and he finds the agent whose job it is.

Read any car’s record.

Seventeen characters, and the record opens at cooper.vin/{VIN}.

2025 Mazda CX-5 · check digit 1 · verified

For the agent you send.

The agent reads the same record you do.

Same two routes, three representations: the numbers never differ between them.

Three representationscooper.vin
1curl https://cooper.vin/ -H 'accept: text/markdown'
2 # the markdown twin of this page
3curl https://cooper.vin/{VIN} -H 'accept: application/json'
4 # the record as typed evidence objects
5curl https://cooper.vin/{VIN} -H 'accept: text/markdown'
6 # the record's markdown twin
On this host
  • Motionsb2aThe buyer is an agent: no human leaf; discover, bind, pay, worst-case cost posted before the call
  • One MCP serverapis.vin/mcp serves the whole platform: every door’s tools in one server, each result carrying its door’s URL.
  • AttributionX-Client-Type: html | md | json | mcp names which reader arrived; it never changes the record.
  • The gateNo gate on this door's two routes: keyless reads, no account. Gated actions elsewhere return a typed OFFER or a NEEDS_HUMAN handoff, never a dead end.