diff --git a/Framework/ICat/src/CatalogAlgorithmHelper.cpp b/Framework/ICat/src/CatalogAlgorithmHelper.cpp
index 192c099f2b10e718bb65a9cf162cfae2dbb15f9b..db193a9bc7efbb164c7a09956fdb9e0d8fc3ef53 100644
--- a/Framework/ICat/src/CatalogAlgorithmHelper.cpp
+++ b/Framework/ICat/src/CatalogAlgorithmHelper.cpp
@@ -1,8 +1,7 @@
 #include "MantidICat/CatalogAlgorithmHelper.h"
 
-#include <boost/property_tree/ptree.hpp>
-#include <boost/property_tree/json_parser.hpp>
 #include <boost/assign/list_of.hpp>
+#include <json/reader.h>
 
 namespace Mantid {
 namespace ICat {
@@ -26,9 +25,9 @@ const std::string CatalogAlgorithmHelper::getIDSError(
   // from the server is not in our successHTTPStatus set.
   if (successHTTPStatus.find(HTTPStatus) == successHTTPStatus.end()) {
     // Stores the contents of `jsonResponseData` as a json property tree.
-    boost::property_tree::ptree json;
+    Json::Value json;
     // Convert the stream to a JSON tree.
-    boost::property_tree::read_json(responseStream, json);
+    Json::Reader::parse(responseStream, json);
     // Return the message returned by the server.
     return json.get<std::string>("code") + ": " +
            json.get<std::string>("message");