diff --git a/app/services/merge_requests/build_service.rb b/app/services/merge_requests/build_service.rb
index 9d4739e37bba66901e4d6d09cc0bb555c80670d1..fdce542bd9e04080379ef2c5e338c66a56ff5efe 100644
--- a/app/services/merge_requests/build_service.rb
+++ b/app/services/merge_requests/build_service.rb
@@ -6,7 +6,7 @@ def execute
       merge_request.source_project  = find_source_project
       merge_request.target_project  = find_target_project
       merge_request.target_branch   = find_target_branch
-      merge_request.can_be_created  = branches_valid? && source_branch_specified? && target_branch_specified?
+      merge_request.can_be_created  = branches_valid?
 
       compare_branches if branches_present?
       assign_title_and_description if merge_request.can_be_created
diff --git a/changelogs/unreleased/28890-allow-creating-mr-without-target-branch-in-url.yml b/changelogs/unreleased/28890-allow-creating-mr-without-target-branch-in-url.yml
new file mode 100644
index 0000000000000000000000000000000000000000..114a14ec2df651b21b6d4f37be8a0a0d2b1bfa3a
--- /dev/null
+++ b/changelogs/unreleased/28890-allow-creating-mr-without-target-branch-in-url.yml
@@ -0,0 +1,5 @@
+---
+title: Allow creating merge request even if target branch is not specified in query
+  params
+merge_request: 9968
+author:
diff --git a/spec/features/merge_requests/user_uses_slash_commands_spec.rb b/spec/features/merge_requests/user_uses_slash_commands_spec.rb
index 2f3c3e45ae63082403ff987d251d23f40c3f89bc..a1f4eb2688b014f2bf17b8d3842f535d6bc8bc80 100644
--- a/spec/features/merge_requests/user_uses_slash_commands_spec.rb
+++ b/spec/features/merge_requests/user_uses_slash_commands_spec.rb
@@ -133,7 +133,6 @@
 
       it 'changes target_branch in new merge_request' do
         visit new_namespace_project_merge_request_path(another_project.namespace, another_project, new_url_opts)
-        click_button "Compare branches and continue"
 
         fill_in "merge_request_title", with: 'My brand new feature'
         fill_in "merge_request_description", with: "le feature \n/target_branch fix\nFeature description:"
diff --git a/spec/services/merge_requests/build_service_spec.rb b/spec/services/merge_requests/build_service_spec.rb
index 0768f644036d43c2755e0c1fe1971dac5ed05c2e..adfa75a524fb3966502a08e63cf74969c30bc812 100644
--- a/spec/services/merge_requests/build_service_spec.rb
+++ b/spec/services/merge_requests/build_service_spec.rb
@@ -49,10 +49,13 @@
       let(:commits) { Commit.decorate([commit_1], project) }
 
       it 'creates compare object with target branch as default branch' do
-        expect(merge_request.can_be_created).to eq(false)
         expect(merge_request.compare).to be_present
         expect(merge_request.target_branch).to eq(project.default_branch)
       end
+
+      it 'allows the merge request to be created' do
+        expect(merge_request.can_be_created).to eq(true)
+      end
     end
 
     context 'same source and target branch' do