diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -26,10 +26,9 @@
 _stack.yml_
 
 ```yaml
-resolver: lts-13.24
+resolver: lts-13.30
 
 extra-deps:
-  - megaparsec-7.0.5
   - aeson-1.4.4.0
   - time-compat-1.9.2.2
 ```
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,10 @@
+## [0.3.1] - 05.10.2019
+
+### Changed
+
+- removed dependencies: attoparsec , utf8-string
+- updated aeson lower bound up to: 1.4.4.0
+
 ## [0.3.0] - 04.10.2019
 
 ### Added
@@ -30,7 +37,7 @@
 
   ```haskell
      data Deity m = Deity {
-       name :: () -> m String
+       name :: () -> m Text,
        power :: () -> m (Power m)
      }
   ```
@@ -50,15 +57,13 @@
   will be generated.
 
   ```haskell
-  $(importGQLDocumentWithNamespace "examples/Sophisticated/api.gql")
-
   data Deity m = Deity {
-    DeityName :: DeityNameArgs -> m String
-    DeityPower :: () -> m (Power m)
+    deityName :: DeityNameArgs -> m Text,
+    deityPower :: () -> m (Power m)
   }
 
   data DeityNameArgs = DeityNameArgs {
-    deityNameId :: Int
+    deityNameArgsId :: Int
   }
   ```
 
diff --git a/morpheus-graphql.cabal b/morpheus-graphql.cabal
--- a/morpheus-graphql.cabal
+++ b/morpheus-graphql.cabal
@@ -2,10 +2,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 9eb00b52c6088e489408ff248d45e1402e955f2885390bbcc2fbd26944051b36
+-- hash: 67b09c4ab9487b3b733622bc074185fee7c90c8828efc81188d85dd4b7507df8
 
 name:           morpheus-graphql
-version:        0.3.0
+version:        0.3.1
 synopsis:       Morpheus GraphQL
 description:    Build GraphQL APIs with your favourite functional language!
 category:       web, graphql
@@ -321,8 +321,7 @@
       src
   ghc-options: -Wall
   build-depends:
-      aeson >=1.0 && <=1.5
-    , attoparsec >=0.13.2 && <0.14
+      aeson >=1.4.4.0 && <=1.6
     , base >=4.7 && <5
     , bytestring >=0.10.4 && <0.11
     , containers >=0.4.2.1 && <0.7
@@ -334,10 +333,8 @@
     , text >=1.2.3.0 && <1.3
     , transformers >=0.3.0.0 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
-    , utf8-string >=1.0.1 && <1.1
     , uuid >=1.0 && <=1.4
     , vector >=0.12.0.1 && <0.13
-    , wai-websockets >=1.0 && <=3.5
     , websockets >=0.11.0 && <=0.12.5.3
   default-language: Haskell2010
 
@@ -360,7 +357,6 @@
   ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
   build-depends:
       aeson
-    , attoparsec >=0.13.2 && <0.14
     , base >=4.7 && <5
     , bytestring
     , containers >=0.4.2.1 && <0.7
@@ -374,7 +370,6 @@
     , text
     , transformers >=0.3.0.0 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
-    , utf8-string >=1.0.1 && <1.1
     , uuid >=1.0 && <=1.4
     , vector >=0.12.0.1 && <0.13
     , wai
@@ -392,7 +387,6 @@
   ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
   build-depends:
       aeson
-    , attoparsec >=0.13.2 && <0.14
     , base >=4.7 && <5
     , bytestring
     , containers >=0.4.2.1 && <0.7
@@ -407,10 +401,8 @@
     , text
     , transformers >=0.3.0.0 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
-    , utf8-string >=1.0.1 && <1.1
     , uuid >=1.0 && <=1.4
     , vector >=0.12.0.1 && <0.13
-    , wai-websockets >=1.0 && <=3.5
     , websockets >=0.11.0 && <=0.12.5.3
   default-language: Haskell2010
 
@@ -433,7 +425,6 @@
   ghc-options: -Wall
   build-depends:
       aeson
-    , attoparsec >=0.13.2 && <0.14
     , base >=4.7 && <5
     , bytestring >=0.10.4 && <0.11
     , containers >=0.4.2.1 && <0.7
@@ -448,9 +439,7 @@
     , text >=1.2.3.0 && <1.3
     , transformers >=0.3.0.0 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
-    , utf8-string >=1.0.1 && <1.1
     , uuid >=1.0 && <=1.4
     , vector >=0.12.0.1 && <0.13
-    , wai-websockets >=1.0 && <=3.5
     , websockets >=0.11.0 && <=0.12.5.3
   default-language: Haskell2010
diff --git a/src/Data/Morpheus/Execution/Server/Resolve.hs b/src/Data/Morpheus/Execution/Server/Resolve.hs
--- a/src/Data/Morpheus/Execution/Server/Resolve.hs
+++ b/src/Data/Morpheus/Execution/Server/Resolve.hs
@@ -15,13 +15,11 @@
   , fullSchema
   ) where
 
-import qualified Codec.Binary.UTF8.String                            as UTF8
 import           Control.Monad.Except                                (liftEither)
 import           Control.Monad.Trans.Except                          (ExceptT (..), runExceptT)
-import           Data.Aeson                                          (Result (..), encode, fromJSON)
-import           Data.Aeson.Parser                                   (jsonNoDup)
-import           Data.Attoparsec.ByteString                          (parseOnly)
-import qualified Data.ByteString                                     as S
+import           Data.Aeson                                          (encode)
+import           Data.Aeson.Internal                                 (formatError, ifromJSON)
+import           Data.Aeson.Parser                                   (eitherDecodeWith, jsonNoDup)
 import qualified Data.ByteString.Lazy.Char8                          as L
 import           Data.Functor.Identity                               (Identity (..))
 import           Data.Proxy                                          (Proxy (..))
@@ -64,17 +62,17 @@
      , EncodeMutCon m event cont mutation
      , EncodeSubCon m event cont subscription)
 
-decodeNoDup :: L.ByteString -> Result GQLRequest
-decodeNoDup bs =
-  case parseOnly jsonNoDup (S.pack . UTF8.encode $ L.unpack bs) of
-    Left e  -> Error e
-    Right v -> fromJSON v
+decodeNoDup :: L.ByteString -> Either String GQLRequest
+decodeNoDup str =
+  case eitherDecodeWith jsonNoDup ifromJSON str of
+    Left (path, x) -> Left $ formatError path x
+    Right value    -> Right value
 
 byteStringIO :: Monad m => (GQLRequest -> m GQLResponse) -> L.ByteString -> m L.ByteString
 byteStringIO resolver request =
   case decodeNoDup request of
-    Error aesonError' -> return $ badRequestError aesonError'
-    Success req       -> encode <$> resolver req
+    Left aesonError' -> return $ badRequestError aesonError'
+    Right req        -> encode <$> resolver req
 
 statelessResolver ::
      (Monad m, RootResCon m s cont query mut sub)
