A tool schema is a contract with a caller that guesses. This is a concrete walkthrough of the four properties that separate a tool a model uses correctly from one it fumbles: legible schemas, validating boundaries, recoverable errors, and idempotency — with before-and-after code.

Typed inputs stop malformed calls. They don't stop an agent from calling the wrong tool with a well-formed, wrong argument. Here's how to design an MCP tool surface — constrained…

A tool schema is a contract with a caller that guesses. This is a concrete walkthrough of the four properties that separate a tool a model uses correctly from one it fumbles:…