Hi nathanashton,
I added a timer to the service with a 1 minute delay and it seems to work fine now.
A better and more reliable way is to use something like that:
[Unit]
Description=start my-program.py on boot
Requires=
After=mpd.service
....
in your service file.
See also
here.
Frank