Preheat your oven to 350°F. Line a baking sheet with parchment paper or a silicone baking mat and set it aside.
Add the flour, oats, baking powder, and salt to a medium mixing bowl and whisk together until combined. Set the flour mixture aside.
Beat the butter, peanut butter, and sugars in the bowl of a stand mixer fitted with the paddle attachment, or in a large mixing bowl with a handheld mixer, until light and creamy, about 3 minutes. Start on low speed then gradually increase the speed to high.
Add the egg and vanilla and beat on medium until completely mixed in. Add the flour mixture to the bowl with the butter mixture and beat until no more streaks of dry flour are visible. Start on low speed, then gradually increase the speed to medium-high, scraping down the sides and bottom of the bowl to ensure everything gets evenly mixed.
Add the m&m's and chocolate chips to the bowl and beat on low until evenly mixed into the dough. The dough will be slightly crumbly.
Using a cookie scoop, scoop about 3 tablespoons (60g) of dough into your palm, form it into a ball, and gently press the ball between your palms to flatten them into a cookie shape. Line the cookies on the baking sheet about an inch apart, and gently press a few more chocolate chips and m&m's into the tops of the cookies.
Bake the cookies in the preheated oven on a center rack for 8 to 10 minutes, or until the bottoms just start to turn light golden brown.
The cookies will look slightly underbaked and do not spread much at all while baking - that is exactly what you want! The cookies will continue to set as they cool and will be perfectly soft and chewy on the inside. Serve these cookies warm or at room temperature.