Warm olive oil in a Dutch oven over medium heat. Add onion, carrots, and celery; cook 6–8 minutes until softened.
Stir in garlic, cumin, smoked paprika, and tomato paste for 1 minute.
Add lentils, diced tomatoes, broth, bay leaf, salt, and pepper. Bring to a boil, then reduce to a gentle simmer.
Cover partially and simmer 30–35 minutes, stirring occasionally, until lentils are tender but hold their shape. Add broth if the soup gets thicker than you like.
Remove bay leaf. Stir in spinach until wilted, then add lemon juice and adjust seasoning. Serve with parsley.