Ableton/Live/Report/26/09/Open-source options for controlling Live 11 from coding agents
Properties
- date-created
- 2026-09-26 Sat
Open-source options for controlling Ableton Live 11 from Codex, Claude Code, and other agents
Bottom line
- As of September 26, 2026, I found no official Ableton MCP server, CLI, or external agent API for Live 11, and no company-backed equivalent from Anthropic, OpenAI, or another major software vendor. Ableton does officially document two relevant integration mechanisms, but only one is a real public API for Live 11:
- Max for Live's Live API / Live Object Model is an official, documented way for Max devices to query objects, set properties, invoke functions, and observe changes in Live. It is exposed through
live.object,live.path,live.observer, and the JavaScriptLiveAPIobject. [1] - MIDI Remote Scripts / Control Surfaces are officially supported as things users can install and select in Live, but Ableton's public documentation is essentially installation documentation, not a supported Python SDK. Projects built this way import Live's embedded Python modules such as Live,
_Framework, andableton.v2.control_surfacedirectly—the same general machinery used by hardware control surfaces. [2] - The new Ableton Extensions SDK is not an answer for Live 11: Ableton says Extensions were introduced with Live 12.4.5 and its SDK is aimed at Live 12 Suite Beta 12.4.5 or later. [3]
- My shortlist:
- Producer Pal — Live 11 via Max for Live
LiveAPI, Node for Max, MCP, and REST. Best documented API architecture and strongest professional provenance; its unauthenticated port 3350 listens on all interfaces. [4] - wstierhout/ableton-live-mcp — Live 11 compatible Remote Script, loopback TCP, and typed stdio MCP. Strongest default network posture, with a short project history. [5]
- ahujasid/ableton-mcp — Live 10+ Remote Script with loopback TCP and MCP. Largest agent-specific adoption; anonymous telemetry is enabled by default. [6]
- AbletonOSC and PyLive — Live 11+ Remote Script, OSC, Python API, and CLI. Mature base for a small custom interface; default OSC listener exposes control to the LAN. [7]
- ableton-live-mcp-server — MCP and OSC wrapper around AbletonOSC, inheriting its unauthenticated UDP listener. [8]
- ableton-mcp-extended — Live 11+ Remote Script over TCP/UDP and MCP; larger interface and less established creator provenance. [9]
- AbletonBridge — Live 10/11/12 Remote Script and optional Max for Live bridge; expansive tool surface. [10]
- bschoepke/ableton-live-mcp — arbitrary Python execution in Live and documented testing on Live 12; Live 11 compatibility was not sufficiently verified. [11]
- Producer Pal — Live 11 via Max for Live
- These security grades are the report’s threat-model assessment, not security audits. They weigh network exposure, arbitrary-code execution, telemetry, supply-chain hygiene, tool scope, transparency, and provenance.
- The most important distinction is that “uses the official Live Object Model” does not by itself mean “uses an official integration API.” Producer Pal reaches the LOM through Ableton's documented Max for Live API. Most of the other projects reach roughly the same world of Live objects through the embedded Python Control Surface machinery. Ableton supports installing those scripts, but the Python modules they consume are not presented by Ableton as a public application-development SDK. AbletonOSC makes the distinction unusually visible in source: it subclasses
ableton.v2.control_surface.ControlSurface, imports_Framework.EncoderElement, and imports Live directly. [12]- My Side-Note this phrase now appears in my negative AI style guide for writing.
What the Live 11 integration landscape actually looks like
- For Live 11, there are effectively three architectural strategies.
- Max for Live
LiveAPIis the cleanest supported programmatic substrate. Ableton's documentation explicitly describes the Live API as access to the Live Object Model and supports property access, function calls, observation, and device-parameter control. JavaScript in Max gets aLiveAPIobject, while Max patchers can uselive.path,live.object, andlive.observer. [1] A project can therefore put a Max device into the set, use Max's JavaScript or Node-for-Max facilities as a bridge, and expose an external HTTP/MCP interface. producer-pal is the notable open-source implementation of this architecture. [4] - Remote Scripts are the pragmatic but unsupported-at-the-API-level alternative. Ableton explicitly tells users how to install third-party Remote Scripts into the User Library and select them as a Control Surface. [2] The scripts can execute Python inside Live and interact with Live's internal object model. This is very powerful, and hardware-control-surface implementations have depended on it for years, but it creates exactly the engineering problem you alluded to with devices such as the Launchpad: projects are coupling themselves to Python modules and behaviors that are not documented by Ableton as a stable general-purpose SDK. AbletonOSC's source is representative:
ControlSurface,_Framework, and Live are imported directly. [12] - The practical consequence is that Live-version compatibility is empirical. Wouter Stierhout's project is a good example: its September 17, 2026 release had to handle a Live-11-specific difference involving the embedded Python 3.7 environment and
socket.timeout. That is precisely the sort of compatibility edge one expects when building against the Remote Script runtime rather than a conventional supported external SDK. [16] - OSC/MIDI layers can hide that coupling rather than remove it. AbletonOSC gives external programs a pleasant OSC interface and PyLive wraps that from Python, but AbletonOSC itself is still a MIDI Remote Script operating inside Live. Its README says its goal is to expose the Live Object Model through OSC, and explicitly requires Live 11 or later. [7] This is nevertheless useful architectural separation: an agent can be restricted to sending defined OSC messages instead of receiving a generic Python-evaluation primitive.
- That last distinction matters enormously for agent safety. A coding agent such as Claude Code or Codex already has substantial authority on the host, depending on how you configure its sandbox and approvals. Giving that agent 100–300 narrowly typed Ableton mutations increases its authority over the DAW; giving it an eval endpoint inside the Live process introduces an additional general-purpose code-execution boundary.
Comparison of the viable offerings
- producer-pal is the standout because it is not another Remote Script clone. Its Max for Live device hosts a bridge built around Node for Max and Max's JavaScript/ v8 side, which then accesses the documented Live API. The project exposes both MCP and a REST API, so a coding agent does not even need MCP if it can issue ordinary local HTTP requests. The project is GPL-3.0 and explicitly positions itself as free/open-source with no subscription or paywall. [18]
- Its repository also looks substantially more like maintained software than a weekend MCP wrapper: source, Max device, examples, documentation, web UI, developer/contribution documentation, a security policy, lockfiles, and release machinery are all present. [19] The author, Person/Adam Murray, publicly describes himself as a software engineer with more than 20 years of full-stack experience, lists Playlab on his GitHub profile, and has multiple Ableton/music-software projects. That is the strongest creator-maturity signal I found among the Live-11-specific agent integrations. [20]
- Producer Pal's security work is unusually serious for this niche. Its security document states that released tools are scoped to Live rather than arbitrary filesystem/process operations; a generated-JavaScript execution facility exists in development source but is removed from release builds; release checks block dangerous flags;
child_process, eval, andnew Functionare lint-blocked in shipped code; dependencies are pinned; a release cooldown is used; GitHub Actions are pinned to commit hashes; Dependabot and CodeQL are used; and signed commits/tags are the normal release practice starting with the 2.x line. [21] - But there is a surprisingly important counterweight: Producer Pal's local server is unauthenticated and, by the project's own security documentation, listens on port 3350 on all network interfaces rather than loopback only. The author explicitly calls this a known limitation and frames the threat model as a trusted local environment rather than an adversarial one. [21] That means I would trust the software-development process more than most competitors while simultaneously disliking its default network boundary. On a laptop connected to an untrusted Wi-Fi or a home LAN containing less-trusted IoT devices, that matters.
- My Note particularly sketchy in the case of performances in public venues!
- wstierhout/ableton-live-mcp is almost the inverse tradeoff. It is new—its GitHub history showed only about 20 commits when inspected—and its GitHub adoption is tiny compared with ahujasid or AbletonOSC. [5] But the implementation makes a number of security-conscious choices I would have made myself: 156 specific tools with validated arguments, no generic arbitrary-code tool, a Remote Script bound to
127.0.0.1:9877, an explicit security document acknowledging that the socket has no authentication, a version handshake between MCP package and Live-side script, an installer that refuses unexpected replacement without an explicit flag and retains backups, a doctor command, tests, linting, and multi-version CI. [5]- My Question
security document acknowledging that the socket has no authentication
- TODO What does it actually mean for a Socket to have Authentication? Ghost Gardener please add a Logseq/Entity/Question for this.
- My Question
- It is also one of the projects with particularly clear Codex/Claude Code ergonomics: its documentation gives pinned commands such as
uvx mcp-server-ableton-live@1.8.1, including directcodex mcp addandclaude mcp addexamples. Pinning the package version in the recommended install is a small but meaningful supply-chain improvement over documentation that simply executes whatever the current package version happens to be. [5] Version 1.8.1, released September 17, 2026, specifically addressed a Live 11 embedded-Python compatibility issue, which is stronger evidence than a generic “Live 11 supported” badge. [16] - The creator, Wouter Stierhout, has a comparatively sparse GitHub footprint; public professional search results associate him with Hypersolid, but I found no evidence that Hypersolid publishes, supports, or endorses this project. [24] I therefore regard the project as an individual developer's new open-source project, not a company-supported product. The abletonmcp.com marketing page is more confident than the project’s age warrants; the repository is a stronger trust signal. The phrase about there being no repository to clone appears to be trying to say that users can install the PyPI package with uvx, not that no source repository exists. The underlying design really is local: stdio MCP → loopback TCP → Live Remote Script. [25]
- ahujasid/ableton-mcp is the adoption leader among the purpose-built MCPs I found. The inspected repository had roughly 3,100 stars, hundreds of forks, dozens of commits, active issues and pull requests, and straightforward support for Claude Code through
uvx ableton-mcp. Its README says Live 10 or newer, so Live 11 is squarely in scope. [6] Architecturally it is the classic approach: an MCP server talks over JSON/TCP to a Python MIDI Remote Script running as a Live Control Surface. [6] - The current Remote Script has a good network default: its source explicitly sets HOST to 127.0.0.1, warns in comments that the socket accepts unauthenticated DAW-control commands, and requires an explicit
ABLETON_MCP_HOSToverride to widen the listener. [27] That is a meaningful positive signal because it shows the maintainer has thought about the LAN threat rather than merely happening to use localhost. - Its biggest privacy caveat is telemetry. Anonymous usage telemetry is enabled by default and includes an installation identifier, per-run identifier, tool invocations, success/failure, and duration. The project says it does not include prompts, MIDI, clip/track names, or device settings. A separate dataset-recording feature can collect prompts, MIDI, names, and settings for a potential open training dataset, but that feature is off by default and requires opt-in. The project documents
ABLETON_MCP_DISABLE_TELEMETRY=trueto disable the former as well. [6] On a security/privacy-sensitive workstation, I would set that flag before first use. - The creator, Siddharth Ahuja, has much stronger open-source credibility than a raw GitHub-profile count might suggest: his GitHub profile is centered on open-source AI integrations for creative software, and his Blender MCP project has accumulated very large adoption in addition to the Ableton project. [29] I did not find strong enough evidence to assert a current employer or company backing, so I would classify his provenance as established independent open-source developer, rather than “engineer at a known company.”
- AbletonOSC + PyLive deserves special treatment because it predates the agent/MCP rush and is arguably the most credible underlying open-source API stack. AbletonOSC has hundreds of commits and substantial community adoption, explicitly supports Live 11+, and exposes a broad Live Object Model-like surface over OSC. It even includes a simple
run-console.pyinteractive CLI, so an agentic coding tool capable of operating a terminal can drive Live without MCP at all. [7] PyLive provides a higher-level standalone Python interface on top of AbletonOSC and similarly targets Live 11+. [31] - For someone comfortable writing a thin adapter, this is attractive: instead of trusting 150–350 MCP tools and all their glue, you could give Codex/Claude Code a small Python package or a deliberately tiny MCP server implementing only the operations you need. The underlying creator, Daniel Jones / ideoforms, has a long public creative-technology/open-source history, dozens of GitHub repositories, and describes himself as an artist-researcher and technologist; both AbletonOSC and PyLive are established rather than AI-boom projects. [32]
- Unfortunately, AbletonOSC has the clearest network-security defect I found in a mature project. The actual server constructor defaults to
local_addr = ('0.0.0.0', OSC_LISTEN_PORT), and its own source explains that this listens on every available local IPv4 interface. The UDP socket is then bound directly to that address. [33] There is no authentication layer in the OSC protocol shown here. Because AbletonOSC provides mutating operations—track creation, parameter changes, playback, clip manipulation, and more—that means another machine able to reach UDP 11000 can potentially control the running Live instance. The README's statement that it “listens on port 11000” understates this important distinction. [7] - For my own system I would not run stock AbletonOSC on an untrusted network. I would change the listener to 127.0.0.1, firewall UDP 11000, or put it inside an OS-level networking sandbox. With that modification, AbletonOSC/PyLive becomes one of the options I like most because its conceptual surface is simple and mature.
- Simon Kansara's ableton-live-mcp-server essentially turns AbletonOSC into an MCP stack. It uses an MCP server plus an OSC-facing daemon and requires AbletonOSC; the MCP-facing components default to localhost. Its repository had meaningful community interest but only around 18 commits when inspected, so much of its real maturity comes from the older AbletonOSC layer below it rather than from the MCP wrapper itself. [8] The security trap is that putting a localhost MCP server in front does not fix AbletonOSC's own
0.0.0.0:11000/UDPbinding. [33] I found no comparably strong professional-maintainer provenance for this wrapper, so I would choose it for convenience, not because it improves the trust story. - uisato/ableton-mcp-extended explicitly advertises Live 11+ and adds significantly more functionality around the same general Remote Script/socket design, including optional higher-performance UDP communication. The inspected project had nontrivial adoption, but its creator's public GitHub footprint is essentially centered on this project and I found no established-company affiliation comparable to the stronger examples above. [9] Its optional ElevenLabs integration is outside the “free-only” criterion when it requires a paid external service, so I would evaluate only the core Ableton integration. More network transports and more tools are not inherently insecure, but they enlarge the amount of code and protocol surface one has to audit. Given that ahujasid and Wouter already cover this architecture with stronger security signals, I see little security-driven reason to prefer the extended version.
- AbletonBridge is the technically most expansive community project I found. Its current README describes 359 tools, with roughly 340 core tools, a Control Surface Remote Script over TCP/UDP, an optional Max for Live bridge for deeper access, an HTTP status dashboard, and explicit Live 10/11/12 fallbacks. It also claims 214 tests and documents measures such as input validation, size limits, concurrency controls, hard tool timeouts, bounded worker pools, and chunked communications. [10] Those are better engineering signals than the project's modest GitHub popularity might suggest.
- On the other hand, this is an enormous authority surface. Its architecture includes TCP 9877, UDP 9882, optional OSC/UDP 9878/9879, and a web dashboard; the README explicitly shows the dashboard on 127.0.0.1, but in the material I inspected I did not find an equivalent security statement establishing authentication or loopback-only defaults for every Remote Script transport. [10] The creator's own GitHub profile says they would like to work for Ableton or Anthropic, which is useful evidence that this is not an Ableton- or Anthropic-affiliated project. [38] I would call it an impressive experimental project, not a trust-minimized production choice.
- Finally, Ben Schoepke's ableton-live-mcp is worth knowing about precisely because its design illustrates what I would not expose to an autonomous coding agent on an important machine. The project's README explicitly says the agent can evaluate arbitrary Python running inside Ableton, while also providing optimized tools for common operations. [11] That gives it extraordinary flexibility but largely destroys capability isolation: instead of “the agent may create a clip and set a parameter,” the primitive is effectively “the agent may execute Python in the DAW's embedded interpreter.” The author also warns users to back up sets, and the version I examined documented testing on Live 12 rather than Live 11, so I do not count it as a verified Live-11 option. [11]
- Interestingly, Schoepke has one of the better corporate-engineering provenance signals: in a public Swift discussion he previously identified himself as a UI developer on Microsoft's Windows team. I could not verify that as his current employment in 2026, so it should be treated as historical professional evidence rather than a current Microsoft affiliation. [41] This is a useful reminder that creator pedigree and security architecture are separate axes: I would still reject arbitrary in-Live eval for a production agent integration.
Security and provenance findings
- The most surprising result is that the projects with the best security stories are not necessarily the projects using the “most official” Ableton interface.
- Producer Pal has the most mature security-development story. Its maintainer has published a real threat model, disabled dangerous execution paths in release builds, uses dependency and CI hardening, documents data flows, supports private vulnerability reporting, and explicitly acknowledges known limitations. [21] Yet its all-interface unauthenticated port 3350 means its network default is weaker than Wouter's or the current ahujasid Remote Script. [21] I would not conflate “excellent security process” with “safe defaults.”
- Wouter Stierhout's project has the best default capability/network combination I found. It exposes explicitly typed operations rather than Python eval, validates inputs, binds the Live-side socket to loopback, documents the lack of authentication, supplies pinned package invocation examples, backs up replaced scripts, maintains a server/Remote-Script version handshake, and runs tests and linting in CI. [5] The reason I stop short of calling it the overall safest choice is maturity: roughly 20 commits and a tiny user population cannot tell you as much about weird edge cases as years of use can. [5]
- ahujasid has the strongest crowd signal among direct MCPs. Thousands of GitHub stars do not prove security, but the combination of substantial adoption, active contribution, another highly successful creative-software MCP, explicit loopback binding, protocol size limits, and comments documenting the threat of widening the listener is meaningful. [6] Its default telemetry is the reason I would harden the configuration before use. [6]
- AbletonOSC has the strongest age/community-maturity signal but the weakest surprising default among the mature options. Nearly 300 commits, extensive API coverage, and a long creative-coding lineage make it much less “random AI-generated GitHub project” than most MCPs. [7] But the
0.0.0.0unauthenticated UDP endpoint is unambiguous in source. [33] This is exactly the kind of thing I would catch before granting an agent access to it. - There is also an important supply-chain distinction between cloning source and running package managers as an agent integration. uvx is convenient, but an MCP configuration becomes an implicit executable dependency. Wouter's examples pin mcp-server-ableton-live@1.8.1, whereas ahujasid's quickstart uses unversioned
uvx ableton-mcp. [5] For a workstation that matters, I would pin exact versions or Git commit hashes, review the corresponding source, and upgrade deliberately rather than allowing each launch to resolve an uncontrolled newer release. That is my recommendation based on the documented invocation patterns, not a claim that either package has experienced a compromise. - The same goes for cloud versus local agents. A local Codex CLI/IDE or Claude Code process can reach loopback directly. Wouter's documentation explicitly notes that cloud execution cannot simply reach Live's loopback bridge. [47] The right answer is usually to keep the DAW-control plane local, not to expose an unauthenticated DAW port or casually create a public tunnel. Producer Pal itself warns that tunnel URLs should be treated as secrets. [21]
- For an AI agent, I would prioritize capability-limited tools over a generic interpreter even though Codex or Claude Code can themselves execute shell commands. These are different trust boundaries. A coding agent's host execution can be controlled with sandboxing and approval policies; an unrestricted eval endpoint inside Ableton places the Live process, Live's embedded runtime, and whatever that runtime can reach directly behind a model-selected tool call. Schoepke's explicit arbitrary-Python design therefore carries qualitatively more risk than the typed-tool approach used by Wouter and ahujasid. [11]
Creator provenance
- Adam Murray (Producer Pal): 20+ years of software engineering; high professional maturity. [20]
- Daniel Jones / ideoforms (AbletonOSC and PyLive): longstanding creative technology work and mature repositories; high domain and open-source maturity. [32]
- Siddharth Ahuja (ableton-mcp): established creative-AI open-source developer; company affiliation unverified. [29]
- Wouter Stierhout (ableton-live-mcp): professional profile associated with Hypersolid; very young project. [24]
- Ben Schoepke (ableton-live-mcp): historical Microsoft Windows UI role; strong historical professional evidence, but high-risk bridge architecture. [41]
- Simon Kansara: some project adoption and less independent professional provenance. [50]
- UISATO: creative technology profile with a limited broader GitHub record. [51]
- hidingwill: small public developer footprint and no claimed Ableton or Anthropic affiliation. [38]
- I found no evidence that any of these MCP projects is maintained or endorsed by Ableton itself. Wouter explicitly states that his project is independent and unaffiliated; ahujasid likewise labels his integration third-party; AbletonOSC is a community Remote Script. [5] Producer Pal is a personal open-source project by an experienced professional engineer, not an Ableton product. [19]
- So, to the question “is there one from an established organization?” the answer is essentially no. To “is there one from an established software engineer?” the answer is yes, most clearly Producer Pal, plus some professional evidence for Wouter Stierhout and historical Microsoft evidence for Ben Schoepke. The most established software lineage is probably AbletonOSC/PyLive rather than any MCP-native project.
Recommended shortlist
- For Live 11 + an agentic coding tool + security sensitivity, I would narrow the landscape to four approaches.
- Best overall architecture if Max for Live is available: Producer Pal. It is the only strong candidate I found that stays on Ableton's documented Max for Live API path rather than reaching into the Control Surface Python runtime. Its creator provenance, security documentation, release hygiene, MCP support, and REST API are all unusually good. [1] I would, however, treat the default
0.0.0.0-equivalent network exposure on port 3350 as something to mitigate immediately with a host firewall or other local-network isolation. The project's own security policy acknowledges that it is unauthenticated and LAN-reachable. [21] With that mitigated, this is my preferred option. - Best out-of-the-box network posture without Max for Live: wstierhout/ableton-live-mcp. It is the one I would test first with Codex CLI or Claude Code on a security-conscious workstation: loopback-only socket, no arbitrary Python tool, explicit security documentation, pinned installation examples, version-matched Live bridge, safe-ish installer behavior, and actual Live-11-specific compatibility work. [55] The price is novelty. I would review the source and pin a known commit/version rather than assigning it the trust normally earned by years of deployment.
- Best mature ready-made MCP ecosystem: ahujasid/ableton-mcp. It has vastly more adoption than Wouter's project and a creator with a demonstrated record of successful creative-application MCPs. [6] Its current loopback binding is good. [27] I would launch it with telemetry explicitly disabled and pin the package version rather than use the bare
uvx ableton-mcpexample. [6] - Best option for building your own minimal interface: AbletonOSC/PyLive, after fixing network exposure. For an AI architect, this may actually be the most appealing long-term design. AbletonOSC is older, smaller conceptually, Live-11-native, well understood, and already has both a programmatic OSC API and interactive console. [7] Put it on loopback instead of its default
0.0.0.0, expose only a dozen commands through a tiny local stdio MCP server or CLI, and you have a much smaller reviewable trusted-computing base than a 300-tool agent framework. The stock wildcard bind is the part I would not accept. [33] - I would not make AbletonBridge or ableton-mcp-extended my first trust-sensitive choice despite their capabilities; both add a lot of code and interface surface without a corresponding improvement in maintainer provenance or security documentation over the top three. [10] I would also exclude bschoepke's arbitrary-eval bridge from a security-conscious deployment and from the verified-Live-11 shortlist, notwithstanding the author's credible professional background. [11]
- The broader conclusion is encouraging: Live 11 is not stranded for agentic control, but the strongest choices are community bridges rather than supported external automation APIs. If minimizing dependence on Ableton's private Python internals matters most, Producer Pal is in a class by itself because it builds on the documented Max for Live API. If minimizing network and arbitrary-code exposure matters most, Wouter's typed loopback MCP currently has the cleanest default design, albeit with very little age behind it. If longevity and auditability matter most, AbletonOSC/PyLive plus a small custom, loopback-only agent adapter is arguably the most conservative engineering foundation—provided you correct AbletonOSC's unsafe wildcard listener first. [1]
Footnotes
[1] https://help.ableton.com/hc/en-us/articles/5402681764242-Controlling-Live-using-Max-for-Live
[2] https://help.ableton.com/hc/en-us/articles/209072009-Installing-third-party-remote-scripts
[8] https://github.com/Simon-Kansara/ableton-live-mcp-server
[12] https://github.com/ideoforms/AbletonOSC/blob/master/manager.py
[16] https://github.com/wstierhout/ableton-live-mcp/releases
[21] https://github.com/adamjmurray/producer-pal/blob/main/SECURITY.md
[25] https://abletonmcp.com/why-abletonmcp/?utm_source=chatgpt.com
[27] https://github.com/ahujasid/ableton-mcp/blob/main/AbletonMCP_Remote_Script/__init__.py
[33] https://github.com/ideoforms/AbletonOSC/blob/master/abletonosc/osc_server.py
[47] https://abletonmcp.com/docs/codex/?utm_source=chatgpt.com
[55] https://github.com/wstierhout/ableton-live-mcp/blob/main/SECURITY.md