First of all, you need to fix your declaration:
public Dictionary<int, MC_VARIABLES> dctMC = new Dictionary<int, MC_VARIABLES>();
Then, you don't
need to initialize it here if it always will be initialized in
GET_DATA
before being referenced. The empty Dictionary created here will be "dropped on the floor" by the assignment in
GET_DATA