mel is built agents-first: an AI agent with shell access can create canvases and run generations without any human in the loop. Three properties make it reliable to automate.
- JSON on stdout, always. Success is structured JSON; there are no prompts, spinners, or color codes to parse around.
- Deterministic exit codes. Branch on the exit code alone —
0success,3auth,4timeout — without reading text. - Structured errors with fixes. Every error is JSON on stderr with a
codeand asuggestionnaming the command to recover.
Headless authentication
Set the key as an environment variable — nothing is written to disk and nomel auth login step is needed:
MEL_TEAM_ID — your role is scoped per team, just like the app. In a sandbox, allow network egress to api.melius.com (or *.melius.com).
Parsing output
Capture ids with--fields <field> --text, or pipe full JSON through jq:
Branching on exit codes
CLI or MCP?
Both let an agent drive Melius, over the same backend and API keys — choose by how your agent runs:| Use the… | When your agent… |
|---|---|
CLI (mel) | Has shell access — a coding agent, a CI job, or a sandbox with a terminal. It chains commands and parses JSON. |
| MCP server | Runs in a chat client that speaks MCP (Claude Desktop, Claude Code) and calls tools directly, with no shell. |
mel is usually the simplest path — one install, MEL_API_KEY, and it’s driving the canvas.
Next steps
Command reference
Every command, flag, exit code, and error shape.
MCP server
Connect a chat-based agent over the Model Context Protocol.