mcpField
M
mlua-swarm

mlua-swarm

Local
github.com/ynishiAI & Agents1Updated 2w ago

About mlua-swarm

mlua-swarm is a long-running engine that compiles flow.ir Blueprints and dispatches agent steps to multiple backends. It is for running Blueprint workflows, recording task state, and coordinating in-process Lua, Rust functions, child processes, or interactive Operators.

Key features

  1. 01Compile flow.ir Blueprints
  2. 02Run step, branch, loop, and fanout flows
  3. 03Dispatch agent steps to multiple backends
  4. 04Record task state
  5. 05Provide HTTP, WebSocket, and Blueprint storage

Use cases

  1. 01Run Blueprints with branching and loops
  2. 02Assign workflow steps to Lua or Rust backends
  3. 03Execute agent steps through processes or Operators

MCP support

`mse mcp` provides a stdio MCP adapter, including `swarm_run` for one-shot Blueprint execution, `bp_schema`, and documentation and sample resources.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"ynishi-mlua-swarm": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/ynishi/mse:0.32.1"
]
}
}
}
Run commanddocker run -i --rm ghcr.io/ynishi/mse:0.32.1

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
ocighcr.io/ynishi/mse:0.32.1

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

mlua-swarm

A long-running swarm engine host that compiles flow.ir Blueprints and dispatches their agent steps to workers. A Blueprint declares a flow (step / seq / branch / loop / fanout / try / let nodes) plus the agents it references; the engine resolves each agent to a backend (in-process Lua, a Rust function, a child process, or an interactive Operator) and drives the flow while recording task state.

Install

cargo install mlua-swarm-cli

This installs the mse binary with two subcommands:

mse serve   # HTTP + WS server (tasks, Blueprint store, WS Operator sessions)
mse mcp     # MCP adapter over stdio, for AI agents (Claude Code etc.)

One-shot Blueprint execution is available through the swarm_run MCP tool (exposed by mse mcp), which runs through the canonical TaskApplication.handle / TaskLaunchService::launch path.

MCP client config:

{ "command": "mse", "args": ["mcp"] }
Docker (no Rust toolchain required)

Also listed on the MCP Registry as io.github.ynishi/mlua-swarm:

{
  "mcpServers": {
    "mlua-swarm": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "ghcr.io/ynishi/mse:latest",
        "mcp"
      ]
    }
  }
}

Documentation

Documentation is served from the code itself:

  • API / architecture — rustdoc on docs.rs (the crate root doc is the architecture overview).
  • Guides / samples / schema — bundled MCP resources under mse://, served by mse mcp and always version-matched to the binary: mse://guides/getting-started, mse://guides/bp-lifecycle (the develop → trial-run → operate workflow map), mse://guides/blueprint-authoring, mse://guides/mcp-tool-reference, mse://blueprints/samples/*, and the live Blueprint JSON Schema at mse://api/blueprint-schema (also available as the bp_schema tool).

Workspace crates

craterole
mlua-swarmengine core (workspace root package)
mlua-swarm-schemaBlueprint schema types
mlua-swarm-serverHTTP + WS server library
mlua-swarm-clithe mse binary

License

Licensed under either of Apache License 2.0 or MIT License at your option.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.