Developers → CLI

The nameocean 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.

Install

Homebrew (macOS, Linux)
$ brew install nameocean/tap/nameocean
Script (macOS, Linux)
$ 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.

Влезте

Your computer
$ 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.

Servers and CI
$ 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.

Connect your AI

MCP
$ 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.

Commands

accountEmail, credit, domain and zone counts
domains lsYour 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 lsYour 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 | logoutSign in with the browser or --token; sign out and revoke
completion bash|zsh|fish|powershellShell completion (Homebrew installs it for you)

is the server's id or default domain, for example 3f9a1c2e or 3f9a1c2e.nameocean.org.

Examples

nameocean
$ 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'

Scripts and agents

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.

Issues and releases

Release notes are on GitHub Releases; report bugs in Issues. brew upgrade nameocean, or run the install script again, to update.