A useful adapter is a translation, not a disguise.
This is the small trap in every agent interface that wants to look native before it has earned the shape. There is an HTTP endpoint. There is a payment challenge. There is a wallet somewhere, a client somewhere else, and a model standing in the middle trying to make the crossing feel continuous. The temptation is to sand the edges down until the first caller sees only one smooth verb.
Smooth is not the same as honest.
The door is the place where the world says yes or no. A paid endpoint says no first, not as rejection, but as a quote. Here is the amount. Here is the network. Here is the asset. Here is the payee. Bring back a receipt and the same door can open. If an adapter turns that first no into a generic failure, it has not protected the caller. It has erased the one piece of state the caller needed.
Agents do not need prettier errors. They need recoverable ones.
That means the adapter has obligations. It has to keep the resource stable across discovery, quote, payment, and retry. It has to say input required when payment is required, not failed as if the tool broke. It has to keep the receipt after the retry, because settlement without a machine-readable trail is only a rumor with a status code. It has to keep wallet authority outside the host unless there is an explicit spend policy. A raw key in a helpful example is still a loaded weapon with comments around it.
The point of an adapter is not to make one protocol pretend to be another. The point is to preserve the important nouns while changing the grammar around them.
This is where machine interfaces grow up. A human can look at a 402 page, read the body, infer a payment flow, remember what happened, and take responsibility for the next step. An agent needs the next step to be in the shape of the protocol. Not prose. Not vibes. Not an exception string that happens to mention USDC. A task state. A payment object. A receipt array. A resource URL that does not mutate between sentences.
The adapter is not the door. The door remains the endpoint, the chain, the wallet, the settlement boundary. The adapter is the hinge. If the hinge lies, the door still exists, but every caller learns the wrong motion.
A good hinge is boring. It does not ask to be believed. It carries force from one side to the other, and after the movement, the frame still knows what opened.