diff --git a/modules/bindings/doc/bindings.rst b/modules/bindings/doc/bindings.rst
index fc5357608c5a09becf40ba13b0ebed59fe634769..744f6059c6d736c6a2c2eaa57bdae979b9c7c286 100644
--- a/modules/bindings/doc/bindings.rst
+++ b/modules/bindings/doc/bindings.rst
@@ -17,3 +17,4 @@ So far, the binding module includes:
   blast
   msms
   tmtools
+  clustalw
diff --git a/modules/bindings/doc/clustalw.rst b/modules/bindings/doc/clustalw.rst
new file mode 100644
index 0000000000000000000000000000000000000000..a7f738d5e5e3a2fe71e48cb9a07874cc4078ded1
--- /dev/null
+++ b/modules/bindings/doc/clustalw.rst
@@ -0,0 +1,8 @@
+:mod:`~ost.bindings.clustalw` - Perform multiple sequence alignment
+================================================================================
+
+.. module:: ost.bindings.clustalw
+  :synopsis: Perform multiple sequence alignment
+
+
+.. autofunction:: ost.bindings.clustalw.ClustalW
diff --git a/modules/bindings/doc/msms.rst b/modules/bindings/doc/msms.rst
index 0085571c0a063b15bb78e7ecb6dded7a89ad24ef..d9ed150c26576990b22e7ad7005a5e28914aa701 100644
--- a/modules/bindings/doc/msms.rst
+++ b/modules/bindings/doc/msms.rst
@@ -6,6 +6,10 @@
 
 .. autoclass:: ost.bindings.msms.MsmsProcessError
 
+.. autofunction:: ost.bindings.msms.CalculateSurface
+
 .. autofunction:: ost.bindings.msms.CalculateSurfaceArea
 
-.. autofunction:: ost.bindings.msms.CalculateSurface
+.. autofunction:: ost.bindings.msms.CalculateSurfaceVolume
+
+.. autofunction:: ost.bindings.msms.GetVersion
\ No newline at end of file
diff --git a/modules/bindings/pymod/clustalw.py b/modules/bindings/pymod/clustalw.py
index 2c2fd6ebac5cf580dd1a259cb087a0ada9a127c4..0204cd8ccc9a51962ccbef257676341c43b4cd7c 100644
--- a/modules/bindings/pymod/clustalw.py
+++ b/modules/bindings/pymod/clustalw.py
@@ -5,6 +5,46 @@ import subprocess
 
 def ClustalW(seq1, seq2=None, clustalw=None, keep_files=False, nopgap=False, 
              clustalw_option_string=False):
+  '''
+  Runs a clustalw multiple sequence alignment. The results are returned as a
+  :class:`~ost.seq.AlignmentHandle` instance.
+  
+  There are two ways to use this function:
+  
+   - align exactly two sequences:
+   
+      :param seq1: sequence_one
+      :type seq1: :class:`~ost.seq.SequenceHandle` or :class:`str`
+      
+      :param seq2: sequence_two
+      :type seq2: :class:`~ost.seq.SequenceHandle` or :class:`str`
+  
+      The two sequences can be specified as two separate function parameters 
+      (`seq1`, `seq2`). The type of both parameters can be either
+      :class:`~ost.seq.SequenceHandle` or :class:`str`, but must be the same for
+      both parameters.
+      
+   - align two or more sequences:
+   
+      :param seq1: sequence_list
+      :type seq1: :class:`~ost.seq.SequenceList`
+      
+      :param seq2: must be :class:`None`
+      
+      Two or more sequences can be specified by using a
+      :class:`~ost.seq.SequenceList`. It is then passed as the first function 
+      parameter (`seq1`). The second parameter (`seq2`) must be :class:`None`.
+      
+       
+  :param clustalw: path to clustalw executable (used in :func:`~ost.settings.Locate`)
+  :type clustalw: :class:`str`
+  :param nopgap: turn residue-specific gaps off
+  :type nopgap: :class:`bool`
+  :param clustalw_option_string: additional clustalw flags (see http://toolkit.tuebingen.mpg.de/clustalw/help_params)
+  :type clustalw_option_string: :class:`str`
+  :param keep_files: do not delete temporary files
+  :type keep_files: :class:`bool`
+  '''
   clustalw_path=settings.Locate(('clustalw', 'clustalw2'), 
                                 explicit_file_name=clustalw)
   
diff --git a/modules/bindings/pymod/msms.py b/modules/bindings/pymod/msms.py
index ef1bb4d0558b6284e052e7251f138370ca9f81ec..60009f6070d2592ed6790521359a82684771f647 100644
--- a/modules/bindings/pymod/msms.py
+++ b/modules/bindings/pymod/msms.py
@@ -348,7 +348,7 @@ def CalculateSurface(entity, density=1.0, radius=1.5, all_surf=False,
   :param radius:        Surface probe radius
   :param all_surf:      Calculate surface for all cavities (returns multiple
                         surfaces as a list)
-  :param no_hydrogens:  Calculate surface only for hevy atoms
+  :param no_hydrogens:  Calculate surface only for heavy atoms
   :param selection:     Calculate surface for subset of entity
   :param msms_exe:      msms executable (full path to executable)
   :param msms_env:      msms environment variable