在三天内完成。我们开源这个项目,看看我们能从中获得什么。可能性是无穷无尽的。
(如果你对音乐和AI的未来感兴趣,或者想要请求功能,也可以加入。我们在与你一起构建这个项目)
访问我们的AI驱动的音乐制作软件:www.veena.studio
全部在浏览器中操作。完全免费。
你应该看到两个主要项目。
将Test Controller文件夹放置在Image-Line/FL Studio/Settings/Hardware目录下(不要更改此文件或文件夹的名称)
按照以下教程了解如何通过编辑claude_desktop_config文件来设置Claude中的MCP服务器。
https://modelcontextprotocol.io/quickstart/server
如果遵循了这个过程,请确保将所有提到的weather.py更改为trigger.py
如果Hammer图标没有显示出来,请打开任务管理器并强制关闭Claude进程。
然后它应该会显示出来。
这是我的配置文件的样子
对于Windows,请从此处下载LoopMIDI。
https://www.tobias-erichsen.de/software/loopmidi.html
安装LoopMIDI,并使用+按钮添加一个端口。
这是我的样子:
你的MIDI端口会自动设置以接收数据。
打开FL Studio。
转到选项 > MIDI设置。
在输入标签页中,点击你刚刚用LoopMIDI创建的MIDI输入。
将控制器类型从(通用控制器)更改为Test Controller。
前往包含trigger.py文件的文件夹。(这是MCP服务器文件)
激活conda环境(就像你在Claude MCP设置教程中学到的那样)
运行以下命令下载所需的包:uv pip install httpx mido python-rtmidi typing fastmcp FL-Studio-API-Stubs (uv应从Claude MCP设置中安装)
告诉Claude获取可用的MIDI端口。
这应该使用MCP从FL Studio获取端口。
如果是Windows,请复制你用LoopMIDI创建的端口及其前面的数字。
如果是Mac,请复制默认端口。
在我的情况下,我复制了loopMIDI Port 2
打开trigger.py文件,在文本编辑器中替换默认端口为你刚刚复制的端口名称。 output_port = mido.open_output('loopMIDI Port 2')
使用MCP发送旋律、和弦、鼓点等。
点击你想要录制的乐器,它将实时记录到该乐器的钢琴卷上。
我通常在开始新对话时使用这个提示:这是音符格式:note(0-127),velocity(0-100),长度(小节数,小数),位置(小节数,小数)
在我们的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的麻烦事了。