ardour-mcp について
ardour-mcpは、OSCを介してArdourデジタルオーディオワークステーションを操作する、開発中のMCPサーバーです。外部アプリケーションやスクリプトから再生、トラック、メニュー操作を自動化したいユーザー向けです。
主な機能
- 01再生・停止・位置・速度の制御
- 02トラックのミュート・ソロ・録音状態の管理
- 03トラックのゲインとトリムの調整
- 04Ardourの一般メニュー操作
- 05再生状態などの情報取得
活用シーン
- 01外部スクリプトからArdourのトランスポートを制御
- 02トラック状態やレベルの自動調整
- 03Ardourの現在の再生状態を確認
- 04stdio_client_testerで接続をテスト
MCP 対応
サーバーはMCPリクエストをOSCメッセージに変換し、起動中のArdourに送信します。MCPクライアント向けに、トランスポート、トラック管理、メニュー操作、状態取得のツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Ardour MCP サーバー
(活発に開発中)
英語 | ロシア語
英語
概要
ardour_mcp_server は、Open Sound Control(OSC)メッセージを介してArdour(デジタルオーディオワークステーション)を制御するインターフェースを提供するために、Model Context Protocol(MCP)を実装したサーバーです。外部アプリケーションやスクリプトからArdourを操作し、タスクを自動化して機能を拡張できます。
このサーバーはMCPリクエストを受信し、Ardour固有のOSCメッセージに変換して、実行中のArdourインスタンスに送信します。また、サーバーの機能をテストするための stdio_client_tester バイナリも含まれています。
機能
- Ardourのトランスポート(再生、停止、位置指定、速度など)を制御します。
- トラックを管理します(ミュート、ソロ、録音有効化、ゲイン、トリム)。
/ardour/access_actionを介して、一般的なArdourのメニューアクションを実行します。- Ardourの状態(再生状態など)を読み取ります。
- 簡単に統合できるMCP準拠のインターフェースを提供します。
前提条件
- Rust:Rustがインストールされていることを確認してください。Rustは rust-lang.org から入手できます。
- Ardour:Ardour 6.x、7.x、8.x、または9.xの実行中のインスタンス。
- ArdourのOSC設定:
- Ardourで
Edit > Preferences > Control Surfacesに移動します。 - 「OSC」を有効にします。
- 「Listen Port (UDP)」が
3819に設定されていることを確認します(別のポートを使用する場合は、サーバーの設定を更新してください)。 - サーバーはデフォルトで
127.0.0.1:3819にメッセージを送信します。
- Ardourで
サーバーのビルド
MCP/ardour_mcp_serverディレクトリに移動します:cd MCP/ardour_mcp_server- サーバーとテスターをビルドします:
パフォーマンスを向上させるため、リリースモードでビルドすることもできます:cargo build
バイナリはcargo build --releasetarget/debug/またはtarget/release/に配置されます。
サーバーの実行
次のコマンドを使用して、サーバーを直接実行できます:
cargo run --bin ardour_mcp_server
または、ビルド後に実行ファイルを実行します:
./target/debug/ardour_mcp_server
# or ./target/release/ardour_mcp_server
サーバーが起動し、MCP接続(例:stdio_client_tester からの接続)を待ち受けます。
クライアンステスターの実行
stdio_client_tester は標準入力/出力を介してサーバーと通信します。サーバーがArdourと正しく連携しているかをテストするのに適した方法です。
- Ardourが実行中で、OSC用に設定されていることを確認します。
ardour_mcp_serverを別途実行していないことを確認します。テスターが子プロセスとして起動するためです。- テスターを実行します:
テスターのログはcargo run --bin stdio-client-testerMCP/ardour_mcp_server/logs/stdio_client_tester.logに出力されます。 (テスターによって実行された)サーバーのログはMCP/ardour_mcp_server/logs/ardour_mcp_server.logに出力されます。
実装済みOSCコマンド
実装済みOSCコマンドと、それに対応するMCPツールの一覧については、doc/osc_ardour_list.md を参照してください。
doc/index.html には、Ardourの公式マニュアルから抜粋した、Ardourの一般的なOSC機能のリファレンスが記載されています。index.html に記載されているコマンドがすべて、このサーバーで個別のツールとして直接実装されているわけではないことに注意してください。多くのコマンドは汎用の access_action ツールを使用して実行できます。
ロシア語
概要
ardour_mcp_server は、Open Sound Control(OSC)メッセージを介してデジタルオーディオワークステーションArdourを制御するインターフェースを提供するために、Model Context Protocol(MCP)を実装したサーバーです。外部アプリケーションやスクリプトからArdourを操作し、タスクを自動化して機能を拡張できます。
このサーバーはMCPリクエストを受信し、Ardour固有のOSCメッセージに変換して、実行中のArdourインスタンスに送信します。また、サーバーの機能をテストするための実行ファイル stdio_client_tester も含まれています。
Возможности
- Управление транспортом Ardour (воспроизведение, остановка, перемотка, скорость и т.д.).
- Управление дорожками (mute, solo, включение записи, усиление, подстройка уровня).
- Выполнение общих действий из меню Ardour через
/ardour/access_action. - Чтение состояния Ardour (например, состояние воспроизведения).
- Интерфейс, совместимый с MCP, для легкой интеграции.
Требования
- Rust: Убедитесь, что у вас установлен Rust. Его можно скачать с rust-lang.org.
- Ardour: Запущенный экземпляр Ardour 6.x, 7.x, 8.x или 9.x.
- Настройка OSC в Ardour:
- В Ardour перейдите в
Edit > Preferences > Control Surfaces(илиПравка > Параметры > Управляющие устройства). - Включите "OSC".
- Убедитесь, что "Listen Port (UDP)" (Порт приема UDP) установлен на
3819(или обновите конфигурацию сервера, если используете другой порт). - По умолчанию сервер отправляет сообщения на
127.0.0.1:3819.
- В Ardour перейдите в
Сборка сервера
- Перейдите в директорию
MCP/ardour_mcp_server:cd MCP/ardour_mcp_server - Соберите сервер и тестер:
Вы также можете выполнить сборку в релизном режиме для лучшей производительности:cargo build
Исполняемые файлы будут находиться вcargo build --releasetarget/debug/илиtarget/release/.
Запуск сервера
Вы можете запустить сервер напрямую с помощью:
cargo run --bin ardour_mcp_server
Или, после сборки, запустите исполняемый файл:
./target/debug/ardour_mcp_server
# или ./target/release/ardour_mcp_server
Сервер запустится и будет ожидать MCP-соединений (например, от stdio_client_tester).
Запуск клиент-тестера
stdio_client_tester взаимодействует с сервером через стандартные потоки ввода/вывода. Это хороший способ проверить, корректно ли сервер взаимодействует с Ardour.
- Убедитесь, что Ardour запущен и настроен для OSC.
- Убедитесь, что
ardour_mcp_serverне запущен отдельно, так как тестер запустит его как дочерний процесс. - Запустите тестер:
Логи тестера будут находиться вcargo run --bin stdio-client-testerMCP/ardour_mcp_server/logs/stdio_client_tester.log. Логи сервера (при запуске через тестер) будут находиться вMCP/ardour_mcp_server/logs/ardour_mcp_server.log.
Реализованные OSC-команды
Список реализованных OSC-команд и соответствующих им MCP-инструментов смотрите в файле doc/osc_ardour_list.md.
Файл doc/index.html содержит справочную информацию об общих возможностях OSC в Ardour, извлеченную из официального руководства Ardour. Обратите внимание, что не все команды, перечисленные в index.html, напрямую реализованы как отдельные инструменты в этом сервере; ко многим из них можно получить доступ с помощью универсального инструмента access_action.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。