jmxsh is a fully scriptable command-line JMX client based on Tcl. It is simply a Tcl interpreter powered by Java/Tcl (with command-line history and editing provided by JLine) that has special command-line options for connecting to JMX servers and special Tcl commands for interacting with JMX servers. jmxsh is capable of simultaneously connecting to multiple JMX servers. There's also a "browse mode" for exploring the remote JMX namespace without knowing beforehand the names of MBeans or their properties. jmxsh and all its dependencies are distributed in a self-contained executable jar file for ease of use.