diff --git a/server/server.js b/server/server.js
index abc5e44527f50aaa74363f3e1d09220f6fa4fe5c..086923ed5a7c9af26158ce18c4cf3313d2b606f2 100644
--- a/server/server.js
+++ b/server/server.js
@@ -17,6 +17,13 @@ logger.level = 'debug';
 
 // Define the MongoDB connection
 const db = require('monk')(process.env.DB);
+let useDb = false;
+db.then(() => {
+    logger.info('Connection to MongoDB OK');
+    useDb = true;
+}).catch((err) => {
+    logger.error('Connection to MongoDB failed');
+});
 const collection = db.get('kittens');
 
 // For simple purpose, laxist CORS rules
@@ -106,8 +113,11 @@ app.get('/swagger.json', (req, res) => {
 app.get('/:width/:height', async (req, res) => {
     logger.debug(req);
     try {
-        // If a matching doc is found, return it
-        const doc = await collection.findOne({ width: req.params.width, height: req.params.height });
+        let doc = undefined;
+        if (useDb) {
+            // If a matching doc is found, return it
+            doc = await collection.findOne({ width: req.params.width, height: req.params.height });
+        }
         if (doc) {
             doc._id = undefined;
             res.status(200).send(doc);
@@ -123,8 +133,10 @@ app.get('/:width/:height', async (req, res) => {
                 width: req.params.width,
                 height: req.params.height
             }
-
-            collection.insert(kitten);
+            if (useDb) {
+                logger.debug('insert in DB', kitten);
+                collection.insert(kitten);
+            }
             res.status(200).send(kitten);
         }
     } catch (error) {