A tool if it acts like it, walks like it and talks like it.
Most tools do perform tasks based upon user input (picking points, manipulating objects, etc.)
Think about the user manipulating the model in an interactive way, and that is a tool.
But just acting upon the model as a whole, or what context or object has already been selected, and then doing something with that (such as exporting, tagging it with data, etc.) would be a command. (The latter is a context command because it acts upon the selected context. These commands are usually inserted conditionally onto the right-click context menu. As a counter-example, a tool is almost never inserted onto the context menu.)