Autojoin mdns provider not working?

I have been trying to get the mdns provider to work for autojoining. I have tried everything I can think of to try to get this to work and I have to conclude that either I am missing something basic (most likely) or the mdns provider is broken.

Currently I have this config with avahi installed and running on the host machine. But it neither finds the other hosts on the network nor outputs any errors. Even with log_level set to DEBUG it doesn’t output anything useful.

server {
            enabled          = true
            bootstrap_expect = 3
            server_join {
              retry_join = [ "provider=mdns service=_nomad-server._tcp" ]
            }
          }

Can anyone point me to documentation for the mdns provider that isn’t just the source code? I’m ready to go crazy and write some crazy script that uses nmap to port scan hosts on the network or something.