Skip to main content

Global flags

Machine-readable output on every command. Use this when scripting.
Never colour the output. The NO_COLOR environment variable does the same.

Exit codes

Every command exits meaningfully, so the CLI is scriptable and works in CI. 1 and 2 are probe’s verdict on your server. Other commands exit 0 on success and 3 on failure; they don’t use 1 or 2. The 1 / 2 split is what makes heymcp probe useful as a CI gate: fail the build on 2, and decide separately whether warnings should block.

Configuration

The CLI stores its token at:
Written with mode 0600. Set HEYMCP_CONFIG_DIR to move it. The token is masked wherever it’s displayed — hm_live_••••••••••••4k2x.

Environment variables

Environment always wins over the config file.
string
Your CLI token. Set this in CI rather than running heymcp login there.
string
The bearer token for heymcp share --bearer. Keeps it out of your shell history.
any
Disables colour, like --no-color.
path
default:"~/.config/heymcp"
Where the config file lives.
url
default:"https://app.heymcp.dev"
The control plane. Only relevant for self-hosted deployments.
url
default:"wss://relay.heymcp.dev/agent"
The relay endpoint. Only relevant for self-hosted deployments.

Specifying a target

share and probe both take a target, and both accept the same shapes: The default path is /mcp unless the target carries one or you pass --path.
A bare hostname defaults to http, and is never silently upgraded. Herd and Valet serve secured sites over HTTPS, so for those you must write the scheme yourself:
Guessing here was deliberately avoided, because a wrong guess produces a confusing timeout rather than a clear error.
Self-signed certificates on those local hosts are accepted deliberately — a local dev certificate is not a security boundary, and refusing it would just mean nobody could share a Herd or Valet site.