Can my Time Capsule assign an IP address based on client's MAC address?
The feature you are looking for is called "DHCP". This does exactly what you want, assign an IP address constantly given a specific MAC Address.

Open up Airport Utility.app, click your Time Capsule, then "Manual Setup". When the management dialog loads, click "Internet" up at the top, then "DHCP" in the category/tab bar.



From there, you can click the plus in the bottom-left hand side of "DHCP Reservations". This will open up a dialog that allows you to create a reservation via MAC Address, or "DHCP Client ID".



Fill in a system name (does not necessarily have to be the specific hostname), click MAC Address, then Continue.



Fill in the MAC address, choose an IP address, then click Done, and then Update the Time Capsule!

When the client computer next refreshes it's IP address (most computer's do this once every two hours or so), it should pick up the new reservation, now and forever.

Alternatively you can just shut the interface on the computer and turn it back one. Or go into Advanced and manually renew the lease. etc. etc.