// Blog

Technical notes for AI agent builders

Tutorials, comparisons and design patterns for building autonomous agents that self-fund, call 345+ models and orchestrate MCP Tools.

UCP: the checkout protocol that left payment open

ACP bundles checkout and payment into one token. UCP does not: it defines Payment Handlers as specifications anyone who owns a domain can publish, and negotiates which ones apply on every single transaction. We walk the /.well-known/ucp profile, the four-step capability intersection, the trust triangle, the RFC 9421 identity layer that turns out to be the same machinery as Web Bot Auth and Visa's TAP, and the AP2 mandate extension that locks a session once negotiated. Then we audit the repo at commit a839e99: 236 commits, 79 open PRs, a spec whose last tagged release is four months old while the docs render draft, a plural capability name in the playground that can never intersect, and zero occurrences of x402, stablecoin, or USDC anywhere in the specification.

15 min read →

Verifiable Intent: signing what the user authorized

Visa's Trusted Agent Protocol signs who is knocking. Verifiable Intent signs what the human approved. It is a layered SD-JWT credential chain — issuer to user to agent — where the user's constraints are cryptographically bound and the agent's final values must satisfy them. We walk the three layers, the split L3, the eight registered constraint types, and the point where the spec admits cryptography stops and stateful ledgers begin. Then we audit the repo: a draft frozen since April, an RFC 9901 conformance bug that makes standard verifiers reject every L2 it issues, and a reference constraint checker that defaults to the permissive path.

15 min read →

Visa's Trusted Agent Protocol: identity at the merchant edge

Visa's Trusted Agent Protocol puts a cryptographic signature on every agent request that touches a merchant site, so the merchant can tell an accountable agent from an anonymous bot. No money moves over TAP. We walk the RFC 9421 headers, the agent-browser-auth and agent-payer-auth tags, the Consumer Recognition Object, the three payment containers including the HTTP 402 IOU, and an audit of the reference implementation that has not been touched since October 2025.

15 min read →

Agentic week: MCP ships, the forensic timeline, and cache headers

Four things happened between July 24 and July 31: the largest MCP revision since launch went final, Hugging Face published a 17,600-action forensic timeline in which commercial models refused to help the defenders, NVIDIA assembled a security alliance around open models and agent identity, and x402 spent the week fixing the unglamorous parts of its HTTP semantics.

8 min read →

MCP deprecates sampling: the end of borrowed inference

MCP's 2026-07-28 revision did two things at once: it rewired every server-to-client request through Multi Round-Trip Requests (SEP-2322), and it deprecated three of them — roots, sampling and logging (SEP-2577). We walk the MRTR wire format, the cryptographic rules on requestState, the ephemeral-versus-Tasks split, and why the official migration path for sampling — 'integrate directly with LLM provider APIs' — changes who pays for inference.

15 min read →

MCP Apps: the first official extension gives tools an interface

MCP Apps (SEP-1865) is the first official MCP extension and, as of the 2026-07-28 spec, one of exactly two. We walk through the ui:// template scheme, the sandboxed iframe model, the JSON-RPC-over-postMessage bridge, the CSP MUSTs, and the new attack surface — then map it to an x402-billed gateway.

10 min read →

The MCP Registry: How Agents Find Servers, Dissected

The 2026-07-28 spec tells agents how to talk to MCP servers — the official MCP Registry is how they find them. We dissect the whole machine: the server.json publication format and its 2025-12-11 schema, namespace verification via GitHub OAuth and DNS TXT records, package ownership validation with mcpName, the frozen v0.1 REST API with cursor pagination and updated_since sync, and the subregistry model where the root stays neutral and opinion lives downstream. Then we crawl the live API ourselves to measure what is actually registered, and place the registry against x402 Bazaar and ERC-8004 as the third discovery layer of the agentic stack.

11 min read →

MCP Tasks: How Agents Wait — the Async Extension, Dissected

The MCP spec that finalizes today demotes Tasks from experimental core feature to official extension — and redesigns it around statelessness. We dissect the new lifecycle: server-directed task creation via CreateTaskResult, the five-status state machine (working, input_required, completed, failed, cancelled), idempotent tasks/get polling, keyed inputRequests for mid-task elicitation, cooperative cancellation, TTL semantics, and the identity gap where a taskId becomes a bearer token. Then: what a durable task rail means for a gateway that bills agents per call.

12 min read →