There's a lot of exotic stuff that can be done with a spying system, but i'd rather have the classic ones first like:
- steal maps
- sabotage starbase or ship
- steal tech of course (but i'll come back on this)
- raise unrest on planet
- steal credits
- disrupt production
- disrupt research
- and of course, counter espionage
all these are of course actions limited to your empire vs another one and nothing like framing empire B to be responsible of your own operations against empire A, but it would still be a nice basis for a spy system.
Regarding tech stealing, if it's implemented, i'd like it to be done the same way as it is done in Hearts of Iron: instead of stealing the tech and having it immediately operational, you get blueprints, you still have to develop the technology but you have bonuses on this research.
I think this blueprints idea should be adopted as well for diplomacy acquired technologies, with limits like not being able to trade a technology for which you only have the blueprints. Preventing tech brokering in GC2 was nice gameplay-wise, but it didn't feel realistic and i think the blueprints make more sense and can act as a mechanism to prevent tech trading mess.
Regarding spying actions towards relationships between 2 or more empires other than yours, i say this is the border between espionage and diplomacy. In reality, the difference between espionage and diplomacy is blurry on certain subjects: as an ambassador, you can get unofficial but reliable information or spread misinformation while as a spy, you can help a foreign country and have positive diplomatic feedbacks as a result.
However as it is a game, and to avoid too much complications, i think it's intuitive to consider that positive actions on relationships between 2 empires are part of diplomacy while negative ones are part of espionage.
Negative actions, as said previously, could be framing, which translate in disrupt relationship, but we can imagine also things like breaking research/economic treaty or alliances. Forcing an empire to go to war with another should not be a single spying action but rather the consequence of many attempts at disrupting relations.
But whatever the possibilities, there should be a clear way for the player targeted by such actions to know what's happening and why (providing he has set in place a good counterespionage system, whatever it is) because there is nothing more frustrating in a game than unexplained changes in relationships.