Add the chopped onion, cilantro, spinach, garlic, salt, lime juice, diced serrano peppers* and 1/2 cup worth of broth to a blender or food processor.
Process until smooth.
Heat the olive oil in a large pot or dutch oven. Add in the rice and toast for 2-3 minutes. This helps bring out lots of flavor.
Add the cilantro mixture and the rest of the broth to the rice. Stir well, then bring to a boil and reduce heat to low. Cover and let simmer on low heat for 15 minutes or until the rice is cooked.
Remove from the heat and let sit, covered, to finish cooking for about 10-15 minutes. Fluff with a fork and sprinkle on top extra chopped cilantro and red pepper flakes.
Notes
I usually use 1 serrano pepper with some seeds for mild spice. If you like more spice, then include all of the seeds or use an additional pepper. The seeds are the spicy part, so if you don't like spice, just use one pepper with no seeds.