Heat olive oil in a large soup pot over medium-high heat. Add the chopped onion and cook for 3 minutes, stirring frequently until softened.
Add the uncooked rice. Stir to coat it in the oil and cook for 1 minute, until just lightly toasted.
Add the pinto beans with their liquid, chicken-style broth, garlic powder, oregano, thyme, black pepper, and bay leaf. Stir to combine.
Bring the mixture to a boil, then reduce the heat to low. Cover and simmer for 20 minutes, or until the rice is tender.
Remove and discard the bay leaf. Adjust seasoning to taste.
Ladle into bowls, sprinkle with chopped cilantro, and serve hot.