@Override
public InteractionResult mobInteract(Player player, InteractionHand hand) {
Item item = player.getItemInHand(hand).getItem();
Item addTrackerItem = ModItems.TRACKER.get();
if (item == addTrackerItem && !this.hasTracker()) {
// HERE: You are trying to add the tracker on the client when it should be on the server
if (this.level.isClientSide) {
return this.addTracker(player);
}
}
// HERE: This will return PASS which means the server never sees this interaction
return super.mobInteract(player, hand);
}
Compare your code with for example how the creeper interacts with flint and steel.