List Civo instances, Kubernetes clusters, networks and DNS; reboot instances, add rules. Hosted by usefulapi — connect from Claude, Cursor, or any MCP client.
Add to your MCP config, then reload & authorize:
{
"mcpServers": {
"civo": {
"url": "https://civo.usefulapi.io/mcp"
}
}
}| Tool | Type | What it does |
|---|---|---|
civo_list_regions | read | List regions List the Civo regions available to the account, with which one is the default, whether each is out of capacity, and the features each supports (IaaS, Kubernetes, object store, load balancers, GPU, databases). A cheap way to confirm the API key works. Civo: GET /v2/regions. |
civo_get_quota | read | Get account quota The account's limits and current usage: instances, CPU cores, RAM, disk, volumes, snapshots, public IPs, networks, firewalls and rules, load balancers, object storage and databases. Answers 'can I launch another one?'. Civo: GET /v2/quota. |
civo_list_charges | read | List charges List billable usage for a period: each resource's product code, label, region, time span and hours (size_gb for volumes). The range may be at most 31 days; defaults to the start of the current month until now. Civo: GET /v2/charges. |
civo_list_instance_sizes | read | List sizes List the sizes (plans) that can be launched — instances, Kubernetes nodes and databases — with CPU cores, RAM, disk, transfer allowance and GPU. Civo: GET /v2/sizes. |
civo_list_instances | read | List instances List compute instances in a region, optionally filtered by tags. Paginated: returns {page, per_page, pages, items}. Passwords are redacted. Civo: GET /v2/instances. |
civo_get_instance | read | Get one instance Fetch one instance: status, size, CPU/RAM/disk, public and private IPs, network, firewall, tags, attached volumes and source image. Passwords are redacted. Civo: GET /v2/instances/{id}. |
civo_list_kubernetes_clusters | read | List Kubernetes clusters List the Kubernetes (K3s/Talos) clusters in a region with status, version, node pools, API endpoint and installed applications. Paginated: {page, per_page, pages, items}. Kubeconfigs are redacted. Civo: GET /v2/kubernetes/clusters. |
civo_get_kubernetes_cluster | read | Get one Kubernetes cluster Fetch one Kubernetes cluster: status, readiness, conditions, version and available upgrade, pools and their instances, network, firewall, CNI and installed marketplace apps. The kubeconfig is redacted. Civo: GET /v2/kubernetes/clusters/{id}. |
civo_list_networks | read | List networks List the private networks in a region: label, CIDR, whether it is the default network, status and nameservers. Civo: GET /v2/networks. |
civo_list_firewalls | read | List firewalls List the firewalls in a region with their network, rule count and how many instances, clusters and load balancers use each. Civo: GET /v2/firewalls. |
civo_list_firewall_rules | read | List a firewall's rules List the rules of one firewall: protocol, port range, CIDRs, direction (ingress/egress), action (allow/deny) and label — the answer to 'what is exposed to the internet?'. Civo: GET /v2/firewalls/{id}/rules. |
civo_list_load_balancers | read | List load balancers List the load balancers in a region: algorithm, backends (IP, protocol, source/target ports), public IP, state and the Kubernetes service each fronts. Civo: GET /v2/loadbalancers. |
civo_list_volumes | read | List volumes List the block-storage volumes in a region: size, status, type, and the instance or cluster each is attached to (unattached volumes still bill). Civo: GET /v2/volumes. |
civo_list_databases | read | List databases List the managed databases (MySQL, PostgreSQL) in a region: software and version, size, nodes, IPs, port, network, firewall and status. Paginated: {page, per_page, pages, items}. Passwords are redacted. Civo: GET /v2/databases. |
civo_list_dns_domains | read | List DNS domains List the domains whose DNS Civo hosts for the account. Civo: GET /v2/dns. |
civo_list_dns_records | read | List DNS records List the records of one hosted domain (name, type, value, priority, TTL), optionally filtered by type or name. Civo: GET /v2/dns/{domain_id}/records. |
civo_reboot_instance | write | Reboot an instance Reboot one instance. `soft` (default) asks the OS to restart cleanly; `hard` cuts power and boots it again, like pulling the plug — use only when soft does not work. Causes brief downtime. Civo: POST /v2/instances/{id}/soft_reboots or /hard_reboots. |
civo_stop_instance | write | Stop an instance Power off one instance. Anything it serves goes offline until it is started again with civo_start_instance. A stopped instance is still billed. Civo: PUT /v2/instances/{id}/stop. |
civo_start_instance | write | Start an instance Boot a stopped instance. Undoes civo_stop_instance. Civo: PUT /v2/instances/{id}/start. |
civo_set_instance_tags | write | Set an instance's tags REPLACE the full tag list of one instance (tags are used for filtering and by load-balancer instance pools, so changing them can move an instance in or out of a pool). Pass the complete desired list; an empty list clears all tags. Civo: PUT /v2/instances/{id}/tags. |
civo_create_firewall_rule | write | Add a firewall rule Add one rule to a firewall — e.g. allow TCP 443 ingress from 0.0.0.0/0. This changes what is reachable on every instance, cluster and load balancer using the firewall, so prefer narrow CIDRs. Undo by deleting the rule in the Civo dashboard or CLI. Civo: POST /v2/firewalls/{id}/rules. |
civo_create_dns_record | write | Add a DNS record Add one record to a Civo-hosted domain. Live DNS changes propagate to the world; undo by deleting the record in the Civo dashboard or CLI. Civo: POST /v2/dns/{domain_id}/records. |
civo_usage_status | Usage status (free-tier meter) Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter. | |
civo_upgrade | Upgrade to Pro (unlimited) Subscribe to the Pro plan for UNLIMITED Civo tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter. |
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 100 tool calls / month |
| Proper user | $9/mo · $90/yr | Unlimited |
This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.