______________________________________________________________________
\[!提示\] 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 + pollerPermissions
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
