mcpField
B
Bitwig MCP Server

Bitwig MCP Server

Local
github.com/jxstanfordMedia & Design76Updated 81w ago

About Bitwig MCP Server

Bitwig MCP Server is an MCP server for Bitwig Studio that lets Claude control the DAW through OSC. It targets music producers who want AI-assisted control of their projects. The project is a work in progress, and its documentation may not match the implementation.

Key features

  1. 01Transport controls for play, stop and tempo
  2. 02Mixer controls for volume, pan and mute
  3. 03Device parameter adjustment
  4. 04Project, track and device information queries
  5. 05Prompts for mixing sessions and track templates

Use cases

  1. 01Starting or stopping Bitwig playback from Claude
  2. 02Adjusting track volume and pan levels
  3. 03Generating default settings for a new mixing session

MCP support

This project is an MCP server that exposes Bitwig control as tools, resources and prompts, such as play, set_track_volume and bitwig://transport, to MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Bitwig MCP Server

Release Build status codecov License

A Model Context Protocol (MCP) server for Bitwig Studio that allows Claude to control your DAW.

Warning! This is a work in progress. Documentation and implementation may be out of sync, and not all functionality may work as expected.

Features

  • AI-Powered Music Production: Control Bitwig Studio with Claude via MCP
  • Transport Controls: Play, stop, and set tempo
  • Mixer Controls: Adjust volume, pan, and mute/unmute tracks
  • Device Controls: Manipulate device parameters
  • Project Information: Access track and device information
  • Templates and Prompts: Pre-configured workflows for common tasks

Installation

Prerequisites
Install from GitHub
# Clone the repository
git clone https://github.com/jxstanford/bitwig-mcp-server.git
cd bitwig-mcp-server

# Install dependencies
uv sync

Usage

1. Configure Bitwig Studio
  1. If necessary, add a virtual MIDI device for OSC
  2. Follow Driven by Moss installation instructions for Bitwig 5.2+
  3. Open or restart Bitwig Studio
  4. Go to Settings > Controllers
  5. Click "Add Controller" and select "Open Sound Control" and "OSC"
  6. Configure the receive port (default: 8000) and send port (default: 9000)
  7. Enable the controller
2. Run the Bitwig MCP Server
# Run the server with default settings
python -m bitwig_mcp_server

# Or run with custom settings
python -m bitwig_mcp_server --host 127.0.0.1 --send-port 8000 --receive-port 9000 --transport stdio --debug
3. Add to Claude Desktop
# Install the server in Claude Desktop
mcp install bitwig_mcp_server/__main__.py

Then open Claude Desktop and select the Bitwig MCP Server from the MCP Servers dropdown.

Available Tools

The Bitwig MCP Server provides the following tools:

Transport Controls
  • play: Toggle play/pause state or set it to a specific state
  • stop: Stop playback
  • set_tempo: Set the tempo in beats per minute
Track Controls
  • set_track_volume: Set track volume (0-128)
  • set_track_pan: Set track pan position (0-128)
  • set_track_mute: Mute, unmute, or toggle mute state for a track
Device Controls
  • set_device_parameter: Set a device parameter value (0-128)
Information
  • get_project_info: Get information about the current Bitwig project
  • get_tracks_info: Get information about all tracks in the project
  • get_track_info: Get information about a specific track
  • get_device_parameters: Get information about the selected device parameters

Available Resources

  • bitwig://project/info: Project information
  • bitwig://transport: Transport state
  • bitwig://tracks: All tracks in the project
  • bitwig://track/{index}: Specific track information
  • bitwig://devices: Active devices
  • bitwig://device/parameters: Parameters for the selected device

Example Prompts

  • setup_mixing_session: Set up a new mixing session with default settings
  • create_track_template: Create a track template with specific devices and settings
  • optimize_track_settings: Get recommendations for optimizing track settings

Configuration

The server can be configured through:

  1. Environment variables or .env file
  2. Command line arguments
  3. Settings in bitwig_mcp_server/settings.py
Command Line Arguments
python -m bitwig_mcp_server --help

Development

Environment Setup
# Install dev dependencies
uv sync

# Install pre-commit hooks
uv run pre-commit install
Running Tests
# Run unit tests (no Bitwig required)
make test

# Run all tests including Bitwig integration tests
# (requires Bitwig Studio running with OSC enabled)
make test-all
Code Quality
# Run code quality checks
make check

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

Thanks to Jürgen Moßgraber for publishing the Driven by Moss package. This package leverages that package to interact with Bitwig.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.