diff --git a/mpcdf_branch.py b/mpcdf_branch.py
index a1980b3ea8b8eb443bae8d4cfaadfcfabc8b5578..92b5a4af78220761138b9242a64939ffcf81b1d1 100644
--- a/mpcdf_branch.py
+++ b/mpcdf_branch.py
@@ -16,19 +16,24 @@ def do_mpcdf_branch(self, subcmd, opts, *args):
     all required meta-data for the enabled repositories.
 
     Usage:
-        osc mpcdf_branch PACKAGE
+        osc mpcdf_branch PACKAGE [home:$USER]
 
     ${cmd_option_list}
     """
 
     apiurl = self.get_api_url()
-    target_project = "home:" + osc.conf.get_apiurl_usr(apiurl)
 
     if len(args) == 0:
         raise osc.oscerr.WrongArgs("Missing argument: PACKAGENAME")
-    if len(args) > 1:
+    elif len(args) == 1:
+        package, = args
+        target_project = "home:" + osc.conf.get_apiurl_usr(apiurl)
+    elif len(args) == 2:
+        package, target_project = args
+        if not target_project.startswith("home:"):  # + osc.conf.get_apiurl_usr(apiurl)):
+            raise osc.oscerr.WrongArgs("Target must be a home project")
+    if len(args) > 2:
         raise osc.oscerr.WrongArgs("Too many arguments")
 
-    package, = args
     mpcdf_common.sync_projects(apiurl, package=package, from_project="software",
                                to_projects=(target_project,), add_to_maintainers=False)