I haven’t seen much discussion about them in the Julia ecosystem yet. Is anyone already experimenting with or implementing any of these?
I’m asking partly in the context of ManyUI.jl, as some of these protocols seem like they could fit naturally with the idea of defining an application/UI once and exposing it through CLI, TUI, Web, or potentially to AI agents.
I’m preparing the release of BonitoAgents, which comes with its own Julia mcp and also an agent client protocol implementation. It’s also a hybrid between notebook and normal agent chat: agents.bonito.sh
ACP is coming very soon to the Kaimon multiverse! This will allow fine grained control of agents, expanded agent support for open code and other ACP compliant packages, specialist agent roles and tool control, and more.
If any of these other protocols are particularly useful or capable, and generally fit into the “vibe” of my packages, I would definitely consider supporting them. I’m responsive to community feedback and requests, if there’s something you’d like to see, let me know!
Wicked. I prompted asking “Design a Conway’s Game of Life that uses fractals.” What I got wasn’t quite what I had in mind (which is pretty fuzzy, because what does it even mean for two fractals to collide) but turned out to be a 3N dimensional version, where a layer’s substrate influences life, birth, death, infinity. (You are not expected to catch that cultural reference unless you are close to Boomer grandparents.) What impressed was 129 @test statements across 15 testsets.
one distinction that helped me keep these straight: they live at different layers. MCP is tools and data, ACP is editor to agent, A2A is agent to agent, and AG-UI is agent to frontend, basically streaming events into a UI. so for the ManyUI.jl idea you mentioned, AG-UI is probably the most natural fit since thats exactly what its designed for. A2A is just JSON-RPC under the hood so interop from julia is straightforward even without a dedicated client package.
Note that Kaimon v1.9.0 released a few days ago now supports ACP, described here:
Any Julia session attached via the Gate can use this feature to have programmatic control over starting, managing, guiding, and stopping agents. This is being integrated into several new KaimonSlate features which will be released in the near future. The hpc_cluster branch already has some examples of this for anyone wanting to experiment now.
Since this ACP capability is new functionality that I’m starting to leverage, there will likely be additional features and enhancements to it in the coming weeks. Feedback and bug reports are welcome, of course.