There is no “perfect” toolset. There is the right toolset for what you need to do. Wireshark is a great open-source (free) packet capture/decode tool. However, it may be more technical than what you are looking for. Most operating systems have built-in arp tools as that is really how devices on a LAN communicate. They map the IP address to the MAC address through arp. If the device is not local, then the host has to have the MAC address of a gateway that knows how to get to the remote device. Netstumbler is a good tool that is simpler than Wireshark that will show what wireless devices are near and MAC information.
To query the arp table on a Linux or Windows box, go to a command prompt and type: arp -a. This will give you a list of all local LAN ip addresses that that machine knows about and the MAC addresses associated with the IP.
If you are wanting to tie down the security on your wireless access point, MAC address filtering is not the way to do it. MAC addresses are clearly seen in all packets to/from an access point. You will need a strong WPA key (WEP is easy to break). You should make your access point more difficult to find by turning off SSID broadcasts. Make the SSID something that does not identify your location or host. Turn down the wireless signal as much as you can to prevent leakage outside your building.