- Home
- MCP servers
- Stem
Stem
- python
3
GitHub Stars
python
Language
6 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": {
"tolutronics-audio-processing-mcp": {
"command": "stem-mcp",
"args": [],
"env": {
"PYTHONPATH": "/path/to/stem-mcp/src"
}
}
}
}Stem MCP Server is a dedicated MCP server that powers AI-driven audio processing and stem manipulation workflows. It enables you to generate stems, split audio, create loops, extract vocals, analyze musical features, and more, all orchestrated through the MCP protocol for seamless integration with compatible clients and production tools like Logic Pro.
How to use
You run the Stem MCP Server locally and connect your MCP client to it to perform production tasks. Start the server using the standard CLI entry point, then configure your client to point at this local server. From there you can generate stems, split stems into segments, create loops, analyze audio features, extract vocals, and isolate instruments. Use the client to send tool requests and receive results in your preferred workflow.
How to install
Prerequisites you need before installing Stem MCP Server: Python 3.10 or higher, FFmpeg for audio processing, and a CUDA-capable GPU if you want accelerated processing.
# Prerequisites (example commands; adapt to your OS)
# Python should be 3.10+
python --version
# FFmpeg must be installed (example checks)
ffmpeg -version
# Optional: CUDA toolkit for GPU acceleration
nvidia-smi
Install the MCP server itself in development mode and install core dependencies as described.
# Clone the project
git clone https://example.com/tolutronics/audio-processing-mcp.git
cd audio-processing-mcp
# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install in development mode with all dependencies
pip install -e .
# Install additional development tools (optional)
pip install -r requirements.txt
Configure the MCP client to use Stem Processing
Add a local MCP server configuration to your MCP client so it can communicate with Stem MCP Server. The configuration uses a standard stdio setup that runs the stem-mcp command locally and sets the PYTHONPATH so the client can locate the server sources.
{
"mcpServers": {
"stem_processing": {
"command": "stem-mcp",
"args": [],
"env": {
"PYTHONPATH": "/path/to/stem-mcp/src"
}
}
}
}
Run the server and use tools
Start the server by invoking the local entry point defined in your environment. Once running, your MCP client can call tools such as generate_stems, split_stems, create_loop, analyze_audio, extract_vocal, and more.
Example workflows you can perform with the client after the server is running include generating stems from a song, splitting stems into segments, creating loops, analyzing audio features, extracting vocals, and isolating specific instruments. Each tool returns the expected outputs that you can import into your DAW or further process.
Examples of typical tool workflows
Generate stems from an audio file and analyze the results.
{
"tool": "generate_stems",
"arguments": {
"audio_path": "/path/to/song.wav",
"output_dir": "./stems",
"model_type": "htdemucs",
"num_stems": 4
}
}
Notes on usage
The server supports multiple models and configurations. Refer to your MCP client’s documentation for any client-side specifics, such as how to enqueue tasks, monitor progress, and handle outputs. Ensure your environment variables are set correctly, especially PYTHONPATH, so that the server modules resolve properly.
Available tools
generate_stems
Generates vocal and instrumental stems using AI-powered Demucs models and outputs separate audio files for each stem.
split_stems
Segments a stem audio file into shorter parts with configurable length and overlap for smooth transitions.
create_loop
Creates seamless loops from a given audio track with automatic tempo detection and crossfading.
analyze_audio
Performs musical and spectral analysis to extract tempo, key, beat tracking, and spectral characteristics.
extract_vocal
Isolates or extracts vocal tracks using multiple algorithms, enabling clean vocal stems.
isolate_instrument
Isolates a specified instrument from a mix using AI or signal-processing techniques.
separate_vocal_ranges
Separates vocal content into soprano, alto, tenor, and bass ranges for detailed editing.
extract_vocal_harmonies
Separates lead vocals from harmonies for remixing and arrangement analysis.