diff --git a/cmd-ls.go b/cmd-ls.go
index <HASH>..<HASH> 100644
--- a/cmd-ls.go
+++ b/cmd-ls.go
@@ -59,6 +59,10 @@ func printObject(date time.Time, v int64, key string) {
 func doListCmd(ctx *cli.Context) {
 	var items []*client.Item
 
+	if len(ctx.Args()) < 1 {
+		cli.ShowCommandHelpAndExit(ctx, "ls", 1) // last argument is exit code
+	}
+
 	urlStr, err := parseURL(ctx.Args().First())
 	if err != nil {
 		log.Debug.Println(iodine.New(err, nil))
diff --git a/cmd-mb.go b/cmd-mb.go
index <HASH>..<HASH> 100644
--- a/cmd-mb.go
+++ b/cmd-mb.go
@@ -25,6 +25,10 @@ import (
 
 // doMakeBucketCmd creates a new bucket
 func doMakeBucketCmd(ctx *cli.Context) {
+	if len(ctx.Args()) < 1 {
+		cli.ShowCommandHelpAndExit(ctx, "mb", 1) // last argument is exit code
+	}
+
 	urlStr, err := parseURL(ctx.Args().First())
 	if err != nil {
 		log.Debug.Println(iodine.New(err, nil))
show help when no args are passed