CourseModel Context Protocol: The Complete Course · Module 3: Tools · part 21 of 77
Part 21 · Module 3: Tools

Lesson 1: Defining a tool the model can use well

20 min read·13 Oct 2026
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.

The rest of this course is yours to keep

This course is bought on its own, once, and stays readable afterwards, including the parts added to it later.