Decide with these questions
Does it need a secret? → HTTP. Anything the browser can reach, the user can read. Will this agent ever answer a phone? → HTTP. There is no client on a phone call, so a client tool simply never fires. Is the thing you need only in the browser? → Client. What the user is looking at, what is in their cart, which tab is open. Is it a real mutation? → HTTP. Bookings and payments should not depend on a browser tab staying open.HTTP tools
Client tools
No URL and nolocation on parameters — nothing is being placed into an HTTP
request.
The registered name must match
modelToolName exactly. A mismatch is the
most common reason a correctly-defined client tool never fires.