Biznet GIO CLI
/install biznetgio
Biznet Gio Cloud Management - Agent Skill Guide
Skill Metadata
| Field | Value |
|---|---|
| Name | Biznet Gio Cloud Management |
| Description | Manage Biznet Gio cloud infrastructure (servers, VMs, storage, IPs) via CLI and MCP |
| Homepage | https://github.com/BiznetGIO/biznetgio-cli |
| npm (CLI) | @biznetgio/cli |
| npm (MCP) | @biznetgio/mcp |
| API Docs | https://api.portal.biznetgio.com/v1/openapi.json |
| License | MIT |
| Primary Credential | BIZNETGIO_API_KEY |
Required Environment Variables
| Variable | Required | Description |
|---|---|---|
BIZNETGIO_API_KEY |
Yes | API token from Biznet Gio Portal. Sent as x-token header on every request. Do not hardcode — always use env var. |
BIZNETGIO_BASE_URL |
No | Override API base URL. Defaults to https://api.portal.biznetgio.com/v1. Useful for staging/dev environments. |
Required Binaries
| Binary | Version | Required | Description |
|---|---|---|---|
node |
>= 18 | Yes | Node.js runtime for the CLI and MCP server. |
npx |
(bundled with node) | Yes | Fetches and runs @biznetgio/cli from the npm registry without global installation. |
Runtime Note
This skill executes the npm package @biznetgio/cli via npx, which downloads and runs code from the npm registry. The package is published under the @biznetgio npm scope by Biznet Gio. Source code is available at github.com/BiznetGIO/biznetgio-cli. If you require stronger guarantees, you can:
- Pre-install with
npm install -g @biznetgio/cliand verify the package before use - Use the pre-built standalone binaries from the GitHub releases
- Pin to a specific version:
npx @biznetgio/[email protected]instead of@latest - Run in a sandboxed environment
You are an agent that can manage Biznet Gio cloud infrastructure using the CLI tool @biznetgio/cli and/or MCP server @biznetgio/mcp.
Important Instructions
- Always use
npxto run the CLI. No installation required. - Read-only commands run without confirmation. Commands like
list,detail,products,product-os,product-ip,state,info,usage,regions,openvpn,vm-details,url,credential list,bucket list,object list,keypair list,snapshot list,disk list, and other read-only queries can be executed directly without asking for user approval. - Confirm before create, update, or delete actions. Before running any command that creates, modifies, or deletes a resource, show the user the full command with all values and ask for confirmation. The user may want to revise parameter values before execution.
- For destructive actions (delete, rebuild, state changes), double confirm. Clearly warn the user about the impact and ask explicitly: "Are you sure?"
- For create operations, list all parameters and let the user review and adjust before executing. Show product options, OS choices, and pricing when available.
How to Run
# With API key inline
BIZNETGIO_API_KEY=\x3CYOUR_KEY> npx @biznetgio/cli@latest \x3Cservice> \x3Caction> [arguments] [options]
# Or export the key first
export BIZNETGIO_API_KEY=\x3CYOUR_KEY>
npx @biznetgio/cli@latest \x3Cservice> \x3Caction> [arguments] [options]
# Or pass API key as flag
npx @biznetgio/cli@latest \x3Cservice> \x3Caction> --api-key \x3CYOUR_KEY> [arguments] [options]
- API Key: environment variable
BIZNETGIO_API_KEY(sent asx-tokenheader), or--api-keyflag - Base URL:
https://api.portal.biznetgio.com/v1(override withBIZNETGIO_BASE_URLenv) - Output format: default
table, use--output jsonfor JSON output
Available Services
| Service | CLI Command | MCP Tool Prefix | Description |
|---|---|---|---|
| NEO Metal | metal |
metal_* |
Bare metal servers |
| Elastic Storage | elastic-storage |
elastic_storage_* |
Storage for bare metal |
| Additional IP | additional-ip |
additional_ip_* |
Additional IPs for bare metal |
| NEO Lite | neolite |
neolite_* |
Virtual machines (lightweight) |
| NEO Lite Pro | neolite-pro |
neolite_pro_* |
Virtual machines (pro-tier) |
| Object Storage | object-storage |
object_storage_* |
S3-compatible object storage |
General Pattern
npx @biznetgio/cli@latest \x3Cservice> \x3Caction> [arguments] [options]
npx @biznetgio/cli@latest \x3Cservice> \x3Csubgroup> \x3Caction> [arguments] [options]
Global options: --api-key \x3Ckey>, --output table|json
Output Behavior
- Default: table — List data is displayed as formatted tables. Nested objects (billing, specs, options) are automatically flattened. Billing is summarized as
price/mo. --output json— Raw JSON from the API.datafield.- Primitive responses (e.g. delete, update-label) return plain text like
successortrue. - Empty lists show
No data found.
Valid Enum Values
- Billing cycle (
--cycle):m(monthly),q(quarterly),s(semi-annual),a(annual),b(biennial),t(triennial),p4,p5 - Metal states:
on,off,reset - VM states (neolite/neolite-pro):
stop,suspend,resume,shutdown,start,reset - Object ACL:
private,public-read,public-read-write,authenticated-read,log-delivery-write - Console password: must match
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$(min 8 chars, uppercase + lowercase + digit, alphanumeric only — no special characters) - Label: max 16 characters
Workflow & Best Practices
Before Creating Resources
-
List products first to get valid
product_idvalues:npx @biznetgio/cli@latest metal products npx @biznetgio/cli@latest neolite products npx @biznetgio/cli@latest object-storage products -
Check available OS for a product:
npx @biznetgio/cli@latest metal product-os \x3Cproduct_id> npx @biznetgio/cli@latest neolite product-os \x3Cproduct_id> -
Check available keypairs (or create one first):
npx @biznetgio/cli@latest neolite keypair list npx @biznetgio/cli@latest neolite keypair create --name "my-key" -
Check IP availability (neolite):
npx @biznetgio/cli@latest neolite product-ip \x3Cproduct_id>
Creating Resources
# Create a bare metal server
npx @biznetgio/cli@latest metal create \
--product-id \x3Cid> --cycle m --keypair-id \x3Cid> \
--label "my-server" --public-ip 1 --select-os "ubuntu-22.04"
# Create a NEO Lite instance
npx @biznetgio/cli@latest neolite create \
--product-id \x3Cid> --cycle m --select-os "Ubuntu-20.04" \
--keypair-id \x3Cid> --ssh-and-console-user myuser \
--console-password TestPass123
# Create a NEO Lite Pro instance
npx @biznetgio/cli@latest neolite-pro create \
--product-id \x3Cid> --cycle m --select-os "Ubuntu-20.04" \
--keypair-id \x3Cid> --ssh-and-console-user myuser \
--console-password TestPass123
# Create object storage (label max 16 chars)
npx @biznetgio/cli@latest object-storage create \
--product-id \x3Cid> --cycle m --label "my-storage"
# Create elastic storage (requires metal_account_id)
npx @biznetgio/cli@latest elastic-storage create \
--product-id \x3Cid> --cycle m --storage-name "data-vol" \
--metal-account-id \x3Cid>
# Create additional IP
npx @biznetgio/cli@latest additional-ip create --product-id \x3Cid> --cycle m
Deleting Resources
npx @biznetgio/cli@latest metal delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite-pro delete \x3Caccount_id>
npx @biznetgio/cli@latest elastic-storage delete \x3Caccount_id>
npx @biznetgio/cli@latest additional-ip delete \x3Caccount_id>
npx @biznetgio/cli@latest object-storage delete \x3Caccount_id>
npx @biznetgio/cli@latest object-storage bucket delete \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage object delete \x3Caccount_id> \x3Cbucket_name> \x3Cpath>
npx @biznetgio/cli@latest neolite snapshot delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite disk delete \x3Caccount_id>
npx @biznetgio/cli@latest \x3Cservice> keypair delete \x3Ckeypair_id>
Managing Server State
# NEO Metal: on / off / reset
npx @biznetgio/cli@latest metal set-state \x3Caccount_id> on
npx @biznetgio/cli@latest metal set-state \x3Caccount_id> off
# NEO Lite / Pro: start / stop / shutdown / suspend / resume / reset
npx @biznetgio/cli@latest neolite set-state \x3Caccount_id> start
npx @biznetgio/cli@latest neolite set-state \x3Caccount_id> stop
npx @biznetgio/cli@latest neolite-pro set-state \x3Caccount_id> shutdown
Object Storage Operations
# Credential management
npx @biznetgio/cli@latest object-storage credential list \x3Caccount_id>
npx @biznetgio/cli@latest object-storage credential create \x3Caccount_id>
npx @biznetgio/cli@latest object-storage credential update \x3Caccount_id> \x3Caccess_key> --active
npx @biznetgio/cli@latest object-storage credential delete \x3Caccount_id> \x3Caccess_key>
# Bucket operations
npx @biznetgio/cli@latest object-storage bucket list \x3Caccount_id>
npx @biznetgio/cli@latest object-storage bucket create \x3Caccount_id> --name my-bucket
npx @biznetgio/cli@latest object-storage bucket info \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage bucket usage \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage bucket set-acl \x3Caccount_id> \x3Cbucket_name> --acl public-read
npx @biznetgio/cli@latest object-storage bucket delete \x3Caccount_id> \x3Cbucket_name>
# Object operations
npx @biznetgio/cli@latest object-storage object list \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage object list \x3Caccount_id> \x3Cbucket_name> \x3Cdirectory>
npx @biznetgio/cli@latest object-storage object info \x3Caccount_id> \x3Cbucket_name> \x3Cpath>
npx @biznetgio/cli@latest object-storage object download \x3Caccount_id> \x3Cbucket_name> \x3Cobject_name>
npx @biznetgio/cli@latest object-storage object url \x3Caccount_id> \x3Cbucket_name> \x3Cobject_name> --expiry 3600
npx @biznetgio/cli@latest object-storage object copy \x3Caccount_id> \x3Cbucket_name> \x3Cto_bucket> \x3Cobject_name>
npx @biznetgio/cli@latest object-storage object move \x3Caccount_id> \x3Cbucket_name> \x3Cto_bucket> \x3Cobject_name>
npx @biznetgio/cli@latest object-storage object mkdir \x3Caccount_id> \x3Cbucket_name> \x3Cdirectory>
npx @biznetgio/cli@latest object-storage object set-acl \x3Caccount_id> \x3Cbucket_name> \x3Cpath> --acl private
npx @biznetgio/cli@latest object-storage object delete \x3Caccount_id> \x3Cbucket_name> \x3Cpath>
Snapshot & Disk Management (NEO Lite / Pro)
# Snapshots
npx @biznetgio/cli@latest neolite snapshot create \x3Caccount_id> --cycle m
npx @biznetgio/cli@latest neolite snapshot list
npx @biznetgio/cli@latest neolite snapshot detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite snapshot restore \x3Caccount_id>
npx @biznetgio/cli@latest neolite snapshot create-instance \x3Csnapshot_account_id> \
--product-id \x3Cid> --cycle m --keypair-id \x3Cid> --name "from-snap" \
--ssh-and-console-user myuser --console-password TestPass123
npx @biznetgio/cli@latest neolite snapshot delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite snapshot products
npx @biznetgio/cli@latest neolite snapshot product \x3Cproduct_id>
# Additional disks
npx @biznetgio/cli@latest neolite disk create \
--product-id \x3Cid> --cycle m --neolite-account-id \x3Cid>
npx @biznetgio/cli@latest neolite disk list
npx @biznetgio/cli@latest neolite disk detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite disk upgrade \x3Caccount_id> --additional-size 20
npx @biznetgio/cli@latest neolite disk delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite disk products
npx @biznetgio/cli@latest neolite disk product \x3Cproduct_id>
Keypair Management
# Available for: metal, neolite, neolite-pro
npx @biznetgio/cli@latest \x3Cservice> keypair list
npx @biznetgio/cli@latest \x3Cservice> keypair create --name "my-key"
npx @biznetgio/cli@latest \x3Cservice> keypair import --name "my-key" --public-key "ssh-rsa AAAA..."
npx @biznetgio/cli@latest \x3Cservice> keypair delete \x3Ckeypair_id>
Upgrade & Scaling
# Upgrade neolite/neolite-pro storage
npx @biznetgio/cli@latest neolite upgrade-storage \x3Caccount_id> --disk-size 50
npx @biznetgio/cli@latest neolite-pro upgrade-storage \x3Caccount_id> --disk-size 100
# Change package (upgrade plan) — check options first
npx @biznetgio/cli@latest neolite change-package-options \x3Caccount_id>
npx @biznetgio/cli@latest neolite change-package \x3Caccount_id> --new-product-id \x3Cid>
# Upgrade elastic storage
npx @biznetgio/cli@latest elastic-storage upgrade \x3Caccount_id> --size 100
# Change elastic storage package
npx @biznetgio/cli@latest elastic-storage change-package \x3Caccount_id> --new-product-id \x3Cid>
# Upgrade object storage quota
npx @biznetgio/cli@latest object-storage upgrade-quota \x3Caccount_id> --add-quota 50
# Migrate neolite to pro — check options first
npx @biznetgio/cli@latest neolite migrate-to-pro-products \x3Caccount_id>
npx @biznetgio/cli@latest neolite migrate-to-pro \x3Caccount_id> --neolitepro-product-id \x3Cid>
Rebuild / Reinstall OS
# Check available OS for rebuild
npx @biznetgio/cli@latest metal rebuild-os \x3Caccount_id>
# Rebuild
npx @biznetgio/cli@latest metal rebuild \x3Caccount_id> --os "ubuntu-22.04"
npx @biznetgio/cli@latest neolite rebuild \x3Caccount_id> --select-os "Ubuntu-20.04"
npx @biznetgio/cli@latest neolite-pro rebuild \x3Caccount_id> --select-os "Ubuntu-20.04"
Update & Rename
# Update metal label (max 16 chars)
npx @biznetgio/cli@latest metal update-label \x3Caccount_id> --label "new-label"
# Rename neolite/neolite-pro VM
npx @biznetgio/cli@latest neolite rename \x3Caccount_id> --name "new-name"
npx @biznetgio/cli@latest neolite-pro rename \x3Caccount_id> --name "new-name"
# Change keypair
npx @biznetgio/cli@latest neolite change-keypair \x3Caccount_id> --keypair-id \x3Cid>
npx @biznetgio/cli@latest neolite-pro change-keypair \x3Caccount_id> --keypair-id \x3Cid>
Additional IP Assignment
# List and create IPs
npx @biznetgio/cli@latest additional-ip list
npx @biznetgio/cli@latest additional-ip regions
npx @biznetgio/cli@latest additional-ip create --product-id \x3Cid> --cycle m
# Assign IP to bare metal
npx @biznetgio/cli@latest additional-ip assign \x3Cip_account_id> --metal-account-id \x3Cmetal_id>
npx @biznetgio/cli@latest additional-ip assigns \x3Cip_account_id>
npx @biznetgio/cli@latest additional-ip assignments \x3Cmetal_account_id>
npx @biznetgio/cli@latest additional-ip assign-detail \x3Cip_account_id> \x3Cmetal_account_id>
# Unassign
npx @biznetgio/cli@latest additional-ip unassign \x3Cip_account_id> \x3Cmetal_account_id>
Detail & Info Commands
# Account details
npx @biznetgio/cli@latest metal detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite-pro detail \x3Caccount_id>
npx @biznetgio/cli@latest elastic-storage detail \x3Caccount_id>
npx @biznetgio/cli@latest additional-ip detail \x3Caccount_id>
npx @biznetgio/cli@latest object-storage detail \x3Caccount_id>
# VM details
npx @biznetgio/cli@latest neolite vm-details \x3Caccount_id>
npx @biznetgio/cli@latest neolite-pro vm-details \x3Caccount_id>
# Server state
npx @biznetgio/cli@latest metal state \x3Caccount_id>
# OpenVPN config
npx @biznetgio/cli@latest metal openvpn
Destructive Actions - Use With Caution!
The following commands are destructive and cannot be undone. ALWAYS confirm with the user before running:
- All
deletecommands (server, VM, storage, IP, bucket, object, snapshot, disk, keypair) rebuildcommands (reinstalls OS, wipes data)set-state off/shutdown/reset(may cause downtime)
MCP Server Tools Reference
When using the MCP server, all endpoints are exposed as tools with naming convention \x3Cservice>_\x3Caction>. Examples:
| CLI Command | MCP Tool |
|---|---|
metal list |
metal_list |
metal detail 123 |
metal_detail {account_id: 123} |
metal set-state 123 on |
metal_set_state {account_id: 123, state: "on"} |
neolite create ... |
neolite_create {product_id, cycle, ...} |
object-storage bucket list 123 |
object_storage_bucket_list {account_id: 123} |
neolite snapshot list |
neolite_snapshot_list {} |
neolite disk create ... |
neolite_disk_create {product_id, cycle, ...} |
object-storage delete 123 |
object_storage_delete {account_id: 123} |
Total: 131 tools available in the MCP server.
MCP server configuration for Claude Desktop / Claude Code:
{
"mcpServers": {
"biznetgio": {
"command": "npx",
"args": ["-y", "@biznetgio/mcp@latest"],
"env": {
"BIZNETGIO_API_KEY": "your_api_key_here"
}
}
}
}
Troubleshooting
| Error | Solution |
|---|---|
API key not set |
Set export BIZNETGIO_API_KEY=xxx or use --api-key flag |
API Error 401 |
API key is invalid or expired |
API Error 404 |
Resource not found, check the account_id |
API Error 422 |
Validation error — check password regex, label max 16 chars, required fields |
API Error 500 |
Server error — retry or check if the resource exists |
No data found. |
The list is empty, no resources of this type exist yet |
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install biznetgio - After installation, invoke the skill by name or use
/biznetgio - Provide required inputs per the skill's parameter spec and get structured output
What is Biznet GIO CLI?
Manage Biznet Gio cloud infrastructure (servers, VMs, storage, IPs) via CLI and MCP server. It is an AI Agent Skill for Claude Code / OpenClaw, with 119 downloads so far.
How do I install Biznet GIO CLI?
Run "/install biznetgio" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Biznet GIO CLI free?
Yes, Biznet GIO CLI is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Biznet GIO CLI support?
Biznet GIO CLI is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Biznet GIO CLI?
It is built and maintained by Biznet Gio (@biznetgio); the current version is v1.0.4.