Skip to content

CLI Commands Quick Reference

Fresh

WP-CLI MainWP Commands

Sites

CommandDescription
wp mainwp sites listList all sites
wp mainwp sites get --site-id=IDGet site details
wp mainwp sites sync --site-id=IDSync one site
wp mainwp sites sync --allSync all sites
wp mainwp sites add --url=URL --admin=USERAdd a site
wp mainwp sites remove --site-id=IDRemove a site

Updates

CommandDescription
wp mainwp updates listList all available updates
wp mainwp updates list --site-id=IDList updates for one site
wp mainwp updates plugins --site-id=IDUpdate all plugins on site
wp mainwp updates themes --site-id=IDUpdate all themes on site
wp mainwp updates core --site-id=IDUpdate WordPress core on site
wp mainwp updates allUpdate everything everywhere

Clients

CommandDescription
wp mainwp clients listList all clients
wp mainwp clients add --name=NAMEAdd a client
wp mainwp clients suspend --client-id=IDSuspend client

Extensions

CommandDescription
wp mainwp extensions listList extensions
wp mainwp extensions activate --slug=SLUGActivate extension
wp mainwp extensions deactivate --slug=SLUGDeactivate extension

Output Formats

FlagFormat
--format=tableASCII table (default)
--format=jsonJSON output
--format=csvCSV output
--format=yamlYAML output
--format=countCount only

MCP Server CLI

bash
# Install globally
npm install -g @mainwp/mcp

# Run with npx (no install)
npx -y @mainwp/mcp

# Add to Claude Code
claude mcp add --transport stdio mainwp \
  --env MAINWP_URL=https://dashboard.com \
  --env MAINWP_USER=admin \
  --env MAINWP_APP_PASSWORD="xxxx xxxx" \
  -- npx -y @mainwp/mcp

cURL Quick Reference

REST API v2

bash
# Auth header
-H "Authorization: Bearer YOUR_API_KEY"

# List sites
curl -H "Authorization: Bearer KEY" https://dashboard.com/wp-json/mainwp/v2/sites

# Get site
curl -H "Authorization: Bearer KEY" https://dashboard.com/wp-json/mainwp/v2/sites/123

# Create site
curl -X POST -H "Authorization: Bearer KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://site.com","admin":"admin"}' \
  https://dashboard.com/wp-json/mainwp/v2/sites

Abilities API

bash
# Auth (Basic)
-u "username:app-password"

# List abilities
curl -u "admin:xxxx" \
  https://dashboard.com/wp-json/wp-abilities/v1/abilities

# Execute ability
curl -X POST -u "admin:xxxx" \
  -H "Content-Type: application/json" \
  -d '{"input":{...}}' \
  https://dashboard.com/wp-json/wp-abilities/v1/abilities/mainwp/ABILITY-SLUG/run