This has been quite the ordeal, but I finally got it working, so I thought I'd share what I found out. There is some conflicting information online, so it took me a while to figure it all out. I found this discussion / tutorial written by people far more capable than me. My tutorial is based on that. I just wanted to write a more comprehensive tutorial and give some additional info (also this tutorial is technically for andriod devices, so I think it should be stated that it works for PC as well.)
1. What you need:
1.1 Retroarch's Mame core (without year tags)
1.2 This Archive: https://mega.nz/#!0OQ2zASD!UKoefHzpnsHBj79MdYRMWzdZYSv6kpPvxud0DmSSX3A (I hope I'm allowed to post this here)
1.3 CDi roms (I only tested the .chd format, but I'm pretty sure that cue/bin will also work)
--> Keep in mind that there are many CDi roms that flat out don't work (more on that later)
1.4 Philips CDi bios files (mainly "cdimono1.zip", but I also have "cdimono2.zip" and "cdibios.zip". I don't know if they are needed for any games though)
--> I cannot provide links to these bios files. You'll have to get them on your own.
1.5 LaunchBox, of course.
2. How to get your CDi games running:
2.1 Navigate to your main roms folder and create a folder called "Philips CD-i" (You can name the folder whatever you like, I just used the name that LaunchBox uses).
2.2 This is important: Inside the "Philips CD-i" folder, create another folder called "cdimono1". It's very important that you use this exact name. It doesn't work otherwise.
2.3 Copy all of your Philips CDi roms into the "cdimono1" folder.
2.4 Also copy your Philips CDi bios files into the "cdimono1" folder.
2.5 Download the archive from 1.2. Inside this archive you will find two more archives. Open the one called "CDI_blank.zip". Inside this archive you will find many different empty, "dummy" .zip files. These files have shortened title names for the CDi games (much like Mame roms). You'll need them so the Mame core is able to load your roms (more on that later). Copy all of these empty .zip files into the "cdimono1" folder.
--> To sum up, in your "cdimono1" folder there should now be:
your Philips CDi roms
your Philips CDi bios files
your empty .zip files
2.6 Open the archive from 1.2 again, but this time open the second archive within it called "RetroArch.zip". You don't need everything in here, just one specific subfolder: Go to "Retroatch --> system". In here, you will find a folder called "mame". Take that folder and put it in your own Retroarch directory in "YOUR_PATH\RetroArch\system\".
2.7 Download Retroarch's Mame core (without year tags) and leave all the settings at default (you can change the resolution if you want to)
--> This is where misinformation held me back. There are many tutorials which tell you to change various settings, but believe me, you must keep the default settings.
2.8 Open LaunchBox and import the empty .zip files from 2.5. Important: You cannot import your CDi roms directly, it doesn't work. Unfortunately, this means that you will later have to rename all your imported roms with their actual names manually (There maybe a way to automate this, but I don't know, I just trail-and-errored my way through this). Also important: when importing, make sure that you choose retroarch as your emulator for the Philips CDi platform.
--> you might want to start with just one file at first, just to make sure everything works. You can uset Hotel Mario ("hotmario.zip") for this, since I can confirm that this game actually works. If you have done everything correctly, you should have a game called "hotmario" in your LaunchBox. You can rename it to "Hotel Mario" and get all the metadata for it.
2.9 In LaunchBox, go to "Tools --> Manage emulators". Select retroarch. Go to "Associated Platforms", scroll down and add a new Associated Platform called "Philips CD-i". Choose "mame_libreto" as your core. Important: Don't add any "EXTRA Command-Line Parameters", despite what you might have read elsewhere online.
--> You can now run Hotel Mario in LaunchBox and if you have done everything correctly, you should see a light blue screen. Wait a few seconds. You will then see a grey Philips CDi bios screen. Use your mouse and click "play". The game should now start. If it starts, you can import your other games. Keep in mind however, that not all of them will work. To find out which games are not supported, navigate to "YOUR_PATH\RetroArch\system\mame\hash" open the "cdi.xml" (here you can also find out which actual games the empty .zip files correspond to.) If it says something like "<software name="7thguest" supported="no">" that means that this specific game will not work, so you don't need to import it.
3. Further configuration (optional, but very much necessary in my opinion):
3.1 Since you most likely want to use a controller and not your mouse + keyboard, you'll have to map the controlls within the Mame GUI to your controller (I use an Xbox One controller). Once your game is up and running, hit TAB on your keyboard to bring up Mame's GUI. Navigate to "Input (this Machine)" and map the inputs to your controller like this:
Mouse Button 1: Joy 1 B or A (your choice)
Mouse Button 2: Joy 1 Y or X (your choice)
Mouse X Analog: Joy 1 LX (press your left analog stick to the right)
Mouse X Analog Dec: LEFT (press left on your D-PAD)
Mouse X Analog Inc: RIGHT (press right on your D-PAD)
Mouse Y Analog: Joy 1 LY (press your left analog stick up)
Mouse Y Analog Dec: UP (press up on your D-PAD)
Mouse Y Analog Inc: DOWN (press down on your D-PAD)
Now go back and navigate to "Analog Controls". Reduce the two sensitivity settings drastically. "10" is a good point to start, but I found that even lower values ( 5 or even 1) are better for some games.
Mouse X Sensitivity: 10 (your choice)
Mouse Y Sensitivity: 10 (your choice)
3.2 Now your controlls should be mapped to your controller. However, when I did this, characters in games would start moving by themselves. This is because for some reason, the deadzone seems to be too small. If you experience this, do the follwoing: Once your game is running, press F1 to bring up retroarch's GUI. Navigate to "Settings" --> "Input" and scroll down to "Analog Deadzone". change the value from 0.0 to 0.5 (this worked for me). Important: you don't want to change this setting for all of your games or even for all platforms using the same mame core. You want this change to be in effect just when you play CDi games. So head back to "Quick Menu" --> "Overrides" and hit "Save Content Directory Overrides". This will save the changes you made just for CDi games. If the issue isn't solved for you, try increasing the deadzone value.
Congratulations, you are now done! You are now able to experience a bad Mario game and three bad Zelda games (Why did I spend so much time on this?) Jokes aside, I hope this helps someone.