Preheat the oven to 350 degrees F.
In a large bowl add the ground beef, bread crumbs, garlic powder, onion powder, salt, pepper, Worcestershire sauce, milk, and egg mix just until combined.
Form into meatballs about 1 1/2 inch in diameter. Making each meatball about the same size.
In a skillet, over medium heat fry the meatballs until all sides are browned. Remove from the skillet and set aside
Add three tablespoons of butter and the onions to the and sautee for about 10 minutes or until the onions are soft and lightly browned.
Add the last tablespoon of butter and the mushrooms. Sautee for another 5 to 7 minutes or until the mushrooms are tender stirring occasionally.
Add the flour and stir in. Turn the heat to medium-high and slowly add the beef broth. Bring to a boil and continue to cook until the mixture starts to thicken slightly.
Add the meatballs back to the skillet. Place the skillet in the preheated oven and bake for 30 to 35 minutes.
Serve right away. Serve with egg noodles or mashed potatoes.