leadgrow-bison-cli
v0.1.8
Published
CLI for EmailBison — manage campaigns, leads, email accounts, warmup, and more from the command line.
Downloads
305
Maintainers
Readme
EmailBison CLI
EmailBison in your terminal. Manage cold email campaigns, leads, email accounts, warmup, and more — from the command line or through AI assistants.
117 MCP tools | 130+ commands | 100% API coverage | 1 dependency
Quick Start
npm install -g leadgrow-bison-cli
bison setupThe setup wizard walks you through:
- Entering your API key (from EmailBison → Settings → Developer API)
- Verifying the connection
- Configuring AI integration for Claude, Cursor, and other MCP clients
Or configure manually:
bison auth login --api-key YOUR_API_KEY
bison campaigns listInstallation
npm (recommended):
npm install -g leadgrow-bison-cliFrom source:
git clone https://github.com/LeadGrowGTM/emailbison-cli.git
cd emailbison-cli
npm install && npm run build
npm install -g .Requires Node.js 18 or higher.
Authentication
Three ways to authenticate, checked in this order:
| Method | How |
|--------|-----|
| Flags | --api-key on any command |
| Environment | BISON_API_KEY env var |
| Config file | bison auth login --api-key KEY saves to ~/.bison/config.json |
The login command validates your key against the API before saving.
# Interactive setup (recommended)
bison setup
# Direct login
bison auth login --api-key sk_live_abc123
# Environment variable
export BISON_API_KEY=sk_live_abc123
bison campaigns list
# Custom instance
bison auth login --api-key KEY --base-url https://your-instance.com/apiCommands
Auth & Config
bison setup # Interactive setup wizard
bison auth login --api-key K # Save and verify API key
bison auth logout # Remove saved API key
bison auth status # Check connection and account info
bison auth whoami # Same as status
bison auth token # Generate headless UI token
bison auth profile-picture f # Upload profile picture
bison auth update-password # Change account password
bison config show # View current config
bison config set --api-key K # Update config values
bison config reset # Reset to defaults
bison config path # Print config file locationCampaigns
bison campaigns list # List all campaigns
bison campaigns list --status active # Filter by status
bison campaigns get <id> # Get campaign details
bison campaigns create --name "Q1 Push" # Create campaign
bison campaigns update <id> --name "Q2" # Update campaign
bison campaigns duplicate <id> # Duplicate campaign
bison campaigns pause <id> # Pause campaign
bison campaigns resume <id> # Resume campaign
bison campaigns archive <id> # Archive campaign
bison campaigns delete <id> # Delete campaign
bison campaigns bulk-delete --ids 1,2,3 # Bulk delete
bison campaigns stats <id> # Campaign statistics
bison campaigns full-stats <id> # Full chart statisticsCampaign Schedule
bison campaigns schedule get <id> # Get schedule
bison campaigns schedule create <id> # Create schedule
bison campaigns schedule update <id> # Update schedule
bison campaigns schedule from-template <id> # Apply template
bison campaigns schedule templates # List templates
bison campaigns schedule timezones # List timezones
bison campaigns schedule sending-list # All sending schedules
bison campaigns schedule sending <id> # Campaign's scheduleCampaign Sequence
bison campaigns sequence get <id> # Get sequence steps
bison campaigns sequence create <id> # Create steps
bison campaigns sequence update <id> # Update steps
bison campaigns sequence delete <id> <stepId> # Delete step
bison campaigns sequence toggle <id> # Toggle variant
bison campaigns sequence test <id> # Send test emailCampaign Leads & Senders
bison campaigns leads list <id> # Campaign's leads
bison campaigns leads import <id> # Import from list
bison campaigns leads move <id> # Move to another campaign
bison campaigns leads stop <id> # Stop future emails
bison campaigns leads remove <id> # Remove leads
bison campaigns senders list <id> # Campaign's senders
bison campaigns senders attach <id> # Attach senders
bison campaigns senders remove <id> # Remove senders
bison campaigns replies list <id> # Campaign's replies
bison campaigns replies send <id> # Send reply
bison campaigns emails list <id> # Scheduled emailsLeads
bison leads list # List all leads
bison leads list --search "acme" # Search leads
bison leads get <id> # Get lead details
bison leads create --email [email protected] # Create lead
bison leads update <id> --name "Jane" # Update lead
bison leads replace <id> # Full replace (PUT)
bison leads delete <id> # Delete lead
bison leads bulk-create --data '[...]' # Create multiple
bison leads bulk-upsert --data '[...]' # Create or update multiple
bison leads upsert --email [email protected] # Single upsert
bison leads import-csv <file> # Import from CSV
bison leads bulk-delete --ids 1,2,3 # Bulk delete
bison leads update-status <id> # Update status
bison leads bulk-update-status # Bulk update status
bison leads unsubscribe <id> # Unsubscribe
bison leads blacklist <id> # Add to blacklist
bison leads replies <id> # Lead's replies
bison leads emails <id> # Lead's scheduled emails
bison leads sent-emails <id> # Lead's sent emailsReplies (Master Inbox)
bison replies list # List all replies
bison replies list --status interested # Filter by status
bison replies get <id> # Get reply details
bison replies compose # Send new email
bison replies reply <id> # Reply to thread
bison replies forward <id> # Forward reply
bison replies mark-interested <id> # Mark interested
bison replies mark-not-interested <id> # Mark not interested
bison replies mark-read <id> # Mark as read
bison replies mark-unread <id> # Mark as unread
bison replies mark-automated <id> # Mark automated
bison replies mark-not-automated <id> # Mark not automated
bison replies unsubscribe <id> # Unsubscribe contact
bison replies delete <id> # Delete reply
bison replies thread <id> # Conversation thread
bison replies attach-scheduled <id> # Attach scheduled email
bison replies push-followup <id> # Push to followup campaignEmail Accounts
bison accounts list # List all accounts
bison accounts get <id> # Account details
bison accounts create # Create IMAP/SMTP account
bison accounts update <id> # Update account
bison accounts delete <id> # Delete account
bison accounts bulk-create <file> # Bulk add from CSV
bison accounts campaigns <id> # Account's campaigns
bison accounts replies <id> # Account's replies
bison accounts oauth-token <id> # Get OAuth token
bison accounts check-mx <id> # Check MX records
bison accounts bulk-check-mx # Bulk check all MX
bison accounts update-signatures # Bulk update signatures
bison accounts update-limits # Bulk update daily limitsWarmup
bison warmup list # List warmup status
bison warmup get <id> # Warmup details
bison warmup enable <id> # Enable warmup
bison warmup disable <id> # Disable warmup
bison warmup update-limits <id> # Update warmup limitsTags, Blacklists, Webhooks & More
# Tags
bison tags list | get | create | delete
bison tags attach-campaigns | remove-campaigns
bison tags attach-leads | remove-leads
bison tags attach-senders | remove-senders
# Email Blacklist
bison blacklist emails list | add | get | remove | bulk-add
# Domain Blacklist
bison blacklist domains list | add | get | remove | bulk-add
# Webhooks
bison webhooks list | get | create | update | delete
# Webhook Events
bison webhook-events types | sample | test
# Tracking Domains
bison tracking list | get | create | delete
# Custom Lead Variables
bison variables list | create
# Ignore Phrases
bison phrases list | get | create | delete
# Reply Templates
bison templates list | get | create | update | delete
# Scheduled Emails
bison scheduled list | get
# Campaign Events
bison events breakdownWorkspaces
bison workspaces list # List workspaces
bison workspaces get <id> # Workspace details
bison workspaces create --name "Ops" # Create workspace
bison workspaces update <id> # Update workspace
bison workspaces delete <id> # Delete workspace
bison workspaces switch <id> # Switch workspace
bison workspaces create-user <id> # Create user in workspace
bison workspaces create-token <id> # Create API token
bison workspaces invite <id> # Invite member
bison workspaces accept-invite # Accept invitation
bison workspaces remove-member <id> # Remove member
bison workspaces stats <id> # Workspace stats
bison workspaces full-stats <id> # Full statistics
bison workspaces master-inbox <id> # Master inbox settings
bison workspaces update-master-inbox <id> # Update inbox settingsOutput Options
Every command supports these global flags:
# Machine-readable JSON
bison campaigns list --json
# Select specific fields
bison campaigns list --fields "id,name,status"
# Silent mode — exit code only (0=success, 1=error)
bison campaigns pause 42 --quiet
# Combine with jq
bison leads list --json | jq '.[] | .email'
# Pipe between commands
bison campaigns list --json --fields "id" | jq -r '.[].id'Default output is formatted tables for humans. Use --json for scripts and pipelines.
AI Integration (MCP)
The CLI includes a built-in MCP (Model Context Protocol) server with 117 tools. This lets AI assistants like Claude, Cursor, and other MCP clients use EmailBison directly.
One-command setup
bison mcp setupThis auto-configures Claude Desktop, Claude Code, and Cursor. Or run it during bison setup.
Manual MCP configuration
Add to your MCP client config (e.g., ~/.claude/mcp_servers.json):
{
"mcpServers": {
"emailbison": {
"command": "bison",
"args": ["mcp"],
"env": {
"BISON_API_KEY": "your-api-key"
}
}
}
}MCP management
bison mcp setup # Configure all AI clients
bison mcp setup --client cursor # Configure specific client
bison mcp status # Check which clients are configured
bison mcp remove # Remove from all clients
bison mcp # Start MCP server directly (for testing)Configuration
Config file location: ~/.bison/config.json
bison config show # View current config (API key is masked)
bison config set # Update values
bison config reset # Reset to defaults
bison config path # Print file pathEnvironment Variables
| Variable | Description | Overrides |
|----------|-------------|-----------|
| BISON_API_KEY | API key | Config file key |
| BISON_BASE_URL | API base URL | Config file URL |
Environment variables always take precedence over the config file.
Scripting & Automation
The CLI is designed for scripting, CI/CD pipelines, and AI agents:
# Exit codes: 0=success, 1=error, 2=auth missing
bison campaigns pause 42 --quiet && echo "Paused"
# JSON input via stdin
echo '{"name":"New Campaign"}' | bison campaigns create --data -
# Bulk operations
bison leads import-csv leads.csv
bison accounts bulk-create accounts.csv
bison leads bulk-delete --ids 1,2,3,4,5
# Environment-based auth for CI
BISON_API_KEY=sk_live_xxx bison campaigns list --jsonLicense
MIT
