Skip to main content

Add your description here

Project description

LLM Jukebox MCP Server

A Model Context Protocol (MCP) server that enables LLMs to search, download, and play YouTube music.

Features

  • YouTube Music Search: Find music videos by artist, song title, album, or any search query
  • Audio Download: Download and convert YouTube videos to high-quality MP3 files
  • Audio Playback: Model can start and stop songs
  • Async Operations: Non-blocking downloads and searches with progress tracking
  • Logging: Debug-level logging to file and stderr

Installation

  • Get the Files: Clone the repo or download and extract the zip
  • Get FFMPEG: Make sure you have ffmpeg. In windows open a terminal and type winget install ffmpeg, in Ubuntu or Debian do sudo apt install ffmpeg
  • Load a Tool Capable Model: Ensure you have a model that is trained to handle tools properly. Qwen 3 and Gemma 3 are good choices.
  • Create JSON Entry: In LM Studio, click Developer mode, then Program, Tools and Integrations, the the arrow next to the Install button, and Edit mcp.json. Add the entry below under mcpServers:
"llm-jukebox": {
  "command": "uv",
  "args": [
	"run",
	"--with",
	"fastmcp",
	"--with",
	"yt-dlp",
	"--with",
	"tinydb",
	"--with",
	"pygame",
	"fastmcp",
	"run",
	"c:/path/to/llm-jukebox/server.py"
  ],
  "env": {
	"DOWNLOAD_PATH": "c:/path/to/downloads"
  }
}

Make sure to change the paths to fit which paths the repo is in and where you want to the downloads to go.

If you have no other entries, the full JSON should look something like this:

{
  "mcpServers": {
    "llm-jukebox": {
      "command": "uv",
      "args": [
		"run",
		"--with",
		"fastmcp",
		"--with",
		"yt-dlp",
		"--with",
		"tinydb",
		"--with",
		"pygame",
		"fastmcp",
		"run",
        "c:/users/user/llm-jukebox/server.py"
      ],
      "env": {
        "DOWNLOAD_PATH": "c:/users/user/downloads"
      }
    }
  }
}

Click on the Save button or hit Ctrl+S. If it works you should be able to set the slider to turn on llm-jukebox.

Now you can ask the LLM to grab a song for you!

Legal Considerations

This tool is intended for personal use with content you have the right to download. Users are responsible for complying with:

  • YouTube's Terms of Service
  • Local copyright laws
  • Content creators' rights

Always respect intellectual property and consider supporting artists through official channels.

Credit

Playback tool adapted from https://github.com/Here-and-Tomorrow-LLC/audio-player-mcp (MIT Licensed)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_jabberjabberjabber_llm_jukebox-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_jabberjabberjabber_llm_jukebox-0.1.0.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_jabberjabberjabber_llm_jukebox-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7a2648d3d0e8525b19288c80cf975b9978703e3ed8b596582a651ef42d788259
MD5 964ea51c0926b0792c34c01d1009a729
BLAKE2b-256 179e2822e23ff5eaa2f51ab9541fd7ba0a85f1db402b4253c4bf807423bb9ae9

See more details on using hashes here.

File details

Details for the file iflow_mcp_jabberjabberjabber_llm_jukebox-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_jabberjabberjabber_llm_jukebox-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_jabberjabberjabber_llm_jukebox-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 10584df105018e5c0584722b16aa6a9820ce135e0edf31f7c5899c5825ff5674
MD5 07e7ef3443e9ee54a81dbd9c8a91b5bf
BLAKE2b-256 b39b68ceab8f8d171a220942f2c875b405b6241bf42935c2f06eeb303d3a607e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page