项目简介
WigAI 是一个 Bitwig Studio 扩展,实现了一个 Model Context Protocol (MCP) 服务器。它使外部 AI 助手(如 IDE Copilot、独立 AI 助手)能够通过简单的基于文本的命令与 Bitwig Studio 交互并控制其功能。这为通过 AI 进行免提控制和自动化音乐制作工作流程提供了可能性。
主要功能点
- MCP 服务器实现: 作为基于 MCP 的后端运行,接收来自 AI 客户端的标准化请求。
- 传输控制: 允许 AI 助手开始或停止 Bitwig Studio 的播放传输。
- 设备参数控制: 支持 AI 助手获取当前选定设备上的可映射参数列表,并按索引设置特定参数的值(包括批量设置)。
- 剪辑启动: 使 AI 助手能够通过提供轨道名称和剪辑槽索引来启动特定的剪辑。
- 场景启动: 支持 AI 助手通过场景的索引或名称来启动场景。
安装步骤
- 确保您的系统已安装 Java 21 LTS 或更高版本。
- 确保您拥有 Bitwig Studio (5.2.7 或更高版本)。
- 从 GitHub 克隆或下载 WigAI 仓库代码。
- 打开终端或命令行工具,导航到 WigAI 仓库的根目录。
- 执行 Gradle 构建命令 './gradlew build'。
- 构建成功后,您将在 'build/extensions' 目录下找到一个名为 'WigAI.bwextension' 的文件。
- 将 'WigAI.bwextension' 文件复制到您的 Bitwig Studio 用户扩展目录中。此目录位置因操作系统而异(例如,Windows 可能在 'Documents\Bitwig Studio\Extensions',macOS 可能在 '~/Documents/Bitwig Studio/Extensions')。
- 启动 Bitwig Studio。
- 在 Bitwig Studio 的菜单中,导航到 'File' > 'Settings' (Windows/Linux) 或 'Bitwig Studio' > 'Settings' (macOS),然后选择 'Extensions' 选项卡。
- 在扩展列表中找到 "WigAI",并勾选旁边的复选框以激活它。
- 扩展激活成功并启动 MCP 服务器后,Bitwig Studio 可能会弹出通知,显示服务器的连接信息。
服务器配置
WigAI 作为 Bitwig Studio 扩展运行,由 Bitwig 进程启动。您无需手动启动服务器。MCP 服务器默认绑定到 'localhost' 并使用端口 '61169'。它使用 Server-Sent Events (SSE) 作为传输协议。
支持 MCP 的 AI 客户端需要配置与 WigAI 服务器建立连接。典型的配置信息会包括服务器的名称、连接 URL 和传输协议。以下是基于 MCP 标准的 JSON 格式配置示例,您需要根据您的 MCP 客户端界面或文档来输入这些信息:
{ "name": "WigAI", "command": null, // WigAI 是 Bitwig 扩展,无需外部命令启动 "args": [], // 无需外部启动参数 "url": "http://localhost:61169/mcp", // MCP JSON-RPC 请求端点 "sseUrl": "http://localhost:61169/sse", // MCP SSE 通知端点 "transport": "sse", // 指明使用 SSE 传输 "capabilities": { "tools": true, // 声明支持工具调用 "logging": true // 声明支持日志通知(如果客户端需要) } }
- 'name': 服务器的标识名称,用于客户端显示。
- 'command' 和 'args': 用于启动独立服务器进程。由于 WigAI 是 Bitwig 扩展,应设置为 'null' 或空,由 Bitwig 启动。
- 'url': 客户端发送 JSON-RPC 请求(如 'tools/call')的主要端点。
- 'sseUrl': 客户端连接以接收服务器推送通知(如日志、状态更新等)的端点。
- 'transport': 指定 MCP 客户端使用的传输协议,WigAI 使用 'sse'。
- 'capabilities': 声明服务器支持的功能。WigAI 当前支持工具调用和日志功能。
您可以在 Bitwig Studio 的 WigAI 扩展偏好设置中修改服务器的主机和端口。修改后,服务器会自动重启以应用新的设置。
基本使用方法
激活 WigAI 扩展并在 Bitwig Studio 中加载一个项目后,外部 AI 助手即可连接到配置好的 MCP 服务器地址(默认是 'http://localhost:61169/mcp' 或 SSE 端点 'http://localhost:61169/sse')。
AI 助手可以通过发送 MCP 请求来调用 WigAI 暴露的工具,从而控制 Bitwig Studio。例如,AI 可以调用以下工具:
- 'transport_start': 启动播放。
- 'transport_stop': 停止播放。
- 'get_selected_device_parameters': 获取当前选定设备的前 8 个参数信息。
- 'set_selected_device_parameter': 设置当前选定设备上指定索引 ('parameter_index') 参数的值 ('value')。
- 'set_selected_device_parameters': 批量设置当前选定设备上多个参数的值。
- 'launch_clip': 启动指定轨道 ('track_name') 的指定剪辑插槽 ('clip_index')。
- 'session_launchSceneByIndex': 启动指定索引 ('scene_index') 的场景。
- 'session_launchSceneByName': 启动指定名称 ('scene_name') 的场景。
- 'status': 获取 WigAI 扩展的状态和版本信息。
具体的工具名称、描述和所需参数,AI 客户端可以通过 MCP 协议的标准方法获取(例如,通过 'server/capabilities' 请求)。用户应根据 AI 客户端的功能和交互方式,使用自然语言或特定指令来引导 AI 调用这些工具。
信息
分类
AI与计算