Here are the available MQL statements:

Most commonly used statements
assignment Changes variables value or model element properties.
foreach, break Processes some statements for each element contained within a collection.
if, else Conditionally skip some statements.
import Makes the referenced element (text template, ruleset or Java type) directly available in the ruleset.
metatype Specifies the metatype for which the contained scripts apply.
method call Calls a method or a script.
package Defines the namespace of rulesets and of scripts.
return Exits a script or a rule, with an optional value.
rule Defines the signature of a rule, as well as the contents to be evaluated.
rule call Evaluates a rule, either of the same ruleset or of an external ruleset.
ruleset Defines the signature of a ruleset, as well as the contained rules.
script Defines the signature of a script, as well as the contents to be evaluated
text template call Generates a file based on a referenced text template.
var Creates a new variable and initializes its value.
while, break Processes some statements while a condition is true.

Advanced statements
attempt, recover Provides alternate processing in case an error occurs.
stop Aborts the evaluation process.