I've saved a game by using the spy to sabotage production on the enemy spacecraft. I also find their help during war invaluable. As someone mentioned, if they've built bombers, it's time to build interceptors/SAM sites and if they've got MI, perhaps, then, it is time to mass upgrade the tanks you've got lying around from the last war.
Stealing plans is nice, as it reveals their troop locations on the entire map--which is what the AI *always* is doing to you anyway. I have never sucessfully flipped a city to me with a propaganda campaign, but this is not an option I often use.
But perhaps the *best* reason for spies is to infuriate the enemy into declaring war on you so you can defend yourself with reduced war weariness from your population, as well as turn MMP's against the rival civ.
Someone mentioned they signed MPP's with the same civs as their attacker, but it bckfired on them. This has probably been mentioned (I haven't read both pages yet in their entirety), but for the MPP to take effect, you must be attacked IN YOUR TERRITORY. Sacrificial obsolete units and/or workers hit in your borders will spark off the MMP, causing the other civs to turn on whomever attacked you.
Later!
--The Clown to the Left