Preheat the oven. Heat to 400°F (205°C).
Lightly grease a 9x13-inch baking dish with cooking spray.
Cook or prep the chicken. Use rotisserie chicken for speed, or poach chicken breasts in simmering salted water for 12–15 minutes, then chop or shred. Aim for bite-size pieces.
Sauté the aromatics. Warm the olive oil in a large skillet over medium heat. Add the onion with a pinch of salt and cook 4–5 minutes until translucent.
Stir in the garlic and cook 30 seconds until fragrant.
Build the roux. Sprinkle in 3 tablespoons flour. Stir constantly for 1 minute to coat the onions and cook off the raw flour taste.
Add liquids for the sauce. Slowly stream in the chicken broth while whisking to avoid lumps. Add the milk, then simmer 3–4 minutes until slightly thickened and glossy.
Season the base. Stir in thyme, parsley, onion powder, garlic powder, pepper, paprika, and 1 teaspoon salt.
Add Dijon and Worcestershire if using. Taste and adjust seasoning.
Stir in the protein boosters. Lower the heat. Whisk in the Greek yogurt and the blended cottage cheese until smooth.
Do not boil after adding these to prevent curdling.
Add chicken and vegetables. Fold in the chopped chicken and frozen mixed vegetables. Cook 2–3 minutes to warm through.
Transfer to the baking dish. Spread the filling evenly in the prepared 9x13-inch dish.
Mix the high-protein topping. In a bowl, whisk the flour, protein powder, baking powder, baking soda, and salt. Cut in the cold butter with a fork until you have pea-size bits.
Stir in kefir/buttermilk just until a thick, spoonable batter forms. Do not overmix.
Top the casserole. Dollop the batter in rustic spoonfuls across the surface, leaving small gaps for steam to escape. Aim for even coverage but no need to spread perfectly.
Bake. Place on the center rack and bake 22–28 minutes, until the topping is set and golden and the filling is bubbling around the edges.
Rest and serve. Let the casserole rest 10 minutes so the sauce sets slightly.
Sprinkle with fresh parsley if you like, then scoop and serve.