--- a
+++ b/ehrapy/tools/__init__.py
@@ -0,0 +1,48 @@
+from ehrapy.tools._sa import (
+    anova_glm,
+    cox_ph,
+    glm,
+    kaplan_meier,
+    kmf,
+    log_logistic_aft,
+    nelson_aalen,
+    ols,
+    test_kmf_logrank,
+    test_nested_f_statistic,
+    weibull,
+    weibull_aft,
+)
+from ehrapy.tools._scanpy_tl_api import *  # noqa: F403
+from ehrapy.tools.causal._dowhy import causal_inference
+from ehrapy.tools.cohort_tracking._cohort_tracker import CohortTracker
+from ehrapy.tools.feature_ranking._feature_importances import rank_features_supervised
+from ehrapy.tools.feature_ranking._rank_features_groups import filter_rank_features_groups, rank_features_groups
+
+try:  # pragma: no cover
+    from ehrapy.tools.nlp._medcat import (
+        add_medcat_annotation_to_obs,
+        annotate_text,
+        get_medcat_annotation_overview,
+    )
+except ImportError:
+    pass
+
+__all__ = [
+    "anova_glm",
+    "cox_ph",
+    "glm",
+    "kmf",
+    "kaplan_meier",
+    "log_logistic_aft",
+    "nelson_aalen",
+    "ols",
+    "test_kmf_logrank",
+    "test_nested_f_statistic",
+    "weibull",
+    "weibull_aft",
+    "causal_inference",
+    "CohortTracker",
+    "rank_features_supervised",
+    "filter_rank_features_groups",
+    "rank_features_groups",
+]