diff --git a/lib/api/merge_requests.rb b/lib/api/merge_requests.rb
index ec63b3524741e9335d07a667346a45bd7a659969..a0ca3026acbd5a7f6a35e1d7dae1be8c0a0e8f6c 100644
--- a/lib/api/merge_requests.rb
+++ b/lib/api/merge_requests.rb
@@ -128,6 +128,9 @@ module Gitlab
         if note.save
           present note, with: Entities::MRNote
         else
+          if note.errors[:note].any?
+            error!(note.errors[:note], 400)
+          end
           not_found!
         end
       end
diff --git a/spec/requests/api/merge_requests_spec.rb b/spec/requests/api/merge_requests_spec.rb
index bf87ecbdc6f1373dd173696efe089c4baa173f4d..531b56b8e532a9e3c28cd6ae800cfef729c8b61e 100644
--- a/spec/requests/api/merge_requests_spec.rb
+++ b/spec/requests/api/merge_requests_spec.rb
@@ -87,6 +87,11 @@ describe Gitlab::API do
       response.status.should == 201
       json_response['note'].should == 'My comment'
     end
+
+    it "should return 400 if note is missing" do
+      post api("/projects/#{project.id}/merge_request/#{merge_request.id}/comments", user)
+      response.status.should == 400
+    end
   end
 
 end