Use this skill when building tools that LLM agents can invoke via function calling, defining tool schemas with Zod, implementing tool executors, or setting up tool registries. Covers: type-safe parameters, error handling for tools (return errors, don't throw), granular tool design, security considerations, and human-in-the-loop patterns.