mcpField
F
Flstudio

Flstudio

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

关于 Flstudio

Flstudio 是一个将 Claude 连接到 FL Studio 的 MCP 服务,用于通过 MIDI 信号在 DAW 中发送音符。它面向希望用 AI 辅助编曲的音乐人,项目作者称其在三天内完成并开源。使用前需要配置虚拟 MIDI 端口并安装 Python 依赖。

主要功能

  1. 01通过虚拟 MIDI 端口向 FL Studio 发送音符
  2. 02提供 Test Controller 脚本接收 MCP 指令
  3. 03支持在钢琴卷帘中录入旋律、和弦与鼓点
  4. 04使用 mido 与 python-rtmidi 进行 MIDI 通信

适用场景

  1. 01用自然语言描述让 AI 生成旋律或和弦并写入 FL Studio
  2. 02在 FL Studio 中快速试验 AI 生成的编曲素材

MCP 相关

该项目是 MCP 服务,由 trigger.py 实现,向 Claude 等 MCP 客户端提供控制 FL Studio 的能力。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

flstudio MCP

这是一个将 Claude 连接到 FL Studio 的 MCP 服务。

我们用 3 天做出了这个项目。现在将它开源,看看它究竟能发挥出什么作用。可能性无穷无尽。

如果你遇到任何问题,欢迎加入我们的 Discord,我们可以帮你设置。

(如果你对音乐和 AI 的未来感兴趣,或者想申请新功能,也欢迎加入。我们会和你一起构建这个项目。)

https://discord.gg/ZjG9TaEhvy

欢迎体验我们为音乐人打造的 AI 驱动 DAW:www.veena.studio

全程在浏览器中完成。完全免费。

步骤 1:下载文件

你应该会看到两个主要项目。

  • 一个名为 Test Controller 的文件夹
  • 一个名为 trigger.py 的 Python 文件 Test Controller 文件夹中包含一个 device_test.py 文件,用于接收来自 MCP 服务的信息。 trigger.py 就是 MCP 服务。

将 Test Controller 文件夹放到 Image-Line/FL Studio/Settings/Hardware 中(不要更改此文件或文件夹的名称)

步骤 2:为 Claude 设置 MCP

按照本教程了解如何通过编辑 claude_desktop_config 文件,在 Claude 中设置 MCP 服务。

https://modelcontextprotocol.io/quickstart/server

如果你按照此流程操作,请确保将所有提到 weather.py 的地方改为 trigger.py

如果没有显示锤子图标,请打开任务管理器并强制结束 Claude 进程。

之后应该就会显示。

这是我的配置文件:

mcp

步骤 3:设置虚拟 MIDI 端口

Windows

在 Windows 上,从这里下载 LoopMIDI。

https://www.tobias-erichsen.de/software/loopmidi.html

安装 LoopMIDI,然后点击 + 按钮添加一个端口。

这是我的设置: loopmidi2

Mac

MIDI 端口会自动设置为接收数据。

步骤 4:设置 MIDI 控制器

打开 FL Studio。

前往 Options > MIDI Settings。

在 Input 选项卡中,点击刚才用 LoopMIDI 创建的 MIDI 输入。

将控制器类型从 (generic controller) 改为 Test Controller。

步骤 5:下载程序包

前往包含 trigger.py 文件的文件夹。(这是 MCP 服务文件)

激活 conda 环境(如 Claude MCP 设置教程中所述)

运行以下命令,下载所需的程序包:uv pip install httpx mido python-rtmidi typing fastmcp FL-Studio-API-Stubs (uv 应已在 Claude MCP 设置过程中安装)

步骤 6:验证 MCP 连接

让 Claude 获取可用的 MIDI 端口。

这应该会通过 MCP 获取 FL Studio 中的端口。

如果使用 Windows,请复制用 LoopMIDI 创建的端口及其前面的数字。

如果使用 Mac,请复制默认端口。

loopmidi

我的情况是复制 loopMIDI Port 2

用文本编辑器打开 trigger.py,并将默认端口替换为刚才复制的端口名称。 output_port = mido.open_output('loopMIDI Port 2')

步骤 7:创作音乐

使用 MCP 发送旋律、和弦、鼓点等。

点击你想要录制的乐器,即可实时录制到该乐器的钢琴卷帘中。

我开始新的聊天时通常会使用这个提示词:音符格式如下:note(0-127),velocity(0-100),length in beats(decimal),position in beats(decimal)

步骤 8:分享你的作品

在我们的 Discord 上分享你的作品:https://discord.gg/ZjG9TaEhvy

致谢

FL Studio API Stubs:https://github.com/IL-Group/FL-Studio-API-Stubs Ableton MCP:https://github.com/ahujasid/ableton-mcp

技术细节

欢迎贡献。

其工作方式是:device_test.py 的行为类似一个虚拟 MIDI 控制器。 MCP 服务(trigger.py)通过打开一个虚拟端口,并使用名为 MIDO 的库发送 MIDI 消息,与这个 MIDI 控制器通信。

MIDI 消息的问题在于它只有 7 位,因此我们只能发送 0–127 之间的数字。

因此,我们会把音符位置等 MIDI 数据编码到多个 MIDI 音符中,供设备读取。

希望 Image Line 能通过其 API 向我们开放更多 DAW 的访问权限,这样我们就不必再折腾这些 MIDI 了。

评论

支持 Markdown

第一次接触 MCP?

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

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