diff --git oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/jmx/AnnotatedStandardMBean.java oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/jmx/AnnotatedStandardMBean.java
index 2ed7494..a9ae8ae 100644
--- oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/jmx/AnnotatedStandardMBean.java
+++ oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/jmx/AnnotatedStandardMBean.java
@@ -42,14 +42,12 @@ public class AnnotatedStandardMBean extends StandardMBean {
      *
      * @see {@link javax.management.StandardMBean#StandardMBean(Object, Class)}
      */
-    public <T> AnnotatedStandardMBean(T implementation, Class<T> mbeanInterface)
-            throws NotCompliantMBeanException {
-        super(implementation, mbeanInterface);
+    public <T> AnnotatedStandardMBean(T implementation, Class<T> mbeanInterface){
+        super(implementation, mbeanInterface, false);
     }
 
-    protected AnnotatedStandardMBean(Class<?> mbeanInterface)
-            throws NotCompliantMBeanException {
-        super(mbeanInterface);
+    protected AnnotatedStandardMBean(Class<?> mbeanInterface){
+        super(mbeanInterface, false);
     }
 
     @Override
diff --git oak-core/src/main/java/org/apache/jackrabbit/oak/api/jmx/RepositoryManagementMBean.java oak-core/src/main/java/org/apache/jackrabbit/oak/api/jmx/RepositoryManagementMBean.java
index 4689e52..f16006c 100644
--- oak-core/src/main/java/org/apache/jackrabbit/oak/api/jmx/RepositoryManagementMBean.java
+++ oak-core/src/main/java/org/apache/jackrabbit/oak/api/jmx/RepositoryManagementMBean.java
@@ -23,6 +23,9 @@ import javax.annotation.CheckForNull;
 import javax.annotation.Nonnull;
 import javax.management.openmbean.CompositeData;
 
+import org.apache.jackrabbit.oak.commons.jmx.Description;
+import org.apache.jackrabbit.oak.commons.jmx.Name;
+
 /**
  * This interface exposes repository management operations and the status
  * of such operations. This interface only provides high level functionality
@@ -134,7 +137,11 @@ public interface RepositoryManagementMBean {
      * @return  the status of the operation right after it was initiated
      */
     @Nonnull
-    CompositeData startDataStoreGC(boolean markOnly);
+    CompositeData startDataStoreGC(@Name("markOnly")
+            @Description("Set to true to only mark references and not sweep in the mark and sweep operation. " +
+                    "This mode is to be used when the underlying BlobStore is shared between multiple " +
+                    "different repositories. For all other cases set it to false to perform full garbage collection")
+                                   boolean markOnly);
 
     /**
      * Data store garbage collection status
diff --git oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java
index 40d6115..790f26e 100644
--- oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java
+++ oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java
@@ -33,6 +33,7 @@ import javax.management.openmbean.CompositeData;
 
 import com.google.common.base.Function;
 import org.apache.jackrabbit.oak.api.jmx.RepositoryManagementMBean;
+import org.apache.jackrabbit.oak.commons.jmx.AnnotatedStandardMBean;
 import org.apache.jackrabbit.oak.plugins.backup.FileStoreBackupRestoreMBean;
 import org.apache.jackrabbit.oak.plugins.blob.BlobGCMBean;
 import org.apache.jackrabbit.oak.plugins.index.property.jmx.PropertyIndexAsyncReindexMBean;
@@ -47,10 +48,11 @@ import org.apache.jackrabbit.oak.spi.whiteboard.Whiteboard;
  * garbage collections ({@link BlobGCMBean}) and revision store garbage
  * collections ({@link RevisionGCMBean}).
  */
-public class RepositoryManager implements RepositoryManagementMBean {
+public class RepositoryManager extends AnnotatedStandardMBean implements RepositoryManagementMBean {
     private final Whiteboard whiteboard;
 
     public RepositoryManager(@Nonnull Whiteboard whiteboard) {
+        super(RepositoryManagementMBean.class);
         this.whiteboard = checkNotNull(whiteboard);
     }
 
