Setup

Quick Start

  • Download the installer from Downloads.
  • Install RWAV Bridge on a machine on the same LAN as your Roon Core.
  • Open Roon → Settings → Extensions → Enable “RWAV Bridge”.

Overview

RWAV Bridge is a Roon Extension that exposes safe HTTP endpoints your MCP server uses to browse, play, and manage the queue. Install the Bridge on any machine on the same LAN as your Roon Core (often the same host). Then enable it in Roon’s Extensions.

Prerequisites

  • A running Roon Core and the Roon app signed in on the same network.
  • Local admin rights to install an app/service.
  • Network allows multicast discovery and local HTTP:
    • UDP 5353 (mDNS/Bonjour)
    • UDP 1900 (SSDP)
    • TCP 3002 (Bridge HTTP; default)

Download & Install

macOS

  • Download the RWAV Bridge installer from https://www.rwav-bridge.co.uk.
  • Open the installer; if macOS blocks it, go to System Settings → Privacy & Security → “Open Anyway”.
  • On first run, grant “Network” access if prompted.

Windows

Linux

  • Download the package provided for your distro (AppImage/.deb/.rpm if available).
  • For AppImage: chmod +x rwav-bridge.AppImage && ./rwav-bridge.AppImage.
  • For system service: see “Headless (systemd)” below.

Enable in Roon

  • Open the Roon app → Settings → Extensions.
  • Toggle “Enable Extensions” on.
  • Find “RWAV Bridge” in the list, click “Authorize/Enable”.
  • The Bridge should show a status (Running) and the host it’s on.

Verify the Bridge

From the Bridge host:

curl http://localhost:3002/version       # returns a version string
curl http://localhost:3002/capabilities  # returns a JSON capability snapshot

From your MCP client:

Run tools_bridge_version_get or tools_bridge_connection_status and confirm connected:true with a version.

Configure MCP Discovery

Recommended (auto)

Set RWAV_DISCOVERY=auto and RWAV_BASE=auto in your MCP environment. The MCP server will discover via Bonjour/SSDP and verify with /capabilities.

Static fallback

  • Set RWAV_BASE=http://<bridge-host>:3002 if multicast is blocked.
  • Optionally set RWAV_DEFAULT_ZONE=<zoneId> if you want a default playback zone.

Firewall & Network Tips

  • Allow inbound TCP 3002 to the Bridge host (LAN scope).
  • Allow UDP 5353 (mDNS) and UDP 1900 (SSDP) for discovery on the LAN.
  • Ensure the Bridge and Roon Core are on the same subnet/VLAN; avoid guest/Wi‑Fi isolation.

Headless (systemd) on Linux

Create a unit file at /etc/systemd/system/rwav-bridge.service pointing to the Bridge binary:

[Service]
ExecStart=/usr/local/bin/rwav-bridge
Restart=on-failure

[Install]
WantedBy=multi-user.target

Then:

sudo systemctl daemon-reload && sudo systemctl enable --now rwav-bridge
systemctl status rwav-bridge
curl http://localhost:3002/version

Upgrades

  • Stop the app/service.
  • Install the new version from https://www.rwav-bridge.co.uk.
  • Start the app/service, then re-verify /version and /capabilities.

Troubleshooting

Bridge not listed in Roon Extensions

  • Toggle “Enable Extensions” off/on; restart Roon.
  • Reinstall/Restart the Bridge.
  • Verify same LAN/subnet; disable guest/Wi‑Fi isolation.

MCP can’t connect (discovery)

  • Try RWAV_BASE=http://<bridge-host>:3002.
  • Check firewall rules for TCP 3002; allow UDP 5353/1900.

404/timeout from endpoints

  • Confirm the Bridge process is running and /capabilities works locally.
  • If using a VPN, ensure local LAN access is enabled.

Quick Sanity Checklist

  • Roon Core running and signed in.
  • Roon Settings → Extensions → RWAV Bridge is Authorized/Enabled.
  • curl http://<bridge-host>:3002/capabilities returns JSON.
  • MCP discovery set to auto or static RWAV_BASE points to the Bridge host.
  • Basic tool call works (e.g., tools_bridge_version_get).