There are a number of Scheme implementations running on the JVM (e.g. JScheme, Kawa).
Do any of them support both of: a) Two-way interoperability with Java. b) Access to the AST for a Scheme expression?
Kawa has two-way interoperability.
From Kawa Features:
Full convenient and efficient access to the huge set of Java libraries means you can access objects, methods, fields, and classes without run-time overhead.
From "Evaluating Scheme expressions from Java"
The following methods are recommended if you need to evaluate a Scheme expression from a Java method.
How the Scheme types are represented in Java are described here:
For more information try sending a mail to the Kawa mailing list.