diff --git a/cli/server/prune.go b/cli/server/prune.go
index 2d59947f7..77be58f5a 100644
--- a/cli/server/prune.go
+++ b/cli/server/prune.go
@@ -4,6 +4,7 @@ import (
 	"context"
 
 	"coopcloud.tech/abra/cli/internal"
+	"coopcloud.tech/abra/pkg/autocomplete"
 	"coopcloud.tech/abra/pkg/client"
 	"github.com/docker/docker/api/types/filters"
 	"github.com/sirupsen/logrus"
@@ -37,37 +38,43 @@ var serverPruneCommand = cli.Command{
 		volumesFilterFlag,
 		internal.DebugFlag,
 	},
-	Before: internal.SubCommandBefore,
+	Before:       internal.SubCommandBefore,
+	BashComplete: autocomplete.ServerNameComplete,
 	Action: func(c *cli.Context) error {
-		// Leaving filters empty for now
 		var args filters.Args
+
 		serverName := internal.ValidateServer(c)
 
 		cl, err := client.New(serverName)
 		if err != nil {
 			logrus.Fatal(err)
 		}
+
 		ctx := context.Background()
 		cr, err := cl.ContainersPrune(ctx, args)
 		if err != nil {
 			logrus.Fatal(err)
 		}
+
 		logrus.Infof("Containers deleted: %s; Space reclaimed: %v", cr.ContainersDeleted, cr.SpaceReclaimed)
 
 		nr, err := cl.NetworksPrune(ctx, args)
 		if err != nil {
 			logrus.Fatal(err)
 		}
+
 		logrus.Infof("Networks deleted %s", nr.NetworksDeleted)
 
 		pruneFilters := filters.NewArgs()
 		if allFilter {
 			pruneFilters.Add("dangling", "false")
 		}
+
 		ir, err := cl.ImagesPrune(ctx, pruneFilters)
 		if err != nil {
 			logrus.Fatal(err)
 		}
+
 		logrus.Infof("Images deleted: %s; Space reclaimed: %v", ir.ImagesDeleted, ir.SpaceReclaimed)
 
 		if volunesFilter {
@@ -75,6 +82,7 @@ var serverPruneCommand = cli.Command{
 			if err != nil {
 				logrus.Fatal(err)
 			}
+
 			logrus.Infof("Volumes deleted: %s; Space reclaimed: %v", vr.VolumesDeleted, vr.SpaceReclaimed)
 		}