Hi,
Here are some ideas I wrote to allow animator control keys to be smoothed or stepped for all selected controls. It currently doesn't have undo and still doesn't do exactly what I want it to (it currently needs selected animation curves, it can't work off of animator control directly). I'm still learning Maya's api, but I included some tips on commands, coming from using MEL, that may be helpful.
naTangentType.cpp
Before and After:
Cheers,
Nate