bwh
Go SDK, CLI, and MCP server for managing BandwagonHost/bwg/搬瓦工 (KiwiVM) VPS, with command-line and programmatic access to most features.
claude mcp add --transport stdio strahe-bwh bwh mcp serve
How to use
The bwh MCP server exposes a read-only set of MCP tools to integrate BandwagonHost (KiwiVM) management with AI assistants and editors. Once running, clients can connect to the built-in MCP server using the configured command and arguments (for example: bwh mcp serve). The available MCP tools mirror common VPS management actions but are designed to be non-destructive: instance_list shows configured VPSs, vps_info_get returns details about a VPS, vps_usage_get retrieves usage statistics, and iso_list lists available ISO images. Other read-only capabilities include snapshot_list, backup_list, and vps_audit_get for audit logs, as well as migrate, ipv6, and private-ip views. These tools enable AI workflows to query your BWH environment, monitor status, and fetch metadata without modifying the VPS configuration or data. To use them, configure your MCP client with the server name bwh and the command bwh mcp serve, then issue the desired tool commands supported by the client (e.g., instance_list, vps_info_get, vps_usage_get, iso_list) via your MCP UI or editor integration.
How to install
Prerequisites:
- Go 1.24+ (for building and running the BWH CLI including MCP server support)
- KiwiVM VPS access with a valid VEID and API key
Install the BWH CLI (and MCP server):
- Install the CLI tool (BWH) and MCP server bridge:
# CLI or MCP
go install github.com/strahe/bwh/cmd/bwh@latest
-
Ensure you have your KiwiVM VEID and API key configured in your environment or via the CLI as needed by BWH commands.
-
Run the MCP server:
bwh mcp serve
- (Optional) Verify the CLI tool and MCP integration by listing available VPSs or fetching basic info:
bwh --instance <your-instance> info
Note: The installation instructions assume you are using the Go-based BWH CLI which also provides the MCP server functionality through the mcp serve command. If you are packaging or deploying via a different environment, ensure the binary bwh is accessible in your PATH when starting the MCP server.
Additional notes
Tips and considerations:
- The MCP server is read-only for the listed tools, meaning it will not modify your VPS configuration or data. This makes it safe to use in AI-assisted workflows.
- You can configure multiple instances and let the MCP client automatically target the default instance or switch targets as needed.
- When integrating with AI tools (Claude Desktop, Cursor, Continue, etc.), add the bwh mcp serve command to your MCP configuration as shown in the README to enable read-only operations against your BWH environment.
- If you encounter connectivity or authentication issues, verify that your VEID and API key are correct, and that the MCP server process has network access to the BWH API endpoints.
- Use the --config option to point clients at a specific YAML config file if you are coordinating multiple MCP servers or custom configurations.
Related MCP Servers
ophis
Transform any Cobra CLI into an MCP server
hop
Fast, elegant SSH connection manager with a TUI dashboard and MCP server
backlog
Help coding agents and developers to keep track of a project's backlog by storing tasks as markdown in git.
interop
Interop CLI: Go command-line tool for efficient project management and command execution across your development workspace.
mcpenetes
If you're tired of manually editing config files for different MCP-compatible clients whenever you want to switch servers, mcpenetes is here to save your day.
mcp-tidy
CLI tool to visualize and manage MCP server configurations in Claude Code. List servers, analyze usage statistics, and clean up unused servers