
Ableton for AI
io.github.peterkolbe由 GitHub 帳號 peterkolbe 發布v0.1.2更新於 Oct 28, 2026
Bridge between Ableton Live and AI. Inspect, analyze audio, and control mixing via MCP.
概覽
把 Ableton Live 接到 MCP 用戶端,讓助理檢視專案、分析匯出的分軌,並調整混音與裝置參數。
- 可以做什麼
- 讀取工作階段與音軌資訊:速度、定位點、音軌清單、混音狀態、裝置鏈與參數
- 一次呼叫批次查詢多條音軌的完整資料
- 分析匯出的分軌,產生音訊摘要(LUFS、峰值、RMS、瞬態)與頻譜圖
- 以資源形式讀取這些摘要與頻譜圖,並列出可用的分析結果
- 遠端調整音軌音量與聲像,並設定任一裝置參數
- 適用情境
- 適合在 Ableton Live 中工作、希望助理回答專案狀態問題、依分軌分析給出混音建議,或直接在對話中調整推桿、聲像與裝置參數的人。
- 執行需求
- 在桌面端本機執行(macOS 或 Windows),需要 Python 3.11+ 或 uv;Ableton Live 並安裝啟用 AbletonOSC 控制面;STEMS_SOURCE_DIR 指向手動從 Live 匯出的分軌資料夾;可選 PREFERRED_AUDIO_FORMAT 等設定。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Ableton for AI,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Ableton for AI
[!IMPORTANT] For AI Agents: Please read AGENTS.md for detailed technical context and protocol specifications before working on this project.
Ableton for AI is the bridge between your DAW and AI models. It makes Ableton projects hearable and visible to AI models by implementing the Model Context Protocol (MCP) and exporting detailed project data.
What can it do?
Connect Ableton Live directly to MCP-capable AI clients (like Claude Desktop, Cursor, or Cline). The AI can inspect, analyze, and even modify your project in real-time.
Included Tools:
get_overview: SESSION DISCOVERY. Provides tempo, locators, and a list of all tracks with their current mixer state (volume, panning, etc.).get_track: TRACK INSPECTION. Comprehensive data for a single track: metadata, complete device chain, and all device parameters (with UI-readable strings).get_tracks: BULK TRACK INSPECTION. Query full data for a range of tracks in a single parallelized call.analyze_stems: DEEP AUDIO ANALYSIS. Triggers generation of audio summaries (.summary.json) and spectrograms (.spectrogram.webp) for all tracks.set_track_volume/set_track_panning: MIXER CONTROL. Remotely adjust track faders and panning.set_device_parameter: REMOTE CONTROL. Precisely adjust any parameter of any device in the project.
Included Resources:
ableton://stems/{track_name}/summary: AUDIO SUMMARY. Compact analysis (JSON) containing LUFS, Peak, RMS, 10ms-frames, detected transients, and alegendfield.ableton://stems/{track_name}/spectrogram: VISUAL ANALYSIS. Log-frequency spectrogram image (WebP) for visual frequency inspection.ableton://stems/available/summaries: Discovery resource for all tracks with available audio summaries.ableton://stems/available/spectrograms: Discovery resource for all tracks with available spectrograms.
How do I get started?
1. Prepare your environment
Install AbletonOSC
This project relies on AbletonOSC to communicate with Ableton Live.
- Download and install AbletonOSC.
- Follow the instructions there to add it as a Control Surface in Ableton Live's Link/Tempo/MIDI settings.
Install ableton-for-ai
Option A: uv (Recommended)
uv lets you run the server directly without installing anything globally:
Option B: pip
Requires Python 3.11+ (python.org or brew install python):
2. Connect to your Chatbot (MCP Client)
Add the server to your MCP client configuration (e.g. Claude Desktop, Cursor, or Cline).
Via uvx (if you installed uv)
Via pip (if you installed with pip)
[!NOTE]
STEMS_SOURCE_DIRmust point to the folder where your exported audio stems are located. You need to export stems manually from Ableton Live (e.g. via "Export Audio/Video" with individual tracks selected), as there is currently no OSC API for triggering exports. The audio analysis tools (analyze_stems) will look for files in this directory.
Where to put this config
- Claude Desktop (macOS):
~/Library/Application Support/Claude/claude_desktop_config.json - Claude Desktop (Windows):
%APPDATA%\Claude\claude_desktop_config.json - Cursor / Cline: See their respective MCP documentation.
Restart your MCP client after saving the config.
3. Use it
Once connected, you can ask the AI about your project state. The AI will use the included tools and resources to fetch data directly from Ableton.
For audio analysis: Export your stems from Ableton Live first (e.g. via File → Export Audio/Video with individual tracks selected) into your configured STEMS_SOURCE_DIR. This step must be done manually, as there is no API for triggering exports.
For complex tasks (e.g. mix feedback): Give the chatbot context about your project. A good starting prompt includes genre, goal, and where your exported stems start (beat or locator). See agent-templates/mix-engineer.md for a ready-to-use prompt template.
Example prompts:
- "What is the current tempo and how many tracks do I have?"
- "Check the EQ settings on my Lead Synth track."
- "Show me an overview of the mixer state."
- "Analyze the stems and tell me if there are any frequency clashes."
- "Show me the spectrogram for the 'Kick' track."
⚙️ Configuration
You can customize the server behavior by setting environment variables or editing config.py (when running from source).
🔌 Using Custom VSTs / Plugins
1. Register the Plugin Name
In config.py, add the exact name of the plugin as it appears in Ableton to RELEVANT_DEVICE_NAMES.
2. Auto-Populate Parameters (The Options.txt Trick)
By default, Ableton Live only exposes the parameters of a third-party plugin, if the overall parameter number threshold (_PluginAutoPopulateThreshold) is below 64 ( default), see here. You can change this to 128 and hope that your favorite custom VSTs will be exposed. If they are still not exposed, because there are too many (e.g. Fab Filter Pro Q 4), you have to configure the parameters within ableton.
Force Ableton to automatically expose parameters by adding -_PluginAutoPopulateThreshold=128 to your Options.txt:
- Mac:
~/Library/Preferences/Ableton/Live [Version]/Options.txt - Windows:
%AppData%\Ableton\Live [Version]\Preferences\Options.txt
Mac Terminal Commands
To quickly set this up on a Mac, you can use these commands (replace [Version] with your actual Live version, e.g., 12.3.6):
OR open the file in a text editor and add the setting manually, e.g.
📂 CLI: Analyze & Upload (No MCP required)
This method is ideal for LLMs that don't support MCP directly (like ChatGPT or the Claude Web Interface). It runs the same analysis pipeline locally and exports the results as files you can upload to any chatbot.
Available Commands
Full audio analysis (summaries + spectrograms + full analysis JSONs):
Extract Ableton project metadata only (tracks, devices, parameters):
Full pipeline (audio analysis AND project data extraction):
[!NOTE] The OSC daemon starts automatically — no need to launch it manually.
Output
The results will be stored in the ./out directory, organized into subfolders:
./out/project/: Contains the Ableton project JSON file../out/summaries/: Contains compressed audio analysis JSONs (optimized for AI)../out/spectrograms/: Contains spectrogram WebP images for each stem../out/analyses/: Contains full high-resolution analysis JSONs.
Mixing with AI (Manual Upload)
- Export your stems from Ableton into your
STEMS_SOURCE_DIR. - Run
ableton-for-ai-cli analyze_stemsto generate analysis files. - Drag and drop the files from your
outfolder into the chatbot (spectrograms.webp+ analysis.json). - Use a prompt like this:
🛠️ Development & Contributing
Local Setup (from source)
Run the MCP server from source:
Run CLI commands from source:
MCP Inspector (Debugging)
The MCP Inspector is useful for testing and debugging the MCP server during development.
Start it directly via terminal:
Or start the Inspector without presets and configure it manually:
Then enter the following in the Inspector UI:
- Command:
uv - Arguments:
--directory /absolute/path/to/ableton-for-ai run mcp_server_ableton.py
Linting & Formatting
Publishing to MCP Registry
To publish a new version to the official MCP Registry:
Verify the publication:
Make sure to update the version in both server.json and pyproject.toml before publishing.
⚠️ Known Limitations & Troubleshooting
Automation Tracking
- Not Supported: Automation data is not included in the exports.
- Technical Reason: The underlying
AbletonOSCscript does not reliably expose automation status or points in its current version.
📄 License
This project is licensed under the MIT License.
來源:README.md,提交 73ab160
工具
0版本歷史
1- v0.1.2最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分