diff --git a/scripts/config.py b/scripts/config.py
index 9335eda..132b2d4 100755
--- a/scripts/config.py
+++ b/scripts/config.py
@@ -637,7 +637,7 @@
     def filename(self):
         return self.configfile.filename
 
-class MultiConfig(Config):
+class CombinedConfig(Config):
     """Representation of MbedTLS and PSA crypto configuration
 
     See the documentation of the `Config` class for methods to query
@@ -803,7 +803,7 @@
                     excluding X.509 and TLS.""")
 
         args = parser.parse_args()
-        config = MultiConfig(MbedTLSConfigFile(args.file), CryptoConfigFile(args.cryptofile))
+        config = CombinedConfig(MbedTLSConfigFile(args.file), CryptoConfigFile(args.cryptofile))
         if args.command is None:
             parser.print_help()
             return 1
