Ardour MCP服务器
(正在积极开发中)
英语 | 俄罗斯
英语
概述
ardour_mcp_server 是实现模型上下文协议(MCP)以提供用于通过开放声音控制(OSC)消息控制Ardour(数字音频工作站)的接口的服务器。它允许外部应用程序或脚本与Ardour交互,自动化任务并扩展其功能。
此服务器监听MCP请求,将其转换为Ardour特定的OSC消息,并将其发送到正在运行的Ardour实例。它还包括 stdio_client_tester 用于测试服务器功能的二进制文件。
特性
- 控制Ardour传输(播放、停止、定位、速度等)。
- 管理曲目(静音、独奏、启用录制、增益、修剪)。
- 通过以下方式执行Ardour菜单的常规操作
/ardour/access_action. - 读取Ardour状态(例如,播放状态)。
- MCP兼容接口,易于集成。
先决条件
- 锈:确保安装了Rust。你可以从 rust-lang.org.
- 热情:Ardour 6.x、7.x、8.x或9.x的运行实例。
- Ardour OSC配置:
- 在阿杜尔,去 Edit > Preferences > Control Surfaces. - 启用“OSC”。 - 确保“侦听端口(UDP)”设置为 3819 (如果使用其他端口,请更新服务器配置)。 - 服务器向发送消息 127.0.0.1:3819 默认情况下。
构建服务器
- 导航到
MCP/ardour_mcp_server目录:
cd MCP/ardour_mcp_server- 构建服务器和测试仪:
cargo build您还可以在发布模式下构建以获得更好的性能:
cargo build --release二进制文件将位于 target/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-tester测试仪的日志将在 MCP/ardour_mcp_server/logs/stdio_client_tester.log. 服务器的日志(由测试人员运行时)将位于 MCP/ardour_mcp_server/logs/ardour_mcp_server.log.
已执行OSC命令
有关已实现的OSC命令及其相应MCP工具的列表,请参阅 doc/os_ardour_list.md.
文件 doc/index.html 包含从Ardour官方手册中提取的Ardour通用OSC功能的参考。请注意,并非中列出的所有命令 index.html 在该服务器中直接实现为不同的工具;许多可以使用泛型访问 access_action 工具。
______________________________________________________________________
俄罗斯
概述
ardour_mcp_server 它是一个实现Model Context Protocol(MCP)的服务器,通过Open Sound Control(OSC)消息为Ardour数字音频工作站提供控制接口。它允许外部应用程序或脚本与Ardour通信,自动化任务并扩展其功能。
服务器接收MCP请求,将其转换为特定于Ardour的OSC消息,并将其发送到正在运行的Ardour实例。项目还包括一个可执行文件 stdio_client_tester 测试服务器功能。
机会
- 控制Ardour传输(播放、停止、倒带、速度等)。
- 轨道管理(静音、独奏、写入、放大、级别调整)。
- 通过Ardour菜单执行常规操作
/ardour/access_action. - 读取Ardour状态(例如播放状态)。
- 与MCP兼容的接口,易于集成。
要求
- 锈请确保您安装了Rust。可以从 rust-lang.org.
- 热情:正在运行的Ardour 6.x、7.x、8.x或9.x实例。
- 在Ardour中配置OSC:
- 进入Ardour Edit > Preferences > Control Surfaces (或) Правка > Параметры > Управляющие устройства). - 打开OSC。 - 验证是否安装了“侦听端口(UDP)”(UDP接收端口) 3819 (或者,如果您使用不同的端口,请更新服务器配置)。 - 默认情况下,服务器将消息发送到 127.0.0.1:3819.
服务器构建
- 转到目录
MCP/ardour_mcp_server:
cd MCP/ardour_mcp_server- 组装服务器和测试仪:
cargo build您还可以在发布模式下进行构建,以获得更好的性能:
cargo build --release可执行文件将在 target/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 通过标准I/O线程与服务器通信。这是一个很好的方法来检查服务器是否正确地与Ardour交互。
- 确保Ardour已启动并为OSC配置。
- 确保
ardour_mcp_serverне 单独运行,因为测试程序将其作为子进程运行。 - 运行测试仪:
cargo run --bin stdio-client-tester测试人员的日志将在 MCP/ardour_mcp_server/logs/stdio_client_tester.log. 服务器日志(通过测试仪启动时)将位于 MCP/ardour_mcp_server/logs/ardour_mcp_server.log.
实现的OSC命令
有关已实现的OSC命令和相应的MCP工具的列表,请参阅文件 doc/os_ardour_list.md.
文件 doc/index.html 包含从官方Ardour手册中提取的OSC在Ardour中的一般功能的参考信息。请注意,并非所有列出的命令 index.html,直接实现为此服务器上的独立工具;其中许多都可以通过通用工具获得。 access_action.
