diff --git a/mysql-test/r/im_life_cycle.result b/mysql-test/r/im_life_cycle.result
index 70aef9c40d5..e208ccb9f00 100644
--- a/mysql-test/r/im_life_cycle.result
+++ b/mysql-test/r/im_life_cycle.result
@@ -64,3 +64,7 @@ mysqld1	online
 mysqld2	offline
 SHOW INSTANCE STATUS;
 ERROR 42000: You have an error in your command syntax. Check the manual that corresponds to your MySQL Instance Manager version for the right syntax to use
+START INSTANCE mysqld1,mysqld2,mysqld3;
+ERROR 42000: You have an error in your command syntax. Check the manual that corresponds to your MySQL Instance Manager version for the right syntax to use
+STOP INSTANCE mysqld1,mysqld2,mysqld3;
+ERROR 42000: You have an error in your command syntax. Check the manual that corresponds to your MySQL Instance Manager version for the right syntax to use
diff --git a/mysql-test/t/im_life_cycle.imtest b/mysql-test/t/im_life_cycle.imtest
index 2ea0c151d5a..246843a022b 100644
--- a/mysql-test/t/im_life_cycle.imtest
+++ b/mysql-test/t/im_life_cycle.imtest
@@ -149,3 +149,18 @@ SHOW INSTANCES;
 ###########################################################################
 --error 1149
 SHOW INSTANCE STATUS;
+
+#
+# Tests for bug fixes
+#
+
+#
+# Bug #12813    Instance Manager: START/STOP INSTANCE commands accept
+#                                 a list as argument.
+#
+
+--error 1149
+START INSTANCE mysqld1,mysqld2,mysqld3;
+
+--error 1149
+STOP INSTANCE mysqld1,mysqld2,mysqld3;
diff --git a/server-tools/instance-manager/parse.cc b/server-tools/instance-manager/parse.cc
index 9d9064240d4..14b3db16b45 100644
--- a/server-tools/instance-manager/parse.cc
+++ b/server-tools/instance-manager/parse.cc
@@ -143,7 +143,7 @@ Command *parse_command(Instance_map *map, const char *text)
     instance_name_len= word_len;
     text+= word_len;
     /* it should be the end of command */
-    get_word(&text, &word_len);
+    get_word(&text, &word_len, NONSPACE);
     if (word_len)
       goto syntax_error;
 
@@ -156,7 +156,7 @@ Command *parse_command(Instance_map *map, const char *text)
     if (shift_token(&text, &word_len) != TOK_INSTANCES)
       goto syntax_error;
 
-    get_word(&text, &word_len);
+    get_word(&text, &word_len, NONSPACE);
     if (word_len)
       goto syntax_error;
 
@@ -197,7 +197,7 @@ Command *parse_command(Instance_map *map, const char *text)
     }
 
     /* should be empty */
-    get_word(&text, &word_len);
+    get_word(&text, &word_len, NONSPACE);
     if (word_len)
       goto syntax_error;
 
@@ -213,7 +213,7 @@ Command *parse_command(Instance_map *map, const char *text)
   case TOK_SHOW:
     switch (shift_token(&text, &word_len)) {
     case TOK_INSTANCES:
-      get_word(&text, &word_len);
+      get_word(&text, &word_len, NONSPACE);
       if (word_len)
         goto syntax_error;
       command= new Show_instances(map);
@@ -226,7 +226,7 @@ Command *parse_command(Instance_map *map, const char *text)
           goto syntax_error;
         text+= instance_name_len;
         /* check that this is the end of the command */
-        get_word(&text, &word_len);
+        get_word(&text, &word_len, NONSPACE);
         if (word_len)
           goto syntax_error;
         if (tok2 == TOK_STATUS)
@@ -250,7 +250,7 @@ Command *parse_command(Instance_map *map, const char *text)
         case TOK_LOG:
           switch (Token tok3= shift_token(&text, &word_len)) {
           case TOK_FILES:
-            get_word(&text, &word_len);
+            get_word(&text, &word_len, NONSPACE);
             /* check that this is the end of the command */
             if (word_len)
               goto syntax_error;
@@ -290,10 +290,14 @@ Command *parse_command(Instance_map *map, const char *text)
                 get_word(&text, &word_len);
                 if (!word_len)
                   goto syntax_error;
+                text+= word_len;
                 command= new Show_instance_log(map, instance_name,
                                                instance_name_len, log_type,
                                                log_size, text);
-
+                get_word(&text, &word_len, NONSPACE);
+                /* check that this is the end of the command */
+                if (word_len)
+                  goto syntax_error;
                 break;
               case '\0':
                 command= new Show_instance_log(map, instance_name,