MediaSage: Library-Aware AI Playlist Generator for Plex Music

Hey everyone! I wanted to share a project I’ve been working on called MediaSage — a self-hosted app that generates music playlists using AI, but with a twist: it only suggests tracks you actually own.

The Problem

When Tidal integration ended in 2024, Plexamp’s Sonic Sage feature lost its foundation. And generic AI tools like ChatGPT have the same issue — they recommend from an infinite catalog with no awareness of what’s in your library. Ask for 25 tracks and you might get 4 that actually exist, if you’re lucky.

Why Now?

Since Sonic Sage was released, AI models have gotten dramatically better and cheaper. Context windows have exploded — Gemini can now handle over 1 million tokens, enough to send 18,000+ tracks in a single request. This makes a library-aware approach actually feasible: instead of filtering after the AI recommends, we can filter first and let the AI only see tracks you own. Every suggestion is guaranteed playable.

Cost Control & Transparency

You choose exactly which parts of your library the AI sees — filter by genre, decade, or rating to narrow the pool before anything is sent. Real-time estimates show the cost before you generate:

Provider Typical Cost
Gemini $0.03 – $0.25
Claude $0.15 – $0.25
OpenAI $0.05 – $0.10
Ollama Free (local)

After generation, you see actual token usage. No surprises.

Two Ways to Create Playlists

  • Prompt-based: Describe what you want (“melancholy 90s alternative for a rainy day”)
  • Seed-based: Pick a track you love and explore its musical dimensions

Features

  • Bring your own API key (Gemini, Claude, or GPT) — or run free with local models via Ollama
  • Review and edit tracks before saving to Plex
  • Dark theme inspired by Plexamp
  • Self-hosted via Docker — no account required

Links

It’s MIT licensed and I’d love feedback from the community. Happy to answer any questions!

Please find a different name for your project.
See this Guidelines for usage of Plex name, logo, trademarks, and more
(It’s been pinned in this very forum.)

I have renamed the project.

@ecwilsonaz Man, what an awesome project you’re sharing. Thanks a lot. I can here to see if Plexamp was doing something about the obsolete LLMs that are default in settings. I presume they’re cooking a new version 5 of Plexamp.
I’m going to use it and if I have suggestions will report back. One thing that came to mind when connecting my Google AI Studio API was if it would be possible to have control over what model is used. If it accidentally defaults to Gemini 3.1 Pro it might become an expensive experience. But maybe I’m just uninformed about how this works?