Track Summon icon

Track Summon

A companion app for self-hosted music libraries. Search for a track, tap request, and your server finds it, tags it with artwork, and files it into Plex.


Run the server

Track Summon’s server runs in Docker on your NAS or home server, next to your Plex library and a running slskd server.

$ git clone https://github.com/jamesacklin/track-summon
$ cd track-summon
$ cp .env.example .env    # add your Plex + slskd details
$ docker compose up -d

Get the app

Install the iOS app from TestFlight, then enter your server’s address and access key. That is the whole setup.

Join the TestFlight beta →

Requires iOS 17 or later. Away from home, reach your server over Tailscale, WireGuard, or an HTTPS reverse proxy.


What do I need to run this?

A machine that runs Docker — a NAS, home server, or mini PC — a Plex server for your library, and an slskd (Soulseek) instance for Track Summon to search. The app is a remote; it does nothing on its own until it is pointed at your server.

How do I set up the Docker container?

Run the published image and mount three folders — one for its own data (the request queue and the access key it generates), one for your Plex music library, and one for the folder slskd saves finished downloads to. Point it at slskd and Plex with environment variables, or leave those out and set them later in the app:

$ docker run -d --name track-summon -p 8585:8585 \
    -v track-summon-data:/data \
    -v /your/plex/music:/music \
    -v /your/slskd/downloads:/downloads \
    -e SLSKD_URL=http://slskd:5030 \
    -e SLSKD_USERNAME=you -e SLSKD_PASSWORD=secret \
    -e PLEX_URL=http://plex:32400 -e PLEX_TOKEN=xxxx \
    jamesacklin/track-summon:latest

The mount that matters most is /music: it has to be the exact folder your Plex library scans, or tracks download and file successfully but never appear in Plex. If Plex sees that folder at a different path, add PLEX_LIBRARY_DIR set to the path Plex uses. On first boot the server prints an access key to its logs — enter that in the app. The README lists every mount and variable.

Is it free?

The server is open-source and free to run. The app is distributed through TestFlight, which is free to join. You supply your own hardware and library.

How does it find music?

Track Summon searches your own slskd (Soulseek) instance for each request, prefers lossless files, and falls back to YouTube (via yt-dlp) only when nothing turns up. You run and configure slskd yourself — Track Summon ships with no sources. You are responsible for what you add and for respecting copyright.

Does it work with Plex?

Yes. It files each track into your Plex music library, scans just that folder, and can add it to a playlist you pick, creating the playlist if needed.

Can I use it away from home?

Yes, as long as your phone can reach your server — over a VPN like Tailscale or WireGuard, or a reverse proxy with HTTPS. The app talks to nothing but your server and public metadata catalogs.

What about my privacy?

No accounts, no analytics, no tracking. Your server address and key are stored on your device and sent only to the server you chose.