Grass is personal preference, really, but consider that they're getting the pesticides and herbicides that have been sprayed on it. Eating dirt is a good way to pick up parasites. Sticks and pine cones are sharp and can tear or puncture his intestinal tract. Mulch, depending on type, can be poisonous to dogs and if he eats enough can cause a blockage. Stones can also cause blockages, or just sit in his stomach and cause an upset.
Personally, I don't let mine eat any of those things. I will let him carry sticks and mulch, but he is not allowed to try and eat them. When he was a puppy it was about a week's worth of saying "Out!" and digging whatever he'd picked up out of his mouth before he started dropping it as soon as I said "Out!". It would go even faster if you have a treat to give him as soon as he complies. It was quite a bit longer before he gave up on trying to eat that kind of thing entirely, but he did. Now I use "out" to get him to drop toys when we play fetch and such.