Preheat the oven to 350°F (175°C).
Cream together butter and sugar until light and fluffy.
Add eggs and pumpkin to the mixture, and beat until smooth.
In a separate bowl, sift together baking powder, salt, cinnamon, nutmeg, and ginger. Gradually add to the wet mixture, stirring until combined.
Add flour one cup at a time, mixing until just combined. Fold in optional walnuts or pecans.
Scoop dough onto a baking sheet, about 2 inches apart. Flatten slightly with a spoon.
Bake for 12-14 minutes or until golden around the edges. Let cookies cool completely on a wire rack.
For frosting, beat together cream cheese, butter, powdered sugar, vanilla, and cinnamon until smooth and fluffy.
Frost the cooled cookies with the cinnamon cream cheese frosting.