diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -7,6 +7,12 @@
 
 ## [Unreleased]
 
+## [0.1.0.2] - 2018-07-06
+
+### Changed
+
+- #95 Upgrade to servant-0.14.1 @domenkozar
+
 ## [0.1.0.1] - 2018-07-05
 
 ### Changed
diff --git a/cachix.cabal b/cachix.cabal
--- a/cachix.cabal
+++ b/cachix.cabal
@@ -2,10 +2,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 5225259f70e6c6df5a7ffab92dc1a70e87f7bd25284107c3f5009f1659d4a466
+-- hash: b62b5e1ccb861524ee1650a2bfa91671a9de1a99b3b66115ef89704165e5b069
 
 name:           cachix
-version:        0.1.0.1
+version:        0.1.0.2
 synopsis:       Command line client for Nix binary cache hosting https://cachix.org
 homepage:       https://github.com/cachix/cachix#readme
 bug-reports:    https://github.com/cachix/cachix/issues
@@ -71,11 +71,11 @@
     , process
     , protolude
     , resourcet
-    , servant >=0.14
+    , servant >=0.14.1
     , servant-auth
     , servant-auth-client >=0.3.3.0
     , servant-client >=0.14
-    , servant-generic
+    , servant-client-core >=0.14.1
     , servant-streaming-client >=0.3.0.0
     , streaming
     , text
@@ -123,11 +123,11 @@
     , process
     , protolude
     , resourcet
-    , servant >=0.14
+    , servant >=0.14.1
     , servant-auth
     , servant-auth-client >=0.3.3.0
     , servant-client >=0.14
-    , servant-generic
+    , servant-client-core >=0.14.1
     , servant-streaming-client >=0.3.0.0
     , streaming
     , text
@@ -182,11 +182,11 @@
     , process
     , protolude
     , resourcet
-    , servant >=0.14
+    , servant >=0.14.1
     , servant-auth
     , servant-auth-client >=0.3.3.0
     , servant-client >=0.14
-    , servant-generic
+    , servant-client-core >=0.14.1
     , servant-streaming-client >=0.3.0.0
     , streaming
     , text
diff --git a/src/Cachix/Client/Commands.hs b/src/Cachix/Client/Commands.hs
--- a/src/Cachix/Client/Commands.hs
+++ b/src/Cachix/Client/Commands.hs
@@ -32,7 +32,8 @@
 import           Servant.Auth                   ()
 import           Servant.Auth.Client
 import           Servant.Streaming.Client       ()
-import           Servant.Generic
+import           Servant.API.Generic
+import           Servant.Client.Generic
 import           System.Directory               ( doesFileExist )
 import           System.FSNotify
 import           System.IO                      ( stdin, hIsTerminalDevice )
@@ -56,10 +57,10 @@
 import           Cachix.Client.Servant
 
 
-cachixClient :: Api.CachixAPI AsClient
+cachixClient :: Api.CachixAPI (AsClientT ClientM)
 cachixClient = fromServant $ client Api.servantApi
 
-cachixBCClient :: Text -> Api.BinaryCacheAPI AsClient
+cachixBCClient :: Text -> Api.BinaryCacheAPI (AsClientT ClientM)
 cachixBCClient name = fromServant $ Api.cache cachixClient name
 
 authtoken :: ClientEnv -> Maybe Config -> Text -> IO ()
diff --git a/src/Cachix/Client/Servant.hs b/src/Cachix/Client/Servant.hs
--- a/src/Cachix/Client/Servant.hs
+++ b/src/Cachix/Client/Servant.hs
@@ -4,18 +4,12 @@
 {-# LANGUAGE UndecidableInstances #-}
 
 module Cachix.Client.Servant
-  ( AsClient
-  , isErr
+  ( isErr
   ) where
 
 import Protolude
 import Network.HTTP.Types (Status)
 import Servant.Client
-import Servant.Generic
-
--- TODO: servant-generic-client https://github.com/chpatrick/servant-generic/issues/10
-data AsClient
-type instance AsClient :- api = Client ClientM api
 
 isErr :: ServantError -> Status -> Bool
 isErr (FailureResponse resp) status | responseStatusCode resp == status = True
