返回市场
ableton-live-mcp-服务器

ableton-live-mcp-服务器

作者:Simon-Kansara340 星标更新:2025-03-27

项目介绍

Ableton Live MCP 服务器

📌 概述

Ableton Live MCP 服务器 是一个实现 模型上下文协议 (MCP) 的服务器,用于促进 LLM 和 Ableton Live 之间的通信。它使用 OSC (开放声音控制) 来发送和接收消息到 Ableton Live。该服务器基于 AbletonOSC 实现,并详尽地映射可用的 OSC 地址到 MCP 客户端可访问的 工具

用 LLM 控制 Ableton Live

该项目由两个主要组件组成:

  • mcp_ableton_server.py: 处理客户端与 OSC 守护进程之间通信的 MCP 服务器。
  • osc_daemon.py: 负责向 Ableton Live 发送命令并处理响应的 OSC 守护进程。

✨ 特性

  • 提供一个与 MCP 兼容的 API,用于从 MCP 客户端控制 Ableton Live。
  • 使用 python-osc 发送和接收 OSC 消息。
  • 基于 AbletonOSC 的 OSC 实现。
  • 实现了对 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 Live 之间的 OSC 通信:

uv run osc_daemon.py

这将:

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

示例用法

在 Claude 桌面中,询问 Claude:

  • 准备一套录音设备来录制摇滚乐队
  • 将所有名称中包含“voice”的轨道的输入路由通道设置为 Ext. In 2

⚙️ 配置

默认情况下,服务器和守护进程运行在 localhost (127.0.0.1) 上,使用以下端口:

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

要修改这些设置,请编辑 osc_daemon.py 文件中的 AbletonOSCDaemon 类:

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 桌面配合使用,您需要在您的 Claude 桌面设置中进行配置。配置文件的位置因操作系统而异:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %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 文件。

致谢

TODO

  • 探索 资源提示 原语的机会。
  • 构建一个独立的 Ableton Live MCP 客户端。