MORATE (Molecular Orbital RATE calculations) is a computer program for direct dynamics calculations of unimolecular and bimolecular rate constants of gas-phase chemical reactions involving atoms, diatoms, or polyatomic species. The dynamical methods used are conventional or variational transition state theory and multidimensional semiclassical approximations for tunneling and nonclassical reflection. Variational transition states are found by a one-dimensional search of generalized-transition-state dividing surfaces perpendicular to the minimum-energy path, and tunneling probabilities are evaluated by multidimensional semiclassical algorithms, including the small-curvature and large-curvature tunneling approximations and the microcanonical optimized multidimensional tunneling approximation. The computer program is a conventiently interfaced package consisting of the POLYRATE program, version 6.5, for dynamical rate constant calculations, and the MOPAC program, version 5.05mn, for semiempirical electronic structure computations. In single-level mode, the potential energies, gradients, and higher derivatives of the potential are computed whenever needed by electronic structure calculations employing semiempirical molecular orbital theory without the intermediary of a global or semiglobal fit. All semiempirical methods available in MOPAC, in particular MINDO/3, MNDO, AM1, and PM3, can be called on to calculate the potential, gradient, or Hessian, as required at various steps of the dynamics calculations, and, in addition, the code has flexible options for electronic structure calculations with neglect of diatomic differential overlap and specific reaction parameters (NDDO-SRP). In dual-level mode, MINDO/3, MNDO, AM1, PM3, or NDDO-SRP is used as a lower level to calculate the reaction path, and interpolated corrections to energies and frequencies are added; these corrections are based on higher-level data read from an external file.