Bitwig MCP Server について
Bitwig MCP Server は、Bitwig Studio 向けの MCP サーバーで、OSC 経由で Claude から DAW を操作できます。AI を活用して音楽制作を行いたいユーザーを対象としています。開発途中のプロジェクトであり、ドキュメントと実装が一致しない場合があります。
主な機能
- 01再生、停止、テンポの操作
- 02ボリューム、パン、ミュートのミキサー操作
- 03デバイスパラメーターの調整
- 04プロジェクト、トラック、デバイスの情報照会
- 05ミキシングセッションとトラックテンプレート用のプロンプト
活用シーン
- 01Claude から Bitwig の再生や停止を行う
- 02トラックのボリュームとパンを調整する
- 03新しいミキシングセッションの初期設定を生成する
MCP 対応
本プロジェクトは MCP サーバーであり、play、set_track_volume、bitwig://transport などの Bitwig 操作をツール、リソース、プロンプトとして MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Bitwig MCP Server
Claude から DAW を操作できる、Bitwig Studio 用の Model Context Protocol(MCP)サーバーです。
警告!これは開発中のプロジェクトです。ドキュメントと実装が一致していない場合があり、すべての機能が期待どおりに動作するとは限りません。
機能
- AI を活用した音楽制作:MCP を介して Claude で Bitwig Studio を操作します
- トランスポートコントロール:再生、停止、テンポの設定
- ミキサーコントロール:音量、パン、トラックのミュート/ミュート解除を調整
- デバイスコントロール:デバイスのパラメーターを操作
- プロジェクト情報:トラックとデバイスの情報にアクセス
- テンプレートとプロンプト:一般的なタスク向けに事前設定されたワークフロー
インストール
前提条件
- Python 3.10+
- Bitwig Studio 5.2+
- Driven by Moss 5.2+
- MCP に対応した Claude Desktop アプリ
GitHub からインストール
# Clone the repository
git clone https://github.com/jxstanford/bitwig-mcp-server.git
cd bitwig-mcp-server
# Install dependencies
uv sync
使い方
1. Bitwig Studio を設定する
- 必要に応じて、OSC 用の仮想 MIDI デバイスを追加します
- Bitwig 5.2+ 向けの Driven by Moss のインストール手順に従います
- Bitwig Studio を開くか、再起動します
- Settings > Controllers に移動します
- 「Add Controller」をクリックし、「Open Sound Control」と「OSC」を選択します
- 受信ポート(デフォルト:8000)と送信ポート(デフォルト:9000)を設定します
- コントローラーを有効にします
2. 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. Claude Desktop に追加する
# Install the server in Claude Desktop
mcp install bitwig_mcp_server/__main__.py
次に Claude Desktop を開き、MCP Servers のドロップダウンから Bitwig MCP Server を選択します。
利用可能なツール
Bitwig MCP Server は、次のツールを提供します。
トランスポートコントロール
- play:再生/一時停止の状態を切り替えるか、特定の状態に設定します
- stop:再生を停止します
- set_tempo:テンポを 1 分あたりの拍数で設定します
トラックコントロール
- set_track_volume:トラックの音量を設定します(0-128)
- set_track_pan:トラックのパン位置を設定します(0-128)
- set_track_mute:トラックをミュート、ミュート解除、またはミュート状態の切り替えを行います
デバイスコントロール
- set_device_parameter:デバイスのパラメーター値を設定します(0-128)
情報
- get_project_info:現在の Bitwig プロジェクトの情報を取得します
- get_tracks_info:プロジェクト内のすべてのトラックの情報を取得します
- get_track_info:特定のトラックの情報を取得します
- get_device_parameters:選択中のデバイスのパラメーター情報を取得します
利用可能なリソース
- bitwig://project/info:プロジェクト情報
- bitwig://transport:トランスポートの状態
- bitwig://tracks:プロジェクト内のすべてのトラック
- bitwig://track/{index}:特定のトラック情報
- bitwig://devices:アクティブなデバイス
- bitwig://device/parameters:選択中のデバイスのパラメーター
プロンプトの例
- setup_mixing_session:デフォルト設定で新しいミキシングセッションをセットアップします
- create_track_template:指定したデバイスと設定でトラックテンプレートを作成します
- optimize_track_settings:トラック設定を最適化するための推奨事項を取得します
設定
サーバーは次の方法で設定できます。
- 環境変数または
.envファイル - コマンドライン引数
bitwig_mcp_server/settings.pyの設定
コマンドライン引数
python -m bitwig_mcp_server --help
開発
環境のセットアップ
# Install dev dependencies
uv sync
# Install pre-commit hooks
uv run pre-commit install
テストの実行
# 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
コード品質
# Run code quality checks
make check
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
このプロジェクトは MIT ライセンスのもとで公開されています。詳細については、LICENSE ファイルをご覧ください。
謝辞
Driven by Moss パッケージを公開してくださった Jürgen Moßgraber 氏に感謝します。このパッケージは、Bitwig と連携するために同パッケージを利用しています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。