Your servo settings are off
#define NUM_SERVOS 3
That should be 1
#define X_ENDSTOP_SERVO_NR 1
#define Y_ENDSTOP_SERVO_NR 2
#define Z_ENDSTOP_SERVO_NR 1
These should be like this
//#define X_ENDSTOP_SERVO_NR 1
//#define Y_ENDSTOP_SERVO_NR 2
#define Z_ENDSTOP_SERVO_NR 0
Index starts at 0, so if you only have 1 servo, it's 0 for your Z
Also you might wanna enable safe homing, and choose coordinates that put the probe on the bed when it's deployed. That is unless your probe will always deploy on the bed
//#define Z_SAFE_HOMING
#if ENABLED(Z_SAFE_HOMING)
#define Z_SAFE_HOMING_X_POINT 20 // X point for Z homing when homing all axis (G28).
#define Z_SAFE_HOMING_Y_POINT 20 // Y point for Z homing when homing all axis (G28).
#endif
Also in Configuration_adv.h people miss this one, comment this line out
#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing