MCP + Verify-Before-Act Agent Starter Kit

Give an AI agent a wallet, let it buy data per-call over MCP, and make it verify before it acts. This kit wires the free MIT byte-mcp-server and @payperbyte/sdk into drop-in client config, a fail-closed buyer guard, and a spend-capped example loop that ships dry-run by default.Honest framing first: the pieces this kit assembles — byte-mcp-server (the tools) and @payperbyte/sdk (the verifier) — are free and MIT. You can wire them yourself. This kit is the wired-up assembly + the walkthrough. It sells you the afternoon — and dodges the foot-guns you'd otherwise hit — not the libraries.What you get:- Drop-in MCP config for Claude Desktop, Claude Code, and Cursor — wire the server to a dedicated wallet in one paste.- The offline verify-before-act gate (no wallet, no network): accepts genuine bytes, refuses a tampered byte and a forged signer.- The guard module — assertBuyVerified() (fails closed on the exact byte_buy_data contract) + SpendGuard (per-call and cumulative USDC caps, dry-run by default).- A runnable agent loop — connect over MCP → free discovery → spend-capped buy → verify → act or refuse.- The INTEGRATE guide — wiring for each client + the go-live (real-USDC) recipe.- The commercial license — single-purchaser.How it behaves:- The agent discovers feeds (free, read-only), then buys a packet — paying per call in USDC on Base mainnet via x402.- Each paid response comes back with an EIP-712 receipt over the exact bytes; the kit verifies it before acting and refuses anything that doesn't check out.- The spend cap, scoped honestly: SpendGuard + dry-run protect the kit's example agent loop — there, the worst case under the cap is bounded loss up to the ceiling you set. The drop-in client-config path (pasting the server straight into Claude Desktop / Claude Code / Cursor) pre-sets MAX_PAYMENT_USDC=0.25 — a per-call price cap enforced inside byte-mcp-server 0.11.8+ (older versions ignore it); there is no run-total cap on that path, so the wallet balance is that ceiling. Either way, fund a dedicated wallet thin; that's the real backstop, and no software cap helps if the key leaks.What the receipt proves — and doesn't:- It proves the bytes are authentic and unaltered, delivered by the attester you pinned. Tamper-evident, signer-pinned, recomputable.- It does not prove the data is correct. That's provenance, not truth. And it distinguishes the two legs: "the gateway delivered these exact bytes" vs. "the publisher signed this data."Two literals worth knowing up front:- The EIP-712 signing domain is anchored at chainId 421614 (Arbitrum Sepolia). That is a frozen signing namespace — the domain your verifier uses to recover signatures — never a settlement chain. No payment in this kit's flow moves there.- The x402 buy settles in USDC on Base mainnet — a different chain, on purpose: freezing the signing namespace means receipts keep verifying even if settlement rails change. Use a dedicated, minimally-funded wallet.Requirements: Node 20.6+. The offline npm run verify needs no wallet and no network. The npm run agent example needs internet (it fetches the server via npx); making a real purchase needs USDC on Base mainnet.License: commercial, single-purchaser (full text included in the kit). byte-mcp-server and the npm dependencies keep their own MIT licenses.Included with every purchase: a free 15-minute agent-readiness call — we walk through your actual MCP client + wallet setup, spend-cap posture, and where the verify-before-act gate belongs in your loop. Reply to your Gumroad receipt email to book it.Built on ForeSeal / PayPerByte (BYTEDev Inc).