Skip to main content
Glama
hcloud MCP Server

hcloud MCP Server

by binrogithub

hcloud-mcp-server

An MCP (Model Context Protocol) server that exposes Huawei Cloud infrastructure through 150 structured tools plus a generic hcloud_cli catch-all — for AI assistants to discover and manage Huawei Cloud resources.

150 tools · 34 services · 1 server — ECS, VPC, CCE, RDS, VPN, OBS, IAM, and 27 more.

How It Works

The server registers 150 tools: 149 structured read-only tools for infrastructure discovery + 1 generic hcloud_cli for write operations and anything not covered by structured tools.

hcloud_list_servers(region="la-north-2")           → structured tool, type-safe
hcloud_list_vpn_gateways(region="la-north-2")      → new VPN v5 tools
hcloud_list_drs_jobs(region="la-north-2")           → new DRS tools
hcloud_cli("IAM CreateCustomPolicy --name=...")    → generic CLI for writes

Structured tools provide type-safe parameters, JSON schema validation, and MCP annotations (readOnlyHint=True). The generic hcloud_cli handles write operations with a safety layer (dry-run by default, confirm=true for execution).

Related MCP server: Huawei MCP Server

Features

  • 150 tools — 149 structured read-only + 1 generic CLI catch-all

  • 35 services covered — ECS, VPC, EIP, EVS, IAM, ELB, RDS, CCE, AS, OBS, DNS, KMS, CES, IMS, NAT, DCS, DDS, SMN, VPN, DRS, SWR, OMS, SMS, CBR, CCI, MRS, DWS, GaussDB, ER, CFW, CodeArts, DataArts, Organizations, LTS, BSS

  • MCP annotations — readOnlyHint=True on structured tools, destructiveHint=True on hcloud_cli, title on all tools

  • Output truncation — large responses truncated to 50KB with pagination hint

  • Safety layer — destructive operations require confirm=true; default is dry-run mode

  • Help deduplication — older API versions hidden from --help output

  • Configurable — timeout, binary path, safety settings

Requirements

Install KooCLI

curl -LO https://ap-southeast-3-hwcloudcli.obs.ap-southeast-3.myhuaweicloud.com/cli/latest/huaweicloud-cli-linux-amd64.tar.gz
tar xzf huaweicloud-cli-linux-amd64.tar.gz
sudo mv hcloud /usr/local/bin/
hcloud --version

Configure credentials

hcloud configure set --cli-mode=AKSK --cli-region=la-north-2 --cli-agree-privacy-statement=true
hcloud configure set --cli-access-key=YOUR_AK --cli-secret-key=YOUR_SK
hcloud configure set --cli-region=la-north-2
echo y | hcloud IAM ListCustomPolicies   # verify (first run needs privacy agreement)

Get your AK/SK from the Huawei Cloud console: My Credentials → Access Keys.

Installation

git clone https://github.com/binrogithub/hcloud-mcp-server.git
cd hcloud-mcp-server
pip install --upgrade pip setuptools   # needed on older systems (e.g. Ubuntu 22.04)
pip install .

Option B: From source tarball

curl -LO http://huaweilatam.com/downloads/hcloud-mcp-server.tar.gz
tar xzf hcloud-mcp-server.tar.gz
cd hcloud-mcp-server
pip install --upgrade pip setuptools   # needed on older systems (e.g. Ubuntu 22.04)
pip install .

Verify

hcloud-mcp --help

Running

# Start the MCP server (stdio transport)
hcloud-mcp

# With a config file
hcloud-mcp --config /path/to/config.json

# With debug logging
hcloud-mcp --debug

Configuration

Config file

Create a JSON config file (see config.example.json):

{
  "execution": {
    "timeout_seconds": 30,
    "cli_output": "json",
    "hcloud_binary": "hcloud"
  }
}

Environment variables

Variable

Description

HCLOUD_MCP_CONFIG

Path to config JSON file

Tool Reference

hcloud_cli

Parameter

Type

Required

Description

command

string

Yes

hcloud CLI arguments (everything after hcloud)

confirm

boolean

No

Set true to execute destructive operations (default: false = dry-run)

Navigation flow:

  1. command="--help" — list all available services

  2. command="<Service> --help" — list operations for a service

  3. command="<Service> <Operation> --help" — show parameters and descriptions

  4. command="<Service> <Operation> --param1=value1" — execute the operation

Parameter format: Always use --param=value (equals sign required by hcloud).

Safety: Operations containing Delete, Remove, Revoke, Detach, Disassociate, Cancel, or Force are classified as destructive. Without confirm=true, they run with --dryrun first.

Adding to AI Tools

The hcloud MCP server uses standard stdio transport, compatible with any MCP client.

opencode

Add to ~/.opencode/opencode.json:

{
  "mcp": {
    "hcloud": {
      "type": "local",
      "command": ["hcloud-mcp"],
      "enabled": true
    }
  }
}

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "hcloud": {
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "hcloud": {
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

VS Code (GitHub Copilot)

Add to .vscode/mcp.json:

{
  "servers": {
    "hcloud": {
      "type": "stdio",
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

Windsurf

Add to ~/.windsurf/mcp.json:

{
  "mcpServers": {
    "hcloud": {
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

Goose

Add to ~/.config/goose/config.yaml:

extensions:
  hcloud:
    type: stdio
    command: hcloud-mcp
    args: []

Any MCP Client (generic)

Setting

Value

Command

hcloud-mcp

Args

[]

Transport

stdio

Example AI Session

User: How many custom IAM policies do I have?

AI: Let me check your IAM policies.

→ hcloud_cli(command="--help")
  [sees IAM in the service list]

→ hcloud_cli(command="IAM --help")
  [sees ListCustomPolicies in the operations list]

→ hcloud_cli(command="IAM ListCustomPolicies --help")
  [sees no required parameters]

→ hcloud_cli(command="IAM ListCustomPolicies")
  { "total_number": 2, "roles": [...] }

AI: You have 2 custom IAM policies.
User: Delete the policy with ID abc123

AI: This is a destructive operation. Let me run it in dry-run mode first.

→ hcloud_cli(command="IAM DeleteCustomPolicy --role_id=abc123")
  ⚠️ DRY RUN — no changes made.
  Set confirm=true to execute for real.

→ hcloud_cli(command="IAM DeleteCustomPolicy --role_id=abc123", confirm=true)
  ✅ Executed (confirmed destructive operation):
  { "message": "Delete success" }

AI: The policy has been deleted.

Development

# Install in editable mode
pip install -e .

# Run tests
pytest tests/ -v

# Run with debug logging
hcloud-mcp --debug

Troubleshooting

Server fails to start:

  • Ensure hcloud is installed and in PATH: which hcloud

  • Verify auth: hcloud IAM ListCustomPolicies

Tool calls return errors:

  • Check hcloud profile: hcloud configure list

  • Enable debug logging: hcloud-mcp --debug

AI doesn't know how to use the tool:

  • The tool description includes navigation instructions

  • Remind the AI: "Use hcloud_cli with --help to discover operations"

Available Tools

150 tools
hcloud_cliHuawei Cloud CLI (generic)A
Destructive

Huawei Cloud CLI (hcloud) terminal interface.

Navigate the CLI using --help to discover operations and parameters:

  1. --help — list all available services

  2. <Service> --help — list operations for a service (e.g., IAM --help)

  3. <Service> <Operation> --help — show parameters for an operation (e.g., IAM ListCustomPolicies --help)

  4. <Service> <Operation> --param1=value1 --param2=value2 — execute an operation

The parameter format is always --param=value (equals sign required). JSON output is forced automatically (--cli-output=json).

For destructive operations (Delete, Remove, Revoke, Detach, etc.), set confirm=true to execute. Without confirmation, the command runs in --dryrun mode first.

OBS (Object Storage Service) uses obsutil with a different format:

  1. obs help — list all OBS commands

  2. obs help <command> — show help for a specific command (e.g., obs help ls)

  3. obs <command> [args...] [options...] — execute an OBS command

  4. Use --cli-region=<region> to specify the region (translated to the OBS endpoint automatically)

  5. OBS output is plain text (not JSON)

  6. For OBS destructive commands that support dry-run (cp, mv, sync), the command runs with -dryRun unless confirmed

  7. For OBS destructive commands without dry-run support (rm, abort, mb, chattri, bucketpolicy, lifecycle), you must set confirm=true to execute

Inputs: command (required), confirm.

hcloud_list_addon_instanceshcloud_list_addon_instancesA
Read-onlyIdempotent

List installed add-ons in a CCE cluster

Inputs: region (required), cluster_id (required).

hcloud_list_agencieshcloud_list_agenciesB
Read-onlyIdempotent

List IAM agencies (trust relationships)

Inputs: no named parameters.

hcloud_list_alarm_ruleshcloud_list_alarm_rulesC
Read-onlyIdempotent

List CES alarm rules (v2 API, more complete)

Inputs: region (required), limit.

hcloud_list_alarmshcloud_list_alarmsC
Read-onlyIdempotent

List CES (Cloud Eye) alarms

Inputs: region (required), limit.

hcloud_list_availability_zoneshcloud_list_availability_zonesC
Read-onlyIdempotent

List availability zones for ECS

Inputs: region (required).

hcloud_list_bandwidthshcloud_list_bandwidthsC
Read-onlyIdempotent

List bandwidths

Inputs: region (required), limit.

hcloud_list_bss_customer_ordershcloud_list_bss_customer_ordersC
Read-onlyIdempotent

List BSS (Billing and Subscription) customer orders

Inputs: limit, offset, status.

hcloud_list_bss_measurementshcloud_list_bss_measurementsC
Read-onlyIdempotent

List BSS (Billing and Subscription) measurements

Inputs: limit, offset.

hcloud_list_cbr_backupshcloud_list_cbr_backupsC
Read-onlyIdempotent

List CBR (Cloud Backup and Recovery) backups

Inputs: region (required), limit, offset, resource_id, +1 more.

hcloud_list_cbr_policieshcloud_list_cbr_policiesC
Read-onlyIdempotent

List CBR (Cloud Backup and Recovery) backup policies

Inputs: region (required), limit, offset.

hcloud_list_cbr_vaultshcloud_list_cbr_vaultsC
Read-onlyIdempotent

List CBR (Cloud Backup and Recovery) vaults

Inputs: region (required), limit, offset.

hcloud_list_cce_clustershcloud_list_cce_clustersC
Read-onlyIdempotent

List CCE (Kubernetes) clusters

Inputs: region (required), status.

hcloud_list_cce_nodeshcloud_list_cce_nodesC
Read-onlyIdempotent

List nodes in a CCE cluster

Inputs: region (required), cluster_id (required).

hcloud_list_cci_deploymentshcloud_list_cci_deploymentsC
Read-onlyIdempotent

List CCI (Cloud Container Instance) deployments

Inputs: region (required), namespace.

hcloud_list_cci_namespaceshcloud_list_cci_namespacesC
Read-onlyIdempotent

List CCI (Cloud Container Instance) namespaces

Inputs: region (required).

hcloud_list_cci_podshcloud_list_cci_podsC
Read-onlyIdempotent

List CCI (Cloud Container Instance) pods

Inputs: region (required), namespace, deployment_name.

hcloud_list_cfw_acl_ruleshcloud_list_cfw_acl_rulesC
Read-onlyIdempotent

List CFW (Cloud Firewall) ACL rules

Inputs: region (required), limit, offset, object_id.

hcloud_list_cfw_firewallshcloud_list_cfw_firewallsC
Read-onlyIdempotent

List CFW (Cloud Firewall) firewalls

Inputs: region (required), limit, offset.

hcloud_list_cfw_service_ruleshcloud_list_cfw_service_rulesC
Read-onlyIdempotent

List CFW (Cloud Firewall) service rules

Inputs: region (required), limit, offset, object_id.

hcloud_list_codearts_pipelineshcloud_list_codearts_pipelinesC
Read-onlyIdempotent

List CodeArts pipelines in a project

Inputs: region (required), limit, offset, project_id.

hcloud_list_codearts_projectshcloud_list_codearts_projectsC
Read-onlyIdempotent

List CodeArts projects

Inputs: region (required), limit, offset.

hcloud_list_codearts_repositorieshcloud_list_codearts_repositoriesB
Read-onlyIdempotent

List CodeArts repositories in a project

Inputs: region (required), limit, offset, project_id.

hcloud_list_dataarts_catalogshcloud_list_dataarts_catalogsC
Read-onlyIdempotent

List DataArts catalogs in a workspace

Inputs: region (required), workspace_id.

hcloud_list_dataarts_workspaceshcloud_list_dataarts_workspacesC
Read-onlyIdempotent

List DataArts workspaces

Inputs: region (required), limit, offset.

hcloud_list_dcs_available_zoneshcloud_list_dcs_available_zonesC
Read-onlyIdempotent

List available availability zones for DCS (Redis)

Inputs: region (required).

hcloud_list_dcs_flavorshcloud_list_dcs_flavorsC
Read-onlyIdempotent

List available DCS (Redis) instance flavors/specs

Inputs: region (required).

hcloud_list_dcs_instanceshcloud_list_dcs_instancesC
Read-onlyIdempotent

List DCS (Redis) instances

Inputs: region (required), limit.

hcloud_list_dds_flavorshcloud_list_dds_flavorsB
Read-onlyIdempotent

List available DDS (MongoDB) instance flavors/specs

Inputs: region (required), engine.

hcloud_list_dds_instanceshcloud_list_dds_instancesC
Read-onlyIdempotent

List DDS (MongoDB) instances

Inputs: region (required), limit.

hcloud_list_dds_storage_typeshcloud_list_dds_storage_typesC
Read-onlyIdempotent

List available DDS (MongoDB) storage types

Inputs: region (required), engine.

hcloud_list_dns_recordsetshcloud_list_dns_recordsetsA
Read-onlyIdempotent

List DNS record sets in a zone

Inputs: region (required), zone_id (required), limit.

hcloud_list_dns_zoneshcloud_list_dns_zonesC
Read-onlyIdempotent

List DNS zones

Inputs: region (required), type, limit.

hcloud_list_domainshcloud_list_domainsB
Read-onlyIdempotent

List authenticated IAM domains

Inputs: no named parameters.

hcloud_list_drs_jobshcloud_list_drs_jobsC
Read-onlyIdempotent

List DRS (Data Replication Service) jobs with optional filters

Inputs: region (required), name, limit, offset, +2 more.

hcloud_list_drs_quotashcloud_list_drs_quotasC
Read-onlyIdempotent

List DRS quotas for the tenant

Inputs: region (required).

hcloud_list_dws_clustershcloud_list_dws_clustersB
Read-onlyIdempotent

List DWS (GaussDB Data Warehouse) clusters

Inputs: region (required), limit, offset.

hcloud_list_dws_flavorshcloud_list_dws_flavorsB
Read-onlyIdempotent

List available DWS (GaussDB Data Warehouse) cluster flavors/specs

Inputs: region (required).

hcloud_list_eip_quotashcloud_list_eip_quotasC
Read-onlyIdempotent

List EIP resource quotas

Inputs: region (required).

hcloud_list_elb_flavorshcloud_list_elb_flavorsB
Read-onlyIdempotent

List available ELB flavor specifications

Inputs: region (required).

hcloud_list_er_attachmentshcloud_list_er_attachmentsB
Read-onlyIdempotent

List attachments for a specific ER (Enterprise Router) router

Inputs: region (required), router_id (required), limit, offset.

hcloud_list_er_routershcloud_list_er_routersC
Read-onlyIdempotent

List ER (Enterprise Router) routers

Inputs: region (required), limit, offset.

hcloud_list_er_route_tableshcloud_list_er_route_tablesA
Read-onlyIdempotent

List route tables for a specific ER (Enterprise Router) router

Inputs: region (required), router_id (required), limit, offset.

hcloud_list_flavorshcloud_list_flavorsC
Read-onlyIdempotent

List available ECS instance flavors/specs

Inputs: region (required), availability_zone.

hcloud_list_gaussdb_datastoreshcloud_list_gaussdb_datastoresC
Read-onlyIdempotent

List available GaussDB (openGauss) DB engine versions

Inputs: region (required).

hcloud_list_gaussdb_flavorshcloud_list_gaussdb_flavorsC
Read-onlyIdempotent

List available GaussDB (openGauss) instance flavors/specs

Inputs: region (required), db_type.

hcloud_list_gaussdb_instanceshcloud_list_gaussdb_instancesC
Read-onlyIdempotent

List GaussDB (openGauss) instances

Inputs: region (required), limit, offset, db_type.

hcloud_list_groupshcloud_list_groupsC
Read-onlyIdempotent

List IAM user groups

Inputs: limit.

hcloud_list_health_monitorshcloud_list_health_monitorsC
Read-onlyIdempotent

List ELB health monitors

Inputs: region (required), limit.

hcloud_list_imageshcloud_list_imagesA
Read-onlyIdempotent

List available IMS images (essential for finding image_ref for ECS/CCE/AS)

Inputs: region (required), limit, status, os_type, +3 more.

hcloud_list_keypairshcloud_list_keypairsC
Read-onlyIdempotent

List SSH key pairs

Inputs: region (required).

hcloud_list_kms_key_detailhcloud_list_kms_key_detailB
Read-onlyIdempotent

Get details of a specific KMS key (state, creation date, etc.)

Inputs: key_id (required), region (required).

hcloud_list_kms_keyshcloud_list_kms_keysC
Read-onlyIdempotent

List KMS encryption keys

Inputs: region (required), limit.

hcloud_list_l7_policieshcloud_list_l7_policiesA
Read-onlyIdempotent

List ELB URL-based routing policies

Inputs: region (required), limit, listener_id.

hcloud_list_listenershcloud_list_listenersC
Read-onlyIdempotent

List ELB listeners

Inputs: region (required), limit, loadbalancer_id.

hcloud_list_load_balancershcloud_list_load_balancersC
Read-onlyIdempotent

List ELB load balancers

Inputs: region (required), limit.

hcloud_list_lts_groupshcloud_list_lts_groupsB
Read-onlyIdempotent

List LTS (Log Tank Service) log groups

Inputs: region (required), limit, offset.

hcloud_list_lts_streamshcloud_list_lts_streamsC
Read-onlyIdempotent

List LTS (Log Tank Service) log streams in a log group

Inputs: region (required), limit, offset, log_group_id.

hcloud_list_membershcloud_list_membersB
Read-onlyIdempotent

List backend members in an ELB pool

Inputs: region (required), pool_id (required), limit.

hcloud_list_metricshcloud_list_metricsC
Read-onlyIdempotent

List CES (Cloud Eye) metrics

Inputs: region (required), limit, namespace.

hcloud_list_mrs_clustershcloud_list_mrs_clustersC
Read-onlyIdempotent

List MRS (MapReduce Service) clusters

Inputs: region (required), limit, offset.

hcloud_list_mrs_flavorshcloud_list_mrs_flavorsA
Read-onlyIdempotent

List available MRS (MapReduce Service) cluster flavors/specs

Inputs: region (required).

hcloud_list_nat_gateway_dnat_ruleshcloud_list_nat_gateway_dnat_rulesC
Read-onlyIdempotent

List DNAT rules on a NAT gateway

Inputs: region (required), limit, nat_gateway_id.

hcloud_list_nat_gatewayshcloud_list_nat_gatewaysC
Read-onlyIdempotent

List NAT gateways

Inputs: region (required), limit.

hcloud_list_nat_gateway_snat_ruleshcloud_list_nat_gateway_snat_rulesC
Read-onlyIdempotent

List SNAT rules on a NAT gateway

Inputs: region (required), limit, nat_gateway_id.

hcloud_list_node_poolshcloud_list_node_poolsB
Read-onlyIdempotent

List node pools in a CCE cluster

Inputs: region (required), cluster_id (required).

hcloud_list_oms_sync_taskshcloud_list_oms_sync_tasksB
Read-onlyIdempotent

List OMS (Object Storage Migration Service) sync tasks

Inputs: region (required), limit, offset.

hcloud_list_oms_taskshcloud_list_oms_tasksB
Read-onlyIdempotent

List OMS (Object Storage Migration Service) tasks

Inputs: region (required), limit, offset, status.

hcloud_list_organizations_accountshcloud_list_organizations_accountsC
Read-onlyIdempotent

List Organizations accounts

Inputs: region (required), parent_id.

hcloud_list_organizations_oushcloud_list_organizations_ousC
Read-onlyIdempotent

List Organizations organizational units (OUs)

Inputs: region (required), parent_id.

hcloud_list_os_versionshcloud_list_os_versionsB
Read-onlyIdempotent

List available IMS OS versions (key for image selection)

Inputs: region (required).

hcloud_list_policieshcloud_list_policiesB
Read-onlyIdempotent

List IAM policies (system and custom)

Inputs: limit.

hcloud_list_poolshcloud_list_poolsB
Read-onlyIdempotent

List ELB backend server groups (pools)

Inputs: region (required), limit.

hcloud_list_projectshcloud_list_projectsB
Read-onlyIdempotent

List IAM projects

Inputs: no named parameters.

hcloud_list_public_ipshcloud_list_public_ipsC
Read-onlyIdempotent

List elastic public IPs

Inputs: region (required), limit.

hcloud_list_rds_backupshcloud_list_rds_backupsC
Read-onlyIdempotent

List RDS backups

Inputs: region (required), instance_id (required), limit.

hcloud_list_rds_datastoreshcloud_list_rds_datastoresB
Read-onlyIdempotent

List available RDS DB engine versions

Inputs: region (required), database_name (required).

hcloud_list_rds_flavorshcloud_list_rds_flavorsC
Read-onlyIdempotent

List RDS instance flavor/spec options

Inputs: region (required), database_name (required), version_name.

hcloud_list_rds_instanceshcloud_list_rds_instancesC
Read-onlyIdempotent

List RDS database instances

Inputs: region (required), limit.

hcloud_list_rds_storage_typeshcloud_list_rds_storage_typesB
Read-onlyIdempotent

List supported RDS storage types per engine/version

Inputs: region (required), version_name (required), database_name (required).

hcloud_list_rgc_control_policieshcloud_list_rgc_control_policiesC
Read-onlyIdempotent

List RGC control policies

Inputs: region (required), limit, offset.

hcloud_list_route_tableshcloud_list_route_tablesC
Read-onlyIdempotent

List route tables

Inputs: region (required), limit, vpc_id.

hcloud_list_scaling_configshcloud_list_scaling_configsC
Read-onlyIdempotent

List AS (Auto Scaling) configurations

Inputs: region (required), limit.

hcloud_list_scaling_groupshcloud_list_scaling_groupsC
Read-onlyIdempotent

List AS (Auto Scaling) groups

Inputs: region (required), limit.

hcloud_list_scaling_instanceshcloud_list_scaling_instancesC
Read-onlyIdempotent

List instances currently in AS groups

Inputs: region (required), scaling_group_id (required).

hcloud_list_scaling_policieshcloud_list_scaling_policiesC
Read-onlyIdempotent

List AS (Auto Scaling) policies

Inputs: region (required), scaling_group_id (required), limit.

hcloud_list_security_group_ruleshcloud_list_security_group_rulesC
Read-onlyIdempotent

List security group rules

Inputs: region (required), limit, security_group_id.

hcloud_list_security_groupshcloud_list_security_groupsB
Read-onlyIdempotent

List security groups

Inputs: region (required), limit.

hcloud_list_server_block_deviceshcloud_list_server_block_devicesB
Read-onlyIdempotent

List block devices (volumes) attached to an ECS server

Inputs: region (required), server_id (required).

hcloud_list_server_interfaceshcloud_list_server_interfacesB
Read-onlyIdempotent

List network interfaces attached to an ECS server

Inputs: region (required), server_id (required).

hcloud_list_servershcloud_list_serversB
Read-onlyIdempotent

List ECS cloud servers with optional filters

Inputs: region (required), name, limit, offset, +2 more.

hcloud_list_smn_subscriptionshcloud_list_smn_subscriptionsC
Read-onlyIdempotent

List SMN subscriptions

Inputs: region (required), limit, topic_urn.

hcloud_list_smn_topicshcloud_list_smn_topicsB
Read-onlyIdempotent

List SMN (Simple Message Notification) topics

Inputs: region (required), limit, offset.

hcloud_list_sms_migration_projectshcloud_list_sms_migration_projectsB
Read-onlyIdempotent

List SMS (Server Migration Service) migration projects

Inputs: region (required), limit, offset.

hcloud_list_sms_servershcloud_list_sms_serversC
Read-onlyIdempotent

List SMS (Server Migration Service) source servers

Inputs: region (required), name, limit, state, +1 more.

hcloud_list_sms_taskshcloud_list_sms_tasksB
Read-onlyIdempotent

List SMS (Server Migration Service) migration tasks

Inputs: region (required), name, limit, state, +1 more.

hcloud_list_snapshotshcloud_list_snapshotsB
Read-onlyIdempotent

List EVS volume snapshots

Inputs: region (required), limit.

hcloud_list_subnetshcloud_list_subnetsC
Read-onlyIdempotent

List subnets

Inputs: region (required), limit, vpc_id.

hcloud_list_swr_namespaceshcloud_list_swr_namespacesC
Read-onlyIdempotent

List SWR (Software Repository for Containers) namespaces with optional filters

Inputs: region (required), limit, offset.

hcloud_list_swr_repositorieshcloud_list_swr_repositoriesC
Read-onlyIdempotent

List SWR repositories with optional filters

Inputs: region (required), limit, offset, namespace.

hcloud_list_swr_tagshcloud_list_swr_tagsB
Read-onlyIdempotent

List tags for a specific SWR repository

Inputs: region (required), repository (required), namespace.

hcloud_list_user_policieshcloud_list_user_policiesC
Read-onlyIdempotent

List policies attached to an IAM user

Inputs: user_id (required).

hcloud_list_usershcloud_list_usersC
Read-onlyIdempotent

List IAM users

Inputs: limit.

hcloud_list_volumeshcloud_list_volumesC
Read-onlyIdempotent

List EVS disk volumes

Inputs: region (required), limit.

hcloud_list_volume_typeshcloud_list_volume_typesB
Read-onlyIdempotent

List available EVS volume types

Inputs: region (required).

hcloud_list_vpcshcloud_list_vpcsC
Read-onlyIdempotent

List VPCs in the region

Inputs: region (required), limit, offset.

hcloud_list_vpn_connectionshcloud_list_vpn_connectionsB
Read-onlyIdempotent

List VPN connections with optional filters

Inputs: region (required), limit, offset, vgw_id.

hcloud_list_vpn_customer_gatewayshcloud_list_vpn_customer_gatewaysC
Read-onlyIdempotent

List VPN customer gateways (CGWs) with optional filters

Inputs: region (required), limit, offset.

hcloud_list_vpn_gatewayshcloud_list_vpn_gatewaysB
Read-onlyIdempotent

List VPN gateways (VGWs) with optional filters

Inputs: region (required), limit, offset, vgw_id.

hcloud_list_vpn_ike_policieshcloud_list_vpn_ike_policiesC
Read-onlyIdempotent

List VPN IKE policies

Inputs: region (required).

hcloud_list_vpn_ipsec_policieshcloud_list_vpn_ipsec_policiesC
Read-onlyIdempotent

List VPN IPsec policies

Inputs: region (required).

hcloud_obs_cathcloud_obs_catB
Read-onlyIdempotent

View content of a text object in OBS

Inputs: key (required), bucket (required), region (required).

hcloud_obs_lshcloud_obs_lsB
Read-onlyIdempotent

List OBS buckets or objects in a bucket

Inputs: region (required), brief, limit, bucket, +1 more.

hcloud_obs_stathcloud_obs_statC
Read-onlyIdempotent

Show properties of an OBS bucket or object

Inputs: bucket (required), region (required), key.

hcloud_show_bss_account_balancehcloud_show_bss_account_balanceB
Read-onlyIdempotent

Show BSS (Billing and Subscription) account balance

Inputs: no named parameters.

hcloud_show_cbr_vaulthcloud_show_cbr_vaultA
Read-onlyIdempotent

Get details of a specific CBR (Cloud Backup and Recovery) vault

Inputs: region (required), vault_id (required).

hcloud_show_cce_clusterhcloud_show_cce_clusterC
Read-onlyIdempotent

Get details of a specific CCE cluster

Inputs: region (required), cluster_id (required).

hcloud_show_dcs_instancehcloud_show_dcs_instanceB
Read-onlyIdempotent

Get details of a specific DCS (Redis) instance

Inputs: region (required), instance_id (required).

hcloud_show_dns_zonehcloud_show_dns_zoneC
Read-onlyIdempotent

Get details of a specific DNS zone

Inputs: region (required), zone_id (required), zone_type.

hcloud_show_drs_jobhcloud_show_drs_jobB
Read-onlyIdempotent

Get details of a specific DRS job

Inputs: job_id (required), region (required).

hcloud_show_dws_clusterhcloud_show_dws_clusterB
Read-onlyIdempotent

Get details of a specific DWS (GaussDB Data Warehouse) cluster

Inputs: region (required), cluster_id (required).

hcloud_show_er_routerhcloud_show_er_routerC
Read-onlyIdempotent

Get details of a specific ER (Enterprise Router) router

Inputs: region (required), router_id (required).

hcloud_show_gaussdb_instancehcloud_show_gaussdb_instanceC
Read-onlyIdempotent

Get details of a specific GaussDB (openGauss) instance

Inputs: region (required), instance_id (required).

hcloud_show_imagehcloud_show_imageB
Read-onlyIdempotent

Get details of a specific IMS image (min_ram, min_disk, status)

Inputs: region (required), image_id (required).

hcloud_show_image_quotashcloud_show_image_quotasC
Read-onlyIdempotent

Show IMS image resource quotas

Inputs: region (required).

hcloud_show_load_balancerhcloud_show_load_balancerB
Read-onlyIdempotent

Get details of a specific load balancer

Inputs: region (required), loadbalancer_id (required).

hcloud_show_load_balancer_topologyhcloud_show_load_balancer_topologyB
Read-onlyIdempotent

Show load balancer topology tree (listeners, pools, members)

Inputs: region (required), loadbalancer_id (required).

hcloud_show_metric_datahcloud_show_metric_dataC
Read-onlyIdempotent

Show CES (Cloud Eye) metric data points

Inputs: to (required), dim_0 (required), from_ (required), filter (required), +4 more.

hcloud_show_mrs_clusterhcloud_show_mrs_clusterB
Read-onlyIdempotent

Get details of a specific MRS (MapReduce Service) cluster

Inputs: region (required), cluster_id (required).

hcloud_show_nat_gatewayhcloud_show_nat_gatewayC
Read-onlyIdempotent

Get details of a specific NAT gateway

Inputs: region (required), nat_gateway_id (required).

hcloud_show_node_poolhcloud_show_node_poolC
Read-onlyIdempotent

Get details of a specific CCE node pool

Inputs: region (required), cluster_id (required), nodepool_id (required).

hcloud_show_oms_taskhcloud_show_oms_taskB
Read-onlyIdempotent

Get details of a specific OMS (Object Storage Migration Service) task

Inputs: region (required), task_id (required).

hcloud_show_public_iphcloud_show_public_ipC
Read-onlyIdempotent

Get details of a specific elastic public IP

Inputs: region (required), publicip_id (required).

hcloud_show_quotahcloud_show_quotaC
Read-onlyIdempotent

Show VPC resource quotas

Inputs: region (required).

hcloud_show_scaling_confighcloud_show_scaling_configC
Read-onlyIdempotent

Get details of a specific AS configuration

Inputs: region (required), scaling_configuration_id (required).

hcloud_show_scaling_grouphcloud_show_scaling_groupB
Read-onlyIdempotent

Get details of a specific AS group

Inputs: region (required), scaling_group_id (required).

hcloud_show_scaling_policyhcloud_show_scaling_policyB
Read-onlyIdempotent

Get details of a specific AS policy

Inputs: region (required), scaling_policy_id (required).

hcloud_show_security_grouphcloud_show_security_groupC
Read-onlyIdempotent

Get details of a specific security group

Inputs: region (required), security_group_id (required).

hcloud_show_serverhcloud_show_serverC
Read-onlyIdempotent

Get details of a specific ECS server

Inputs: region (required), server_id (required).

hcloud_show_server_limitshcloud_show_server_limitsC
Read-onlyIdempotent

Show ECS quota/limits for the tenant

Inputs: region (required).

hcloud_show_sms_serverhcloud_show_sms_serverB
Read-onlyIdempotent

Get details of a specific SMS (Server Migration Service) source server

Inputs: region (required), server_id (required).

hcloud_show_sms_taskhcloud_show_sms_taskC
Read-onlyIdempotent

Get details of a specific SMS (Server Migration Service) migration task

Inputs: region (required), task_id (required).

hcloud_show_snapshothcloud_show_snapshotA
Read-onlyIdempotent

Get details of a specific EVS snapshot

Inputs: region (required), snapshot_id (required).

hcloud_show_subnethcloud_show_subnetB
Read-onlyIdempotent

Get details of a specific subnet

Inputs: region (required), subnet_id (required).

hcloud_show_swr_domainhcloud_show_swr_domainB
Read-onlyIdempotent

Show the SWR login domain for the tenant

Inputs: region (required).

hcloud_show_userhcloud_show_userB
Read-onlyIdempotent

Get details of a specific IAM user

Inputs: user_id (required).

hcloud_show_volumehcloud_show_volumeA
Read-onlyIdempotent

Get details of a specific EVS volume

Inputs: region (required), volume_id (required).

hcloud_show_vpchcloud_show_vpcC
Read-onlyIdempotent

Get details of a specific VPC

Inputs: region (required), vpc_id (required).

hcloud_show_vpn_connectionhcloud_show_vpn_connectionB
Read-onlyIdempotent

Get details of a specific VPN connection

Inputs: region (required), connection_id (required).

hcloud_show_vpn_gatewayhcloud_show_vpn_gatewayB
Read-onlyIdempotent

Get details of a specific VPN gateway (VGW)

Inputs: region (required), vgw_id (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.7/5.0

    Scored across 150 tools

    Disambiguation3/5

    Most tools are service-prefixed and target distinct resources, but the generic hcloud_cli tool overlaps every specialized tool by allowing arbitrary operations. There are also near-duplicates such as list_alarms vs list_alarm_rules and OBS-specific tools vs CLI-based OBS access, so boundaries are not fully clean.

    Naming Consistency4/5

    The set mostly follows a clear hcloud_<verb>_<resource> pattern, such as hcloud_list_servers and hcloud_show_server. Minor deviations exist: hcloud_cli, the Unix-style hcloud_obs_ls/stat/cat names, and hcloud_list_kms_key_detail acting like a detail getter.

    Tool Count1/5

    150 tools is far beyond a practical agent-sized tool set, even for a broad cloud provider. Many services are represented only by list/show tools, so the large count is not matched by deep structured operations and creates an overwhelming selection surface.

    Completeness3/5

    The server provides broad read-only inventory coverage across many Huawei Cloud services, and hcloud_cli acts as a catch-all for gaps. However, the specialized tools omit create/update/delete, start/stop, attach/detach, and many lifecycle operations, so the structured surface is notably incomplete for management tasks.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers