MBXHub for MusicBee

Documentation

Quick Navigation

Getting Started

MBXHub is a MusicBee plugin that exposes the MusicBee API over HTTP. Once installed, you can control MusicBee from any device on your local network.

  1. Download from the download page
  2. Copy mb_MBXHub.dll to your MusicBee Plugins folder
  3. Restart MusicBee
  4. Access the API at http://localhost:8080

Installation

Requirements

Steps

  1. Download the latest release ZIP file
  2. Extract mb_MBXHub.dll
  3. Copy to: %APPDATA%\MusicBee\Plugins\
  4. Restart MusicBee
  5. The plugin will start automatically

Verifying Installation

Open a browser and navigate to:

http://localhost:8080/system/ping

You should see a JSON response with "pong": true

Configuration

MBXHub can be configured via the REST API or by editing the settings file.

Settings

Setting Default Description
RestEnabled true Enable/disable REST API
RestPort 8080 HTTP port for REST API
RpcEnabled true Enable/disable RPC endpoint
DebugMode false Enable verbose logging

Changing Settings via API

PUT http://localhost:8080/system/settings
Content-Type: application/json

{
  "restPort": 8080,
  "debugMode": true
}

Usage

Basic Usage

Control playback with simple HTTP requests:

# Play/Pause
curl -X POST http://localhost:8080/player/playpause

# Get current track
curl http://localhost:8080/nowplaying

# Set volume to 50%
curl -X PUT http://localhost:8080/player/volume \
  -H "Content-Type: application/json" \
  -d '{"volume": 0.5}'

Advanced Usage

For complete API access, use the RPC endpoint:

# Call any MusicBee API method
curl -X POST http://localhost:8080/rpc/Library_QueryFilesEx \
  -H "Content-Type: application/json" \
  -d '{"query": "[Artist]=Beatles"}'

See the API documentation for all available endpoints.

Troubleshooting

Common Issues

Issue: Cannot connect to localhost:8080

Solution: Check that MusicBee is running and the plugin is loaded. Look in MusicBee's plugin settings to verify MBXHub is enabled. Check Windows Firewall isn't blocking the port.

Issue: CORS errors in browser

Solution: MBXHub restricts CORS to localhost and local network IPs (192.168.x.x, 10.x.x.x, 172.16-31.x.x). Ensure your request originates from an allowed IP range.

Issue: Port already in use

Solution: Change the REST port in settings to an available port (e.g., 8081).

Getting Help

If you need additional help: