Offensive Gyarados is not a counter because he can only switch once on Mega Lucario, which can just use Close Combat as Gyarados comes in and OHKO later in the game with a SD boost. I am not saying that offensive Gyarados is easy to switch in, i am saying that offensive Gyarados is not a counter to Mega Lucario. Also, Vaporeon loses to SubRoost + Toxic, and Heatran without Roar gets outstalled. It's clear that you haven't faced SubRoost Moltres so stop bashing it for no reason. I am not saying that it's impossible to switch in, but saying it's easy to counter is an overstatement and not true at all. Finally, about SR, you can guarantee that SR is not on the field just fine, but i am not even going to argue about this as it's a practice thing. Anyway, all you need to take from this convo is that Moltres counters (Mega) Lucario if you manage to keep SR off the field (if you can't then obviously don't use it) and that SubRoost Moltres is not that easy to counter.
Moltres has the unique combo of SubRoost + Pressure + Fire STAB, which means that it can stall most Pokemon with Toxic and SubRoost, while OHKO / 2HKOing Steel-types with its Fire STAB. Also, it's one of the bulkiest Fire-types available after Heatran and has an excellent defensive typing (save for SR) and reliable recovery, making it able to check/counter Sheer Force Landorus, Aegislash, Scizor, Genesect, offensive Heatran, Lucario, Mega Charizard Y, Volcarona, Mawile, Scolipede, and more.