erl_dist_mcp — Give your AI assistant direct access to your running BEAM nodes
Hey all,
I’ve just released erl_dist_mcp, an MCP server that connects AI assistants directly to your Erlang/BEAM nodes via the distribution protocol. It gives tools like Claude, Cursor, and other MCP-compatible editors the ability to introspect, debug, and trace your running systems.
What it does
It exposes 30+ tools over the Model Context Protocol, including:
- Process inspection — list, search, and inspect processes, top-N by memory/reductions/message queue
- OTP introspection — supervision trees, GenServer state and status, application info
- System monitoring — memory breakdown, scheduler utilisation, ETS tables
- Function tracing — safe tracing via recon (with dbg fallback), with structured output
- Log capture — auto-installs an OTP logger handler to capture and retrieve recent log events
- Code evaluation — sandboxed
eval_codeandrpc_call(opt-in with--allow-eval)
Output is formatted in your language of choice: Elixir, Erlang, Gleam, or LFE.
Why?
I wanted to be able to say things like “connect to my local node and show me which processes are using the most memory” or “trace calls to MyApp.Repo.query/2 and show me what’s happening” — and have the AI actually do it, rather than telling me how to do it myself.
Getting started
cargo install erl_dist_mcp
Or grab a binary from the releases page (Linux, macOS, Windows).
Add it to your Claude Desktop config (or Cursor, Continue.dev, Cline, Claude Code — any MCP client):
{
"mcpServers": {
"erlang": {
"command": "erl_dist_mcp",
"args": ["--mode", "elixir"]
}
}
}
Then just ask your AI to connect:
Connect to my_app@localhost with cookie MYSECRETCOOKIE
The README has full setup and usage docs.
Technical details
It’s written in Rust using the erl_dist crate for the distribution protocol and rmcp for the MCP server. No dependencies on the target node — it connects as a hidden node and uses standard RPC via the rex process.
Apache-2.0 licensed. Feedback and contributions welcome.






















