I think this is enough information. I would consider installing inexpensive hall or optical sensors at each tool station. It's optional but if sensors exist to tell you if a tool is in a slot, you can verify that a slot is empty before trying to park a tool in that spot. Also, you can verify that the previous tools has been successfully returned to its slot before trying to load a new one.
In any case, you can start with no sensors and then add them if the system isn't reliable enough without them.
I'll write up a sample program for you using Andy's good suggestions.