Skip to main content
The Bota CLI lets you manage end users, devices, recordings, and webhooks directly from your terminal. It also bundles an MCP server so one install covers both human and AI workflows.
npm install -g @bota.dev/cli

Authentication

bota auth login
Opens your browser to the Bota dashboard, where you select a project and click Authorize. The CLI saves a secret API key to ~/.bota/config.json automatically.

Headless / CI

bota auth login sk_live_...
Pass your API key directly — no browser required. Useful in CI environments.

Check status

bota auth status
Shows the active key and confirms it’s valid against the API.

Logout

bota auth logout
Removes the saved key from ~/.bota/config.json.

Commands

End Users

bota end-users list
bota end-users get <id>
bota end-users create --name "Jane Smith" --email jane@example.com --external-id user_123

# MCP tokens
bota end-users token <id>           # Issue a user token (shown once)
bota end-users token-revoke <id>    # Revoke the token

Devices

bota devices list
bota devices get <id>
bota devices inspect <id>           # Detailed view with battery, connectivity, last heartbeat

Recordings

bota recordings list
bota recordings list --end-user-id eu_abc123
bota recordings get <id>

Webhooks

bota webhooks list
bota webhooks get <id>

Webhook forwarding

Forward live webhook events to a local server — useful during integration development:
bota listen --forward-to http://localhost:3000/webhook

Trigger test events

Fire a test webhook event without needing real device activity:
bota trigger recording.uploaded
bota trigger transcription.completed

MCP server (stdio)

Expose all CLI commands as MCP tools for AI assistants that support stdio transport:
bota mcp
Add to Claude Code:
claude mcp add bota -- bota mcp

Global flags

FlagDescription
--api-url <url>Override the API base URL (default: https://api.bota.dev)
--dashboard-url <url>Override the portal URL used for browser login
--jsonOutput raw JSON instead of formatted tables

Example: point at a different environment

bota --api-url https://api.dev.bota.dev end-users list

Output formats

By default the CLI prints human-readable tables. Add --json to get raw JSON for scripting:
bota end-users list --json | jq '.data[].id'

Configuration file

Credentials are stored in ~/.bota/config.json:
{
  "apiKey": "sk_live_...",
  "apiUrl": "https://api.bota.dev"
}

apiUrl is only written when using a non-default environment. You can also use environment variables instead of the config file:
export BOTA_API_KEY=sk_live_...
export BOTA_API_URL=https://api.bota.dev