Developers → CLI
One static binary for macOS, Linux and Windows. Manage DNS, SSL, domains, app servers and ports from your terminal or your scripts, and connect your AI clients to NameOcean in one command.
$ brew install nameocean/tap/nameocean
$ curl -fsSL https://nameocean.net/install.sh | sh
Windows, or no installer: download the archive for your system from GitHub Releases and check it against checksums.txt. The script checks it for you and installs to /usr/local/bin, or ~/.local/bin when that is not writable.
$ nameocean login $ nameocean account
login opens the browser to approve the CLI (OAuth with PKCE). Tokens are kept in the OS keychain and refreshed automatically; nameocean logout revokes them.
$ export NAMEOCEAN_API_KEY=<API key> $ nameocean dns ls example.com
Get the key from Dashboard → API Key. NAMEOCEAN_API_KEY always wins over saved credentials, and nothing is written to disk.
$ nameocean mcp install
Finds Claude Code, Cursor and OpenCode on your computer and adds the NameOcean MCP server to each. Your existing settings are kept. The client signs in in the browser the first time it uses a NameOcean tool.
| account | Email, credit, domain and zone counts |
| domains ls | Your domains with expiry, auto-renew and lock |
| domains check <domain> [--years N] | Availability and price |
| dns ls [zone] | Your zones, or the records of one zone |
| dns add <zone> <type> <hostname> <value> [--ttl 1h] [--priority N] | Add a record: A, AAAA, CNAME, MX, TXT, SRV, PTR or an HTTP redirect |
| dns rm <zone> <type> <id> | Delete a record |
| ssl status <zone> | Certificate state and expiry |
| ssl issue <zone> [--wait] | Issue a wildcard Let's Encrypt certificate |
| servers ls | Your app servers |
| servers info <server> | SSH, git remote, ports and domains of a server |
| ports ls|open|close <server> <port> [-p udp] | Open and close TCP/UDP ports; the external port is assigned |
| bind <domain> <server> | Serve a domain from a server: DNS, SSL and load balancer |
| unbind <domain> <server> | Stop serving a domain from a server |
| mcp install [--client claude-code,cursor,opencode] | Connect AI clients to the MCP server |
| login | logout | Sign in with the browser or --token; sign out and revoke |
| completion bash|zsh|fish|powershell | Shell completion (Homebrew installs it for you) |
$ nameocean dns add example.com A @ 203.0.113.10 --ttl 5m $ nameocean dns add example.com CNAME www @ $ nameocean dns add example.com MX @ mail.example.com --priority 10 $ nameocean dns add example.com TXT @ "v=spf1 include:_spf.google.com ~all" $ nameocean ssl issue example.com --wait $ nameocean bind example.com 3f9a1c2e $ nameocean servers ls --json | jq '.servers[].default_domain'
Every command takes --json and then prints the API's JSON unchanged; errors come as an error object on stdout. A failed command exits with a non-zero code.
The CLI never spends money. Register and renew domains on nameocean.net or with the REST API.
Release notes are on GitHub Releases; report bugs in Issues. brew upgrade nameocean, or run the install script again, to update.