Logic Pro MCP控制接口

Logic Pro MCP是一个为Logic Pro数字音频工作站提供多通道程序控制接口的中间件服务,通过统一接口集成MIDI、事件模拟等五种通信方式实现AI辅助音乐创作。

  • by qinnovates
  • Swift
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 qinnovates/logic-pro-mcp

使用说明


[!提示] claude mcp add logic-pro /path/to/LogicProMCP --然后重新启动Claude Code。

问题

Logic Pro是一个强大的DAW,但它没有API。以编程方式控制它意味着在AppleScript限制、可访问性API、MIDI机器控制和键盘快捷键的迷宫中导航——每种都有不同的功能和故障模式。

Logic Pro MCP让AI助手通过单个MCP接口完全控制Logic Pro,并在五个通信信道上自动回退。

运作原理

graph TD
    A["AI Assistant"] --> B["MCP Server"]
    B --> C{"Channel Router"}
    C --> D["CoreMIDI"]
    C --> E["CGEvent"]
    C --> F["Accessibility"]
    C --> G["AppleScript"]
    C --> H["OSC"]

    style A fill:#FF3CAC,stroke:#D4006A,color:#fff
    style B fill:#E040FB,stroke:#AB00D9,color:#fff
    style C fill:#784BA0,stroke:#5C3D8F,color:#fff
    style D fill:#2B86C5,stroke:#1A6B9E,color:#fff
    style E fill:#00E5FF,stroke:#0097A7,color:#000
    style F fill:#E040FB,stroke:#FF3CAC,color:#fff
    style G fill:#FF3CAC,stroke:#D4006A,color:#fff
    style H fill:#2B86C5,stroke:#1A6B9E,color:#fff

信道路由器为每次操作选择最佳信道,如果一个信道失败,则自动回退(断路器模式)。


快速开始

# Clone and build
git clone https://github.com/qinnovates/logic-pro-mcp.git
cd logic-pro-mcp
swift build

# Register with Claude Code
claude mcp add logic-pro "$(pwd)/.build/debug/LogicProMCP"

# Restart Claude Code, then use it

[!注意] Logic Pro必须正在运行。您需要在首次使用时授予辅助功能和自动化权限--run LogicProMCP --check-permissions 以验证。


工具

工具 操作 描述
运输 播放、停止、录制、暂停、倒退、前进、set_bpm、set_position、toggle_cycle、together_mtronome 播放和录制控制
轨道 创建、删除、重命名、选择、静音、独奏、手臂 曲目管理
混音器 set_volume、set_pan、set_mute 混音器通道控制
midi_send note、cc、program_change、pitch_bend 发送MIDI消息
编辑 撤消、重做、量化、拆分、连接、复制、粘贴、删除 编辑操作
导航 goto_bar、goto_marker、create_marker、zoom_in、zoom_out、show_mixer、show_editor、show_automation UI导航
项目 新建、打开、保存、关闭、弹出 项目文件操作
系统 健康、权限 诊断

资源

资源 URI 描述
运输州 logicpro://state/transport 当前播放状态、速度、位置
曲目 logicpro://state/tracks 所有具有静音/独奏/手臂状态的曲目
搅拌机 logicpro://state/mixer 每个通道的混音器状态
项目 logicpro://state/project 项目元数据
健康 logicpro://system/health 服务器运行状况和通道状态

Architecture

通道路由

每个操作域都有一个优先级回退链:

域 主 回退1 回退2
传输 CoreMIDI CGEvent 可访问性
track 辅助功能 CGEvent --
混音器 OSC 可访问性 --
midi CoreMIDI -- --
编辑 CGEvent -- --
导航 CGEvent 辅助功能 --
项目 AppleScript CGEvent --

路由器使用断路器模式——如果一个通道反复出现故障,它将脱机并在冷却后重试。

源布局

Sources/
├── LogicProMCP/              # Executable (entry point)
│   └── main.swift
└── LogicProMCPLib/           # Library (all logic)
    ├── Audio/                # FFT analysis, bounce control
    ├── Channels/             # 5 channel implementations + router
    ├── Config/               # Keybindings, server config
    ├── MIDI/                 # CoreMIDI engine, MMC commands
    ├── Permissions/          # macOS permission checks
    ├── Resources/            # MCP resource handlers
    ├── Server/               # MCP server + tool handlers
    └── State/                # Actor-based cache + poller
Permissions

Logic Pro MCP需要macOS权限来控制Logic Pro:

权限 必需 如何授予
无障碍 CGEvent密钥模拟、UI检查 系统设置>隐私和安全>可访问性
自动化 Logic Pro的AppleScript控件 首次使用时授予(系统提示)

跑 LogicProMCP --check-permissions 以验证是否授予了所有权限。


需求

  • macOS 14.0+
  • Swift 6.0+
  • Logic Pro(运行中)
  • Claude Code或任何兼容MCP的客户端

发展

swift build          # Build
swift test           # Test
swift build -c release  # Release build

许可证

麻省理工学院


Built by qinnovates

README template from repo-design-kit