Preheat oven to 350 degrees F. In a medium bowl mash together beef, egg, breadcrumbs, cheese, Worcestershire, and spices. Form mixture into 4 even-shaped, oblong, thin pieces.
Heat a large skillet over medium-high heat. Melt butter in the skillet and swirl it around. When melted and bubbling, add steaks and sear on both sides for 3-4 minutes until well browned. Remove steaks and transfer to 8×8 baking dish.
Add another 1-2 tablespoons of butter to the skillet and the sliced onions for the gravy. Turn heat down to medium and cook onions until they are soft and have taken on some color, 5-6 minutes. Season with salt and pepper.
Add flour to the onions and stir it in. Cook for a minute and then slowly add beef stock, stirring continuously. Start with two cups and if it’s too thick, add more. Bring gravy to a simmer and let simmer until it thickens a bit, 2-3 minutes. Season with salt and pepper to taste.
Pour gravy and onions over steaks in baking dish. Cover with foil and bake for 20 minutes.
Serve steaks over mashed potatoes with gravy on top and garnished with parsley.