When a user wants to create an annotation, select text or pan around the document they'll use their mouse and keyboard or touch the screen. A tool is just a way of capturing those inputs from the user and doing something in response. Tools automatically funnel user events into handler functions (for example mouseLeftUp, mouseMove, etc) and convert the mouse coordinates into document page coordinates automatically for you.
Annotation tools use the page coordinates to specify annotation properties, like position and dimension. By default, each annotation type has an associated tool, but that doesn't mean a tool can only be associated with one type of annotation. For example, you may have several sticky tools to create sticky annotations with different colors. You can also define a custom annotation and not associate any tool with it, instead creating the annotations programmatically.
List of tool names