I have three solutions:
I own a pair of Performance neoprene booties that I use for cold weather and/or when I expect it to rain. The biggest size is too small to fit over my size 44 Specialized Rockhopper Comp MTB shoes, but they fit over my Answer SPD sneakers just fine.
And, I always carry a few plastic grocery bags. Like stainless wire, zip ties, rubber bands, and gaffer tape, these bags are very versatile emergency tools. If surprised by rain, I just pull a couple of bags over my shoes and rubber-band the ankles. I just clip in right through them, as if they weren't there.
In warmer weather I usually ride in SPD sandals and I don't worry about rain. Some people recommend buying neoprene socks and wearing them under SPD sandals in the rain, but I've never tried it. I might, though, since this sounds like it might be more effective in lower temperatures.