RealVNC Server 7.17.0 has hidden Wayland support.
You need to bind-mount or replace vncagent-x11 with vncagent-wlr and run it in user mode (e.g., /usr/bin/bwrap --bind / / --bind /usr/bin/vncagent-wlr /usr/bin/vncagent-x11 /usr/bin/vncserver-x11). It will use Xwayland (via DISPLAY) for the UI, but vncagent will use the WAYLAND_DISPLAY.
It uses the following protocols: zwlr_screencopy_frame_v1 zwlr_screencopy_manager_v1 zwlr_virtual_pointer_manager_v1l zwlr_virtual_pointer_v1 zwlr_data_control_offer_v1 zwlr_data_control_source_v1 zwlr_data_control_device_v1 zwlr_data_control_manager_v1 zwp_virtual_keyboard_manager_v1 zwp_virtual_keyboard_v1.