Lesson 1: Defining a tool the model can use well
Module 3 · Lesson 1 · About 40 minutes · Needs: Module 1 Lessons 2 and 3 (NoteStore, a first server and client); Module 2 Lesson 1 helps (messages on the wire)The situation
Monday 14 September 2026, week 2. The Module 1 prototype answers Nare's question, "How many participants will the nap study have?", but its search_notes tool was written in five minutes. Nare also wants the assistant to save notes, starting with the consent form due tomorrow, so create_note joins it.
Today you design both tools properly. A tool is read by two audiences: your code, which needs a strict contract, and a language model, which needs clear instructions and cannot ask what you meant. You will trace that one question, and the call search_notes(query="nap study participants") it leads to, through every part of a tool definition.