Find BGM

MCP server that analyzes YouTube short scripts and returns YouTube Music-based soundtrack recommendations with duration filtering and confidence scores.
  • python

1

GitHub Stars

python

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "opiuman-mcp-bgm-recommender": {
      "command": "python",
      "args": [
        "server.py"
      ],
      "env": {
        "BGM_LOG_LEVEL": "DEBUG",
        "BGM_OAUTH_FILE": "my_oauth.json",
        "BGM_MAX_DURATION": "240",
        "BGM_SEARCH_LIMIT": "15"
      }
    }
  }
}

You can run Find BGM, a dedicated MCP Server that analyzes YouTube short scripts to suggest fitting background music from YouTube Music. It helps content creators quickly pick tracks that match mood, pacing, and video length, with confidence-scored recommendations.

How to use

You interact with the server through an MCP client by providing your short script, video duration, and optional preferences. The server analyzes mood, theme, pacing, and sentiment from your script, then returns ranked music recommendations with durations that fit your video length. Use the client to request recommendations for different genres and moods to find the best soundtrack for each piece of content.

To use the main tool, supply the following inputs: a script of your YouTube short, the duration in seconds (commonly 15–60 seconds), and your optional preferences for genre and mood. The server computes an analysis and then returns a list of tracks with titles, artists, YouTube Music IDs, confidence scores, and duration compatibility.

How to install

Prerequisites: ensure you have Python 3.8+ and a working network environment.

Install dependencies from the requirements file.

pip install -r requirements.txt

Optionally, set up YouTube Music API access. You can run the API setup to create an oauth.json file, which enables live recommendations from YouTube Music. If you do not configure API access, the server will use mock recommendations for testing.

Run the MCP server locally.

python server.py

Additional information

Configuration and environment variables control runtime behavior. Common settings include log level, OAuth file path, and limits for search duration and results.

Environment variables you may use include: BGM_LOG_LEVEL, BGM_OAUTH_FILE, BGM_MAX_DURATION, BGM_SEARCH_LIMIT. You can set these in your shell before starting the server.

You can integrate with a desktop client by pointing to the local server command invocation in your MCP integration settings, so the client can launch the server process and pass requests directly.

If you want to test features locally, you can run the test suite to verify component interactions. This helps ensure that script analysis, music service communication, and recommendation scoring are functioning as expected.

Remember to provide your YouTube Music API credentials if you want real recommendations. Without API access, you’ll receive mock responses suitable for testing and development.

Available tools

ScriptAnalyzer

Analyzes the input script to detect mood, theme, and pacing using natural language processing.

YouTubeMusicService

Interfaces with YouTube Music API to fetch music metadata and track details.

MusicRecommendationService

Generates scored recommendations based on the analyzed script and user preferences.

BGMTools

Orchestrates script analysis and music recommendation workflows within the MCP framework.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
Find BGM MCP Server - opiuman/mcp-bgm-recommender | VeilStrat