Add onions and garlic. Sauté until the onions are soft and translucent, about 5 minutes.
Add bell peppers and cook for another 5 minutes, stirring occasionally.
Stir in the tomatoes, paprika, cumin, and harissa (if using). Season with salt and pepper. Simmer the mixture over low heat for about 15-20 minutes, until the sauce thickens and the flavors meld together.
Create small wells in the tomato mixture, and carefully crack the eggs into each well. Cover the pan with a lid and cook for 5-8 minutes, or until the eggs are cooked to your desired doneness (runny or firm).
Remove from heat and garnish with fresh parsley or cilantro.
Serve hot with crusty bread to dip into the delicious sauce.