Repolode
music-assistant

music-assistant/server

Self-hosted music library manager that connects streaming services and many connected speakers, typically run alongside Home Assistant.

Stars
3,224
Forks
695
Open issues
62
Last commit
11 hours ago

What is it?

Music Assistant is a free, open-source media library manager. It connects your streaming services and a wide range of connected speakers so you can manage and play music from one place. The server is the core component and is meant to run continuously on a device such as a Raspberry Pi, a NAS, or a small Intel NUC.

The project is designed to work alongside Home Assistant and is intended for automation. The recommended way to run it is as a Home Assistant app. It is also available as a Docker image (ghcr.io/music-assistant/server). It depends on system components such as ffmpeg 7.0 or newer, so it is not distributed through PyPI.

For development, the server runs from source with Python 3.14 or newer and ffmpeg 7.0 or newer. It serves its interface on port 8095 by default.

Key features

  • 01Connects multiple streaming services into one media library
  • 02Controls a wide range of connected speakers
  • 03Designed to run as a Home Assistant app for automation
  • 04Available as a Docker image for self-hosting
  • 05Built on Python with ffmpeg for audio handling

Use cases

  • Playing music from streaming services on speakers throughout a home
  • Adding music playback to a Home Assistant automation setup
  • Running a home music server on a Raspberry Pi or NAS

Quick start

  1. 1

    Install the Music Assistant app in Home Assistant (recommended)

  2. 2

    Or run the official Docker container image

    docker pull ghcr.io/music-assistant/server
  3. 3

    Development: create the virtualenv and install dependencies with the setup script

    scripts/setup.sh
  4. 4

    Development: run the server locally on http://localhost:8095

    python -m music_assistant --log-level debug

Things to know

  • Not published to PyPI, so pip install is not supported.
  • Requires a recent ffmpeg (7.0+) and system dependencies unless run via the app or container.
  • Designed to run on an always-on device and works best alongside Home Assistant.
  • Third-party distribution packages are not supported.

In collections

Topics

FAQ

What is server?
Self-hosted music library manager that connects streaming services and many connected speakers, typically run alongside Home Assistant. Music Assistant is a free, open-source media library manager. It connects your streaming services and a wide range of connected speakers so you can manage and play music from one place. The server is the core component and is meant to run continuously on a device such as a Raspberry Pi, a NAS, or a small Intel NUC.
Is server free to use? What license does it have?
server is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is server still maintained?
Actively maintained. The last commit to server was on Oct 24, 2026.
What can I use server for?
Playing music from streaming services on speakers throughout a home Adding music playback to a Home Assistant automation setup Running a home music server on a Raspberry Pi or NAS
How do I install server?
Install the Music Assistant app in Home Assistant (recommended) Or run the official Docker container image: docker pull ghcr.io/music-assistant/server Development: create the virtualenv and install dependencies with the setup script: scripts/setup.sh Development: run the server locally on http://localhost:8095: python -m music_assistant --log-level debug
Where can I get server?
The source code and installation instructions are on GitHub: https://github.com/music-assistant/server

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects