Ableton Live控制服务器

Ableton Live MCP服务器通过Model Context Protocol (MCP)实现LLMs与Ableton Live之间的通信,使用OSC协议发送和接收消息。

  • by Simon-Kansara
  • Python
  • 本地部署
  • 396 星标
  • 更新于
在 GitHub 查看 Simon-Kansara/ableton-live-mcp-server

使用说明

Ableton Live MCP服务器

📌 概述

这 Ableton Live MCP服务器 是一个实现 模型上下文协议(MCP) 使容易 LLM和 Ableton现场。它使用 OSC(开放式声音 控制) 向/从Ableton Live发送和接收消息。它基于 AbletonOSC 实施和 详尽地将可用的OSC地址映射到 工具 可访问的 MCP客户端。

该项目由两个主要部分组成:

  • mcp_ableton_server.py:处理以下通信的MCP服务器 客户端和OSC守护进程。
  • osc_daemon.py:负责向Ableton中继命令的OSC守护进程 实时和处理响应。

✨ 特性

  • 提供MCP-兼容的API,用于从MCP客户控制Ableton Live。
  • 用途 python osc 用于发送和接收OSC消息。
  • 基于OSC的实施 AbletonOSC.
  • 实现Ableton Live命令的请求-响应处理。

⚡ 安装

需求

  • Python 3.8+
  • python-osc (用于OSC通信)
  • fastmcp (用于MCP支持)
  • uv (推荐Python包安装程序)
  • AbletonOSC 作为控制面

安装步骤

  1. 安装 uv (https://docs.astral.sh/uv/getting-started/installation):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. 克隆存储库:

    git clone https://github.com/your-username/mcp_ableton_server.git
    cd mcp_ableton_server
    
  3. 安装项目及其依赖项:

    uv sync
    
  4. 安装AbletonOSC按照以下说明操作 AbletonOSC

🚀 用法

运行OSC守护进程

OSC守护进程将处理MCP服务器和Ableton之间的OSC通信 直播:

uv run osc_daemon.py

这将:

  • 监听端口上的MCP客户端连接 65432.
  • 通过端口上的OSC将消息转发到Ableton Live 11000.
  • 在端口上接收来自Ableton的OSC响应 11001.

示例用法

在Claude桌面中,问Claude:

  • 准备一套摇滚乐队的唱片
  • 设置名称中有“语音”的所有曲目的输入路由通道 到Ext.In 2

⚙️ 配置

默认情况下,服务器和守护进程在 本地主机(127.0.0.1) 随着 以下端口:

  • MCP服务器套接字: 65432
  • Ableton Live OSC端口(发送): 11000
  • Ableton Live OSC端口(接收): 11001

要修改这些,请编辑 AbletonOSCDaemon 类在 osc_daemon.py:

self.socket_host = '127.0.0.1'
self.socket_port = 65432
self.ableton_host = '127.0.0.1'
self.ableton_port = 11000
self.receive_port = 11001

Claude桌面配置

要将此服务器与Claude Desktop一起使用,您需要在Claude中配置它 桌面设置。配置文件位置因操作系统而异:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%/Claude/claude_desktop_config.json

将以下配置添加到您的 mcpServers 章节:

{
  "mcpServers": {
    "Ableton Live Controller": {
      "command": "/path/to/your/project/.venv/bin/python",
      "args": ["/path/to/your/project/mcp_ableton_server.py"]
    }
  }

此配置可确保:

  • 服务器在正确管理所有依赖关系的情况下运行
  • 该项目保持可移植性和可复制性

贡献

请随时提交问题、功能请求或拉取请求以改进此功能 项目。

许可证

该项目根据 MIT许可证。请参阅 LICENSE 提交 细节。

致谢

全部

  • 探索 资源 和 鼓励 原始机会。
  • 构建一个独立的Ableton Live MCP客户端。