Static browser experiment

x402eCash · WebMCP Challenge

Gate H3C — Tonalli Authorization Bridge

Validate the live requirement, return control to the agent, then let the page own the human decision and short-lived Tonalli authorization rendezvous.

No XEC payment occurs in Gate H3C. Tonalli signs an authorization-only proof. No transaction, PAYMENT-SIGNATURE, settlement, broadcast, or protected resource unlock occurs.

WebMCP HTTP 402 100 XEC Human approval Tonalli handoff Wallet confirmation Authorization proof Cryptographic verification STOP

First invoke get_paid_xec_resource. It validates the 100 XEC requirement, creates an ephemeral page-owned approval session, and returns approval_required immediately. The human can decide afterward. Invoke get_x402_authorization_result to read the current approval or authorization state.

Live browser events

AGENT ECONOMY TRACE

DISPLAY ONLY
  1. Waiting for WebMCP capability check…

Runtime events stay in this page only. They are not persisted or sent to analytics.

Gate contract

One short tool call. One page-owned decision. Then stop.

The first tool makes one uncached resource request, validates the H2B requirement, installs the H3A approval session, and returns without waiting for a click. The second read-only tool reports the page-owned ephemeral state.

01

Live contract

The resource tool accepts only the exact reviewed 100 XEC HTTP 402 requirement and returns approval_required without holding the WebMCP invocation open.

02

Human + wallet boundary

A later explicit click creates the 32-byte challenge and opens Tonalli in an isolated auxiliary context. No challenge or handoff exists before approval.

03

Verify + stop

The original page binds the callback to the live requirement, rebuilds the exact signed message, verifies the recoverable secp256k1 signature and payer address, then stops without payment.

Project boundary: x402eCash remains the static public laboratory and evidence portal. x402-XEC remains the separate protocol implementation. This experiment does not turn the portal into a payment backend.