CLI

Command line

Sign in, inspect a space and work with assets from a terminal.

The makefx CLI calls the same hosted MCP tools as an MCP client. It is useful for local files, shell scripts and JSON output. It needs Node.js 22.18 or newer, and its source is open at github.com/makefx/cli under the Apache License 2.0.

npm install -g makefx
makefx login
makefx spaces --json

Every public MCP tool has a dedicated shell command unless the reviewed CLI mapping records a product-approved exception. The generic mcp bridge does not count as command coverage. download and open are conveniences that compose the dedicated read commands.

Run makefx --help for the current command list and makefx help create for one command's exact arguments.

A small generation loop

makefx models --kind image --json
makefx estimate --kind image --model MODEL --prompt "PROMPT" --json
makefx create --space ACCOUNT/SPACE --kind image \
  --model MODEL --prompt "PROMPT" --request-id REQUEST --wait --json

Read the model id from models; do not copy one from an old script. Quote the configured request before creating it. Reuse the same request id when recovering an uncertain result. The create command re-reads the requested model's live catalog entry for the paying Space, applies its defaults and refuses invalid model settings or an unavailable current model before it calls create_asset. Exact replay leaves availability to the recorded route.

Filter the catalog with models --family provider|internal|browser, or read one entry with models --model MODEL. List the paying account's speech voices with voices list --space ACCOUNT/SPACE [--query TEXT]; follow the printed --cursor, or add --all to read every page. Repeated create --ref ASSET:SLOT options keep their left-to-right order. Creation also accepts --seed INTEGER, JSON --position, JSON string-array --tags, and --note TEXT. Omit --position to let the canvas lay cards out by lineage; pass a position only to pin a card. asset update --space ACCOUNT/SPACE --asset ASSET --position '{"x":0,"y":0}' pins an existing card, and --position null unpins it so the layout places it again.

Credits, profile and health

makefx purchase create --account ACCOUNT --product eur20 \
  --request-id topup-01 --billing @./billing.json --json
makefx purchase get --purchase PURCHASE --json
makefx profile get --json
makefx profile update --name "Ada Example" --json
makefx health --json

--billing accepts one inline JSON object or @FILE. It is only the existing billing identity contract and does not accept card data or payment tokens.

Files and handoff

upload streams a local file through the signed upload URL without putting its bytes in MCP. download saves ready media. export writes the space record, and open prints and opens the canonical web URL for a space or asset.

makefx upload --space ACCOUNT/SPACE --kind image --file ./reference.png
makefx export --space ACCOUNT/SPACE --out ./space.json
MAKEFX_NO_OPEN=1 makefx open ACCOUNT/SPACE

Add --json when a script needs the unchanged structured result. Use MCP directly when the agent host already supports remote servers.