A tiny plant shop built to study: what does it take for an agent to use a page's WebMCP tools, hand off to a server-side MCP server, and come back to the page to tell the human?
npm install
npm run dev # MCP server on :8787 + Vite on :5173, togetherOpen http://localhost:5173 and press “🛒 Buy plants for Ada” in the agent console. Then try “🏜️ Order 99 cacti”
npm test # all three suites below
npm run test:shim # 11 checks pinning the shim to the extension's observed contract
npm run test:boundary # 4 checks that an agent-surface crash can't take down the storefront
npm run test:handoff # 13 end-to-end checks over the server half
npm run build # production build