diff --git a/servant-purescript.cabal b/servant-purescript.cabal
--- a/servant-purescript.cabal
+++ b/servant-purescript.cabal
@@ -1,5 +1,5 @@
 name:                servant-purescript
-version:             0.6.0.0
+version:             0.7.0.0
 synopsis:            Generate PureScript accessor functions for you servant API
 description:         Please see README.md
 homepage:            https://github.com/eskimor/servant-purescript#readme
diff --git a/src/Servant/PureScript/CodeGen.hs b/src/Servant/PureScript/CodeGen.hs
--- a/src/Servant/PureScript/CodeGen.hs
+++ b/src/Servant/PureScript/CodeGen.hs
@@ -88,7 +88,7 @@
 
 
 genSignature :: Text -> [PSType] -> Maybe PSType -> Doc
-genSignature = genSignatureBuilder $ "forall eff m." <+/> "(MonadReader (SPSettings_ SPParams_) m, MonadError AjaxError m, MonadAff ( ajax :: AJAX | eff) m)" <+/> "=>"
+genSignature = genSignatureBuilder $ "forall eff m." <+/> "(MonadAsk (SPSettings_ SPParams_) m, MonadError AjaxError m, MonadAff ( ajax :: AJAX | eff) m)" <+/> "=>"
 
 genSignatureBuilder :: Doc -> Text -> [PSType] -> Maybe PSType -> Doc
 genSignatureBuilder constraint fnName params mRet = fName <+> "::" <+> align (constraint <+/> parameterString)
diff --git a/src/Servant/PureScript/Internal.hs b/src/Servant/PureScript/Internal.hs
--- a/src/Servant/PureScript/Internal.hs
+++ b/src/Servant/PureScript/Internal.hs
@@ -17,10 +17,10 @@
 import           Data.Char
 import           Data.Monoid
 import           Data.Proxy
-import           Data.Set                            (Set)
-import qualified Data.Set                            as Set
-import           Data.Text                           (Text)
-import qualified Data.Text                           as T
+import           Data.Set                           (Set)
+import qualified Data.Set                           as Set
+import           Data.Text                          (Text)
+import qualified Data.Text                          as T
 import           Data.Typeable
 
 import           Language.PureScript.Bridge
@@ -73,7 +73,7 @@
 
 
 data Settings = Settings {
-  _apiModuleName   :: Text
+  _apiModuleName         :: Text
   -- | This function parameters should instead be put in a Reader monad.
   --
   --   'baseUrl' will be put there by default, you can add additional parameters.
@@ -81,8 +81,8 @@
   --   If your API uses a given parameter name multiple times with different types,
   --   only the ones matching the type of the first occurrence
   --   will be put in the Reader monad, all others will still be passed as function parameter.
-, _readerParams    :: Set ParamName
-, _standardImports :: ImportLines
+, _readerParams          :: Set ParamName
+, _standardImports       :: ImportLines
   -- | If you want codegen for servant-subscriber, set this to True. See the central-counter example
   --   for a simple usage case.
 , _generateSubscriberAPI :: Bool
@@ -94,7 +94,7 @@
     _apiModuleName    = "ServerAPI"
   , _readerParams     = Set.singleton baseURLId
   , _standardImports = importsFromList
-        [ ImportLine "Control.Monad.Reader.Class" (Set.fromList [ "class MonadReader", "ask" ])
+        [ ImportLine "Control.Monad.Reader.Class" (Set.fromList [ "class MonadAsk", "ask" ])
         , ImportLine "Control.Monad.Error.Class" (Set.fromList [ "class MonadError" ])
         , ImportLine "Control.Monad.Aff.Class" (Set.fromList [ "class MonadAff", "liftAff" ])
         , ImportLine "Network.HTTP.Affjax" (Set.fromList [ "AJAX" ])
diff --git a/src/Servant/PureScript/MakeRequests.hs b/src/Servant/PureScript/MakeRequests.hs
--- a/src/Servant/PureScript/MakeRequests.hs
+++ b/src/Servant/PureScript/MakeRequests.hs
@@ -86,7 +86,7 @@
 
 
 genSignature :: Text -> [PSType] -> Maybe PSType -> Doc
-genSignature = genSignatureBuilder $ "forall m." <+/> "MonadReader (SPSettings_ SPParams_) m" <+/> "=>"
+genSignature = genSignatureBuilder $ "forall m." <+/> "MonadAsk (SPSettings_ SPParams_) m" <+/> "=>"
 
 genFnBody :: [PSParam] -> Req PSType -> Doc
 genFnBody rParams req = "do"
diff --git a/src/Servant/PureScript/Subscriber.hs b/src/Servant/PureScript/Subscriber.hs
--- a/src/Servant/PureScript/Subscriber.hs
+++ b/src/Servant/PureScript/Subscriber.hs
@@ -22,10 +22,10 @@
 import           Servant.Foreign
 import           Servant.PureScript.CodeGen         (docIntercalate, genFnHead,
                                                      genModuleHeader,
+                                                     genSignatureBuilder,
                                                      getReaderParams, psVar,
                                                      reqToParams,
-                                                     reqsToImportLines,
-                                                     genSignatureBuilder)
+                                                     reqsToImportLines)
 import           Servant.PureScript.Internal
 import           Servant.PureScript.MakeRequests    hiding (genFnBody,
                                                      genFunction, genModule,
@@ -60,7 +60,7 @@
     fnName = req ^. reqFuncName ^. camelCaseL
     responseType = case req ^. reqReturnType of
                      Nothing -> psUnit
-                     Just t -> t
+                     Just t  -> t
     allParamsList = makeTypedToUserParam responseType : baseURLParam : reqToParams req
     fnParams = filter (not . flip Set.member rParamsSet) allParamsList -- Use list not set, as we don't want to change order of parameters
 
@@ -73,7 +73,7 @@
 
 
 genSignature :: Text -> [PSType] -> Maybe PSType -> Doc
-genSignature = genSignatureBuilder $ "forall m a." <+/> "MonadReader (SPSettings_ SPParams_) m" <+/> "=>"
+genSignature = genSignatureBuilder $ "forall m a." <+/> "MonadAsk (SPSettings_ SPParams_) m" <+/> "=>"
 
 genFnBody :: Text -> [Text] -> Doc
 genFnBody fName params = "do"
