Heat the olive oil in a large tagine or heavy-bottomed pot over medium heat.
Add the chopped onions and cook until softened and translucent, about 5 minutes.
Add the minced garlic, cumin, paprika, coriander, cayenne pepper, and cinnamon to the pot and stir until fragrant, about 1 minute.
Add the canned tomatoes and broth to the pot and stir to combine.
Add the fish fillets to the pot, spooning the sauce over the top to cover.
Bring the sauce to a simmer and reduce the heat to low.
Cover the pot and let the fish cook for about 10-15 minutes or until it is fully cooked and flaky.
Add the green olives to the pot and let cook for an additional 5 minutes.
Remove from heat and sprinkle with fresh cilantro.
Serve the tagine over a bed of cooked white rice.
Notes
Tips and Tricks
Cut the onions and garlic ahead of time to save on prep time.Use a pre-made spice mix instead of measuring out individual spices.Cook the rice ahead of time and keep it warm in a covered pot until ready to serve.