Thanks for the suggestions! Rust made it easy to create what I needed:
Rust AST Explorer
You paste in any Rust code and it displays the AST. It uses the syn crate (for parsing and formatting) and WASM (for interactivity).
[Update: AST explorer is fancier. I saw it, but missed its Rust option, which is via a pull down.]
Please give it a try.
My hope is that this will make creating procedure macros easier.