
This genuine Moroccan Kefta Mkaouara blends seasoned meatballs with a deep tomato sauce that cooks down to make a comforting meal. Adding eggs straight into the bubbling mixture brings a creamy touch that turns this into a full dinner option.
I tried making this dish after eating at a nearby Moroccan spot. The mix of spices with the thick sauce and soft egg yolks was so good that it's now what I cook whenever friends come over who enjoy foods from around the world.
What You'll Need
- Ground beef or lamb: the main part of your meatballs with lamb giving a more traditional flavor though beef tastes great too
- Cilantro and parsley: add freshness to both the sauce and meatballs
- Mixed spices: cumin, paprika, cinnamon, and coriander work together for that special Moroccan taste
- Shredded tomatoes: make a better sauce than canned ones and help everything reach just the right thickness
- Eggs: they're not required but we really suggest them as they make the sauce extra rich when the yolks mix in
- Onion and fresh garlic: create the flavor base that makes both parts of the dish taste amazing
How To Make It
- Mix your meatballs:
- Put all meatball items in a big bowl and blend lightly with your fingers until just mixed. Don't work the meat too much or it'll get hard. Shape into 1¼ inch rounds about 24 total and cool them in the fridge while you work on the sauce so they'll stay firm during cooking.
- Start the flavor base:
- Warm olive oil in a large pan or real tagine pot over medium high heat until it starts to shimmer. Toss in chopped onion and cook about 5 to 7 minutes until they start turning gold which means their sugars are coming out to boost flavor. Add garlic and cook just 60 seconds since it burns quickly.
- Wake up the spices:
- First mix all your ground spices in a small cup this helps them spread evenly in your dish. Add them to the onions and keep stirring for half a minute until you can really smell them. This step brings out the oils in the spices making everything taste better. Add tomato paste and cook one more minute to let it darken a bit.
- Make your sauce:
- Put in your shredded tomatoes with their juice herbs and salt. Stir well to mix in all spices and tomato paste. Pour in water and turn down the heat so it bubbles gently. Let it cook without a lid for 25 to 30 minutes stirring now and then as it gets thicker. The sauce should coat your spoon when it's ready.
- Add the meatballs:
- Carefully drop your chilled meatballs into the sauce making sure they aren't too packed together. Cover and let them cook for 10 to 15 minutes flipping once halfway so they get coated all over. Beef should reach 160°F inside while lamb needs 145°F.
- Drop in eggs:
- Make 3 to 4 little holes in the sauce between meatballs using a spoon. Crack an egg into each spot. Put the lid on and cook another 10 to 15 minutes until egg whites aren't clear anymore but yolks stay a little runny for the real deal.
- Ready to eat:
- Throw on some more fresh herbs and serve right away while eggs are still warm. Grab some crusty bread to soak up all that tasty sauce or serve with couscous for a true Moroccan experience. A little drizzle of good olive oil on top makes it even better.

What makes this dish special is how well the spices work together. My grandma always told me the trick is to warm the spices without making them too strong. I really love how the cinnamon adds just a touch of sweetness that goes with the savory flavors instead of making it taste like a sweet dish.
Ways To Serve
People usually bring this tagine straight to the table in the cooking pot and everyone shares from the middle. You'll want some crusty bread for scooping up sauce and egg yolks. For a full Moroccan meal add a simple green salad with lemon juice and olive oil dressing to cut the richness. A glass of mint tea goes perfectly with this food and cools your mouth between bites.
Storage and Planning
You can cook everything except the eggs up to two days ahead and keep it in the fridge which is great when you have guests coming. Just warm it up slowly on the stove then add eggs and finish cooking before you eat. Leftover tagine without eggs stays good for 3 to 4 days in the fridge in a closed container. With eggs mixed in try to eat it within 2 days. It actually tastes better the next day after the spices have time to blend.
Changing It Up
While most folks use lamb you can switch to any ground meat like turkey chicken or even meat substitutes if that's what you prefer. Make it spicier or milder by changing how much cayenne you use. Want something heartier? Throw in some chickpeas or chopped bell peppers. In summer try adding zucchini or eggplant they taste great with these flavors.
Background Info
The word tagine means both the cone-shaped clay pot and the slow-cooked stews made in it. This version called Kefta Mkaouara is loved all over Morocco especially during Ramadan. It shows off how Moroccans mix sweet aromatic spices with meaty flavors so well. In the old days they'd cook it over charcoal which gave a smoky taste that's hard to get on regular stoves.

Frequently Asked Questions
- → What's the best meat for this dish?
Lamb brings authentic flavor, but using beef or a mix of the two works just as well.
- → Can I make it ahead?
Totally! Prep the sauce and meatballs earlier and gently reheat them later. Add a splash of water if it gets too thick.
- → Do I have to use eggs?
Not at all! Eggs are optional, though they make the dish even more rich and filling.
- → What pairs well with it?
Crusty bread, fluffy couscous, or rice work great. For a little extra, try green olives or a drizzle of olive oil.
- → Can I tweak the spice level?
Definitely! Tone down the cayenne for less heat, or add more if you want to spice things up.