diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,3 +1,8 @@
+5.2.8 [2026.01.10]
+------------------
+* Add `MonadThrow` instance for `Codensity`.
+* Remove unused `array`, `containers`, and `tagged` dependencies.
+
 5.2.7 [2025.06.17]
 ------------------
 * Make the implementations of `(.>)` and `(*>)` for `Data.Functor.Yoneda` more
diff --git a/kan-extensions.cabal b/kan-extensions.cabal
--- a/kan-extensions.cabal
+++ b/kan-extensions.cabal
@@ -1,6 +1,6 @@
 name:          kan-extensions
 category:      Data Structures, Monads, Comonads, Functors
-version:       5.2.7
+version:       5.2.8
 license:       BSD3
 cabal-version: >= 1.10
 license-file:  LICENSE
@@ -20,10 +20,11 @@
              , GHC == 9.0.2
              , GHC == 9.2.8
              , GHC == 9.4.8
-             , GHC == 9.6.6
+             , GHC == 9.6.7
              , GHC == 9.8.4
-             , GHC == 9.10.1
-             , GHC == 9.12.1
+             , GHC == 9.10.3
+             , GHC == 9.12.2
+             , GHC == 9.14.1
 
 extra-source-files:
   .gitignore
@@ -50,18 +51,16 @@
 
   build-depends:
     adjunctions         >= 4.2     && < 5,
-    array               >= 0.3.0.2 && < 0.6,
     base                >= 4.11    && < 5,
     comonad             >= 4       && < 6,
-    containers          >= 0.4     && < 0.9,
     contravariant       >= 1       && < 2,
     distributive        >= 0.2.2   && < 1,
+    exceptions          >= 0.10    && < 0.11,
     invariant           >= 0.1     && < 1,
     free                >= 4       && < 6,
     mtl                 >= 2.2.1   && < 2.4,
     profunctors         >= 5       && < 6,
     semigroupoids       >= 5.2.2   && < 7,
-    tagged              >= 0.7.2   && < 1,
     transformers        >= 0.5     && < 0.7
 
   exposed-modules:
diff --git a/src/Control/Monad/Codensity.hs b/src/Control/Monad/Codensity.hs
--- a/src/Control/Monad/Codensity.hs
+++ b/src/Control/Monad/Codensity.hs
@@ -38,6 +38,7 @@
 
 import Control.Applicative
 import Control.Monad (MonadPlus(..))
+import Control.Monad.Catch (MonadThrow(..))
 import qualified Control.Monad.Fail as Fail
 import Control.Monad.Free
 import Control.Monad.IO.Class
@@ -141,6 +142,9 @@
 
 instance (v ~~ v', Alternative v')
    => MonadPlus (Codensity (v :: k -> TYPE rep))
+
+instance MonadThrow m => MonadThrow (Codensity m) where
+  throwM = lift . throwM
 
 -- |
 -- This serves as the *left*-inverse (retraction) of 'lift'.
