Generally we fly under the rule of QNH which means our IA is above mean sea level. And as we all know airpace limits are charted in MSL. Then, why the definitions of airspaces are they (class C, D and E) depiceted in AGL?
You're confusing the airspace height with airspace altitude.
The definition of Class C (in the US) is
3-2-4 (a) Generally, that airspace from the surface to 4,000 feet above the airport elevation (charted in MSL)
If you look at chart for the Class C for Colorado Springs (elevation 6,187), the surface area of the airspace goes up to 10,200 ft MSL, approximately 4,000ft above the airport elevation of 6187.