-
-
The Last Word — human approval for irreversible agent actions
-
Tell the agent what to do — it prepares everything
-
The approval gate: request vs. what the agent prepared
-
One-click integrity verification — "Chain intact"
-
Reject blocks the action — the human has the last word
-
Every action sealed into a tamper-evident hash chain
Inspiration
When an AI agent acts on your behalf, some actions can't be undone. Who approved that payment? Who authorized that deletion? On the agentic web, "who approved this?" has no answer. We built The Last Word to make human approval a first-class, verifiable part of an agent's action — so the agent does the work, but a human always has the last word.
What it does
The Last Word is a WebMCP Declarative API app that pauses irreversible agent actions (payments, deletions, transfers, contract submissions) and requires a human to approve — and sign — before the agent may execute. The agent fills the form and the tool call is held open via respondWith() until the human reviews the request-vs-prepared diff and clicks Approve & Sign (ECDSA P-256) or Reject. Every step lands in a tamper-evident hash-chain ledger with one-click integrity verification.
How we built it
Pure HTML + JavaScript with the Web Crypto API — zero dependencies, deployable to any static host (Cloudflare Pages). The WebMCP Declarative API (toolname, tooldescription, toolparamtitle, toolparamdescription) exposes the approval gates; llms.txt and mcp.json make the tools discoverable; IndexedDB persists the audit ledger across reloads. A request-vs-prepared diff makes the human-agent check honest and memory-free.
Challenges we ran into
Making the signature honest: we generate a genuine ECDSA P-256 signature per browser session and chained SHA-256 fingerprints, and we label it clearly as a demonstration gate, not a durable notarization certificate. Another challenge was making the human approve what the agent actually prepared — not what they remember asking for — solved with the side-by-side diff.
Accomplishments that we're proud of
A working, zero-dependency app that turns human approval into a machine-readable part of the WebMCP tool call. Two irreversible use cases (payment approval, data-deletion rejection) with a tamper-evident audit ledger, an ECDSA signature, and a demo video — all tested and live.
What we learned
WebMCP lets you make human approval a real, machine-readable part of an agent's tool call — not an afterthought. The question "who approved this?" gets a verifiable answer, and a human-in-the-loop gate becomes a portable standard instead of a custom integration.
What's next for The Last Word
A production signing key in a managed key vault, additional use cases (contracts, transfers), multi-signer approvals for high-value actions, and deeper integration with real WebMCP-enabled browsers and agents.
Built With
- cloudflare-pages
- css
- html5
- javascript
- web-crypto-api
- webmcp
Log in or sign up for Devpost to join the conversation.