By that definition, you don't "have' to attack with firebolt, since you could just counter spell yourself.
My point is that you make an attack with
fire bolt as part of casting the spell. You don't make an attack with
magic stone as part of casting the spell. You make an attack with the pebbles *after* you've cast the spell on them.
Look, I would *like* to be able to take
magic stone with Spell Sniper, as the only other viable options are
produce flame and
thorn whip, neither of which I'm particularly keen on. I'm just not convinced that it's a valid choice for the reason I've outlined above.
EDIT: I suppose you could argue that
magic stone "requires" an attack roll in order to actually benefit from it. Sure, you can cast the spell on the stones and then not use them, but if you actually do want to use them, then you have to make an attack roll.
But then, the same could be said about
shillelagh, and I'm not sure that I'd allow someone to take that cantrip with Spell Sniper. I know it doesn't say you have to take a ranged cantrip but that would make the most sense, since the feat's other benefits are all about enhancing ranged spell attacks.