CorrCal calibrates semi-redundant radio-interferometer arrays by combining redundancy information with sky-signal modelling. It consists of a core C library and a Python wrapper for ease of use and integration. The code uses visibility covariance modelling across quasi-redundant baselines to solve for complex antenna gains even when ideal redundancy is broken, thereby improving calibration fidelity. CorrCal is particularly suited to experiments targeting faint cosmological signals, where traditional redundant calibration may struggle with array non-idealities.