diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -2,6 +2,9 @@
 
 `tmp-proc` uses [PVP Versioning][1].
 
+## 0.5.1.3 -- 2022-12-06
+
+* Extend the version bounds of mtl to allow 2.3.1
 
 ## 0.5.1.2 -- 2022-08-11
 
diff --git a/src/System/TmpProc/Docker.hs b/src/System/TmpProc/Docker.hs
--- a/src/System/TmpProc/Docker.hs
+++ b/src/System/TmpProc/Docker.hs
@@ -196,10 +196,10 @@
   {-| The connection type. -}
   type Conn a = (conn :: *) | conn -> a
 
-  {-| Get a connection to the Proc via its 'ProcHandle', -}
+  {-| Get a connection to the Proc via its 'ProcHandle'. -}
   openConn :: ProcHandle a -> IO (Conn a)
 
-  {-| Close a connection to a 'Proc', -}
+  {-| Close a connection to a 'Proc'. -}
   closeConn :: Conn a -> IO ()
   closeConn = const $ pure ()
 
@@ -237,13 +237,13 @@
 
 {-| Indicates the result of pinging a 'Proc'.
 
-If the ping succeeds, 'ping2' should return 'OK'.
+If the ping succeeds, 'ping' should return 'OK'.
 
-'ping2' should catch any exceptions that are expected when the @'Proc's@ service
+'ping' should catch any exceptions that are expected when the @'Proc's@ service
 is not available and return 'NotOK'.
 
 'startupAll' uses 'PingFailed' to report any unexpected exceptions that escape
-'ping2'.
+'ping'.
 
 -}
 data Pinged =
diff --git a/tmp-proc.cabal b/tmp-proc.cabal
--- a/tmp-proc.cabal
+++ b/tmp-proc.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               tmp-proc
-version:            0.5.1.2
+version:            0.5.1.3
 synopsis:           Run 'tmp' processes in integration tests
 description:
   @tmp-proc@ runs services in docker containers for use in integration tests.
@@ -57,7 +57,7 @@
     , async       ^>=2.2.1
     , base        >=4.11     && <5
     , bytestring  >=0.10.8.2 && <0.12
-    , mtl         ^>=2.2.2
+    , mtl         >=2.2 && <2.3 || >= 2.3.1 && <2.4
     , network     >=2.6.3.6  && <3.2
     , process     ^>=1.6.3.0
     , text        >=1.2.3 && <2.2
