I've used an old toothbrush and some tilex. Thankfully this was at our old house, unsealed grout and it never looked clean.
I can see the magic eraser working, but I see the grout eating it pretty quickly.
If you get it as clean as you want (or as clean as it will get) what about sealing it so that you don't have to do this again? They sell little brushes with the sealant in it, like a nail polish brush.