Skip to content
Sponsor

A graph is a server

In most node editors you build a graph and press Run: it works through once and stops. A Boltjar graph is closer to a small server. You turn it On, and it stays up, waiting: a chat message, a webhook call, the next minute on a schedule. Each one starts a turn, the turn runs the nodes it reaches, and the graph goes back to waiting.

That is why the main control is On, Off and Restart rather than Run (On, Off and Restart covers the details).

  • Always-on systems from nodes. A chat assistant, an endpoint, a job at 9 every morning, a poller that reacts to changes: each is a graph that stays On.
  • Several entry points in one graph. One graph can have a Chat Input, a Webhook and a Schedule side by side, sharing the same model, prompt and stores.
  • The browser is only a window. The graph runs in the Boltjar server. Close the tab and it keeps going; open the editor again to watch it live.
  • Memory where you choose it. Nodes that keep something between turns say so: a Meter level, the last value a Changed node saw. That lasts while the graph is On. For what must outlast a restart, wire a store: Database, KV Store, Vector Store or files.

A graph that is On can be reached from other programs on your machine:

Route What it does
POST /hook/<graph>/<path> fires a Webhook node; the route other services call
POST /api/runtime/<graph>/chat sends a message into a Chat Input node
POST /api/runtime/<graph>/fire presses a Manual node’s Fire button
POST /audio/<graph>/<node> sends an audio clip into an Audio Input node

Every route but /hook needs the install token (Authorization: Bearer with the contents of user/data/token). Security explains the checks.

Boltjar also ships an MCP server, so an AI assistant can drive the runtime the way the editor does: read the node catalog, save and validate graphs, turn them On and Off, send chat messages and watch the events. It runs next to a Boltjar server and reads the same token. Register it with your MCP client as python -m boltjar.mcp_server, run with the Boltjar .venv Python from the Boltjar folder.