diff --git a/Makefile b/Makefile
index d15c830d8e4cf6e4bc0b519b9fa5b8cb5f224043..eb767dd4053a2b232d425126358cfb0fd23ffb1c 100644
--- a/Makefile
+++ b/Makefile
@@ -32,7 +32,7 @@ doc:
 install:
 	@echo "Not implemented yet, use pip for installation."
 
-check: style lint
+check: style lint mypy
 .PHONY: check
 
 style:
@@ -43,6 +43,10 @@ lint:
 	pylint --unsafe-load-any-extension=y -d all -e E,F src/linkahead/common
 .PHONY: lint
 
+mypy:
+	mypy src/linkahead
+.PHONY: mypy
+
 unittest:
 	tox -r
 .PHONY: unittest
diff --git a/tox.ini b/tox.ini
index 8212226eef2759c1864a86b8a3ad8f926480db4a..49c0c74d4b14303ac924dbdb10c0323a4b5e780f 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,13 +1,15 @@
 [tox]
-envlist=py37, py38, py39, py310, py311
+envlist=py37, py38, py39, py310, py311, py312
 skip_missing_interpreters = true
 
 [testenv]
 deps = .
-    nose
+    pynose
     pytest
     pytest-cov
+    mypy
     jsonschema>=4.4.0
+    setuptools
 commands=py.test --cov=caosdb -vv {posargs}
 
 [flake8]