mcpField
A
ardour-mcp

ardour-mcp

本地服务
github.com/pyroqbit媒体与设计771 周前更新

关于 ardour-mcp

ardour-mcp 是一个仍在积极开发中的 MCP 服务,通过 OSC 控制运行中的 Ardour 数字音频工作站。它面向希望从外部应用或脚本自动化播放、轨道和菜单操作的用户。

主要功能

  1. 01控制播放、停止、定位和速度
  2. 02管理轨道静音、独奏及录音状态
  3. 03调整轨道增益和电平
  4. 04执行 Ardour 通用菜单操作
  5. 05读取播放状态等信息

适用场景

  1. 01从外部脚本控制 Ardour 传输
  2. 02自动调整轨道状态和电平
  3. 03读取 Ardour 当前播放状态
  4. 04使用 stdio_client_tester 测试连接

MCP 相关

该服务将 MCP 请求转换为 OSC 消息并发送给运行中的 Ardour,为 MCP 客户端提供传输、轨道管理、菜单操作和状态读取工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Ardour MCP 服务

(正在积极开发中)

英语 | 俄语

英语

概述

ardour_mcp_server 是一个实现 Model Context Protocol(MCP)的服务,可通过 Open Sound Control(OSC)消息提供控制 Ardour(数字音频工作站)的接口。它允许外部应用程序或脚本与 Ardour 交互、自动执行任务并扩展其功能。

此服务会监听 MCP 请求,将其转换为 Ardour 专用的 OSC 消息,并发送给正在运行的 Ardour 实例。它还包含一个 stdio_client_tester 二进制文件,用于测试服务的功能。

功能
  • 控制 Ardour 传输(播放、停止、定位、速度等)。
  • 管理音轨(静音、独奏、启用录音、增益、微调)。
  • 通过 /ardour/access_action 执行 Ardour 的常规菜单操作。
  • 读取 Ardour 状态(例如,播放状态)。
  • 符合 MCP 规范的接口,便于集成。
前置条件
  • 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 发送消息。
构建服务
  1. 进入 MCP/ardour_mcp_server 目录:
    cd MCP/ardour_mcp_server
    
  2. 构建服务和测试工具:
    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 正确交互的好方法。

  1. 确保 Ardour 正在运行且已配置 OSC。
  2. 确保没有单独运行 ardour_mcp_server,因为测试工具会将其作为子进程启动。
  3. 运行测试工具:
    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/osc_ardour_list.md。

文件 doc/index.html 包含 Ardour 常规 OSC 功能的参考资料,内容摘自 Ardour 官方手册。请注意,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 (воспроизведение, остановка, перемотка, скорость и т.д.).
  • Управление дорожками (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.
Сборка сервера
  1. Перейдите в директорию MCP/ardour_mcp_server:
    cd MCP/ardour_mcp_server
    
  2. Соберите сервер и тестер:
    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 взаимодействует с сервером через стандартные потоки ввода/вывода. Это хороший способ проверить, корректно ли сервер взаимодействует с Ardour.

  1. Убедитесь, что Ardour запущен и настроен для OSC.
  2. Убедитесь, что ardour_mcp_server не запущен отдельно, так как тестер запустит его как дочерний процесс.
  3. Запустите тестер:
    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/osc_ardour_list.md.

Файл doc/index.html содержит справочную информацию об общих возможностях OSC в Ardour, извлеченную из официального руководства Ardour. Обратите внимание, что не все команды, перечисленные в index.html, напрямую реализованы как отдельные инструменты в этом сервере; ко многим из них можно получить доступ с помощью универсального инструмента access_action.

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。