Why doesn Mecury or Venus have moons?
Perhaps they did long ago, and got knocked away by incoming comets, or hit by asteroids and vaporized. Or the gravity field of the sun pulled them off their orbits. Our moon is exceptional in that it is so large. Has been hit plenty of times (those many craters), and still survives. The Earth holds it tightly against the sun’s pull. And the Moon was formed, we think, as a byproduct of a collision between Earth and a very large chunk of matter almost the size of Mars. Perhaps Mercury and Venus never had that happen to them. Mars’ moons are tiny captured asteroids. They were not there when Mars was formed.