Season the chicken with salt and pepper. Mix together the green onions, 1/2 cup each of the cilantro and parsley, lemons, garlic, ginger, paprika, ghee, harissa, cumin, turmeric, cardamom, crushed red pepper, cinnamon and saffron. Coat the chicken with mixture and marinate 1 hour or up to overnight in fridge in an air tight container.
Once you're ready to start cooking, heat 1/4 cup of the olive oil in a large dish with a lid, like a dutch oven. Scrape the marinade off the chicken and set aside. Cook the chicken, skin side down, over moderate heat about 6-8 minutes in the large dish with oil.
Add the carrots, fennel, peas, green olives, reserved marinade and 1 cup of the broth. Cover the dish and bring to a boil, then reduce the heat to moderately low and cook until the chicken is tender, about 35 minutes.
While the tagine is cooking start the couscous. In a medium saucepan, heat the remaining olive oil with yellow onion and cook over moderate heat, stirring occasionally, until lightly browned, about 10 minutes.
Add the remaining 2 cups of broth, bring to a simmer and add the couscous. Cover the pot and let stand for 15 minutes or until all the liquid is absorbed. Fluff the couscous with a fork and season with salt.
Remove from the tagine from the heat and let stand, covered, for about 15 minutes.
Add the lemon juice and the remaining cilantro and parsley and season with salt and black pepper. Serve hot with couscous and mint tea or fresh carrot juice, at least that is how they served it to us in Tangier!