In a large bowl, whisk together the eggs, milk, salt, black pepper, and garlic powder until well combined and slightly frothy.
Heat a large non-stick skillet over medium heat and add the butter. Once melted, add the sliced mushrooms and sauté for about 3-4 minutes until they are tender and lightly browned.
Add the chopped spinach to the skillet with the mushrooms and cook for an additional 1-2 minutes, stirring frequently, until the spinach is wilted.
Pour the egg mixture into the skillet with the mushrooms and spinach. Allow it to sit for a few seconds, then gently stir with a spatula, pushing the eggs from the edges toward the center.
Continue to cook, stirring occasionally, until the eggs are just set but still slightly creamy, about 5-7 minutes. If using cheese, sprinkle it on top during the last minute of cooking.
Remove from heat and serve immediately.