Add nmbr to Claude Code
The nmbr channel plugin for Claude Code — text your session from your phone and approve its permission prompts on nmbr cards. Also a plain MCP server for other hosts.
Beta @nmbrai/claude-code is new: tested with the MCP client SDK over stdio against a real nmbr server, not yet by many people inside Claude Code itself. Claude Code channels are a research preview: until the plugin is on Anthropic's approved list you load it with --dangerously-load-development-channels. If something breaks, tell us at support@nmbr.ai. Node ≥ 18; no Bun needed.
Text your Claude Code session in 5 minutes
- In the nmbr app: Agents → Yours → Create an agent. Copy the token (shown once).
- In the project you want Claude to work in, add the server to
.mcp.json:{ "mcpServers": { "nmbr": { "command": "npx", "args": ["-y", "@nmbrai/claude-code"] } } } - Save the token and allow yourself (state lives in
~/.claude/channels/nmbr/):mkdir -p ~/.claude/channels/nmbr && chmod 700 ~/.claude/channels/nmbr echo 'NMBR_AGENT_TOKEN=agent:…' > ~/.claude/channels/nmbr/.env && chmod 600 ~/.claude/channels/nmbr/.env echo '{ "dmPolicy": "allowlist", "allowFrom": ["123-456-789"], "pending": {} }' > ~/.claude/channels/nmbr/access.json # your own nmbr - Start Claude Code with the channel loaded (development flag while the plugin is not on the approved list):
Approve the "new MCP server" and development-channel prompts. The startup notice confirmsclaude --dangerously-load-development-channels server:nmbrserver:nmbris registered. - Text your agent from the phone: "what's in my working directory?". Ask it to run the tests; the Bash permission prompt appears as an Approve / Reject card in nmbr — tap it.
When the plugin is listed in a marketplace, /plugin install nmbr@<marketplace> gives you the /nmbr:configure <token> and /nmbr:access allow <nmbr> commands instead of step 3.
What you get
As a channel: messages you send to your agent are pushed into the running session; Claude answers through a reply tool; permission prompts become nmbr cards for every allowed sender — Approve → allow, Reject or expiry → deny, first decision wins (typing yes <id> / no <id> in the chat works too). The terminal dialog stays open as well.
As a plain MCP server (Claude Desktop, Cursor, any MCP host): tools send_message, propose_action, list_conversations, get_messages, whoami. Pull only — nothing wakes a vanilla MCP host on an inbound message; only Claude Code consumes channel events.
Who can reach the session: only people who added the agent as a contact and are in access.json's allowFrom. nmbr authenticates every sender, so there are no pairing codes — an nmbr is the identity. Someone not allowed gets a one-time note and shows up under pending. Allowed senders can approve permissions: allow only people you'd trust at your keyboard.