UpCloud MCP by usefulapi
Inspect servers, storage, networks, databases and billing, and start, stop or back up servers.
Connect it
Settings → Connectors → Add custom connector
URL: https://upcloud.usefulapi.io/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://upcloud.usefulapi.io/mcp{
"mcpServers": {
"upcloud": {
"url": "https://upcloud.usefulapi.io/mcp"
}
}
}claude mcp add --transport http upcloud https://upcloud.usefulapi.io/mcp{
"servers": {
"upcloud": {
"type": "http",
"url": "https://upcloud.usefulapi.io/mcp"
}
}
}22 tools, verified live
upcloud_get_accountread-onlyThe calling account: username, remaining credits and resource limits (cores, memory, storage per tier, IPs, networks, managed services). A cheap way to confirm the token works. UpCloud: GET /1.3/account.
upcloud_list_zonesread-onlyAvailable zones (data centres) with id (e.g. fi-hel1, de-fra1, us-chi1), description and whether they are public or private-cloud. Zone ids are used by every other resource. UpCloud: GET /1.3/zone.
upcloud_list_plansread-onlyFixed-price server plans: name (e.g. 2xCPU-4GB), cores, memory, included storage size/tier and transfer, plus GPU model/amount for GPU plans. UpCloud: GET /1.3/plan.
upcloud_list_pricesread-onlyThe price list per zone in the account's currency: per-hour prices for plans, cores, memory, storage tiers, backups, IPv4 addresses and traffic. UpCloud: GET /1.3/price.
upcloud_get_billing_summaryread-onlyBilling summary for one month with per-resource details (servers, storages, managed databases, object storage, …: amount, hours, plan, zone, labels) and totals. Needs an account allowed to read billing. UpCloud: GET /1.3/account/billing/summary/{yearmonth}.
upcloud_list_serversread-onlyCloud servers on the account (summary: uuid, title, hostname, zone, plan, cores, memory, state, tags, labels). Filter by state, a free-text search (name, title, uuid, zone, IP, hostname, tag or template), tags or labels. Use upcloud_get_server for IPs and disks. UpCloud: GET /1.3/server.
upcloud_get_serverread-onlyFull details of one server: state, plan, cores/memory, network interfaces and IP addresses, attached storage devices, firewall on/off, simple-backup schedule, labels, tags and remote-access settings. UpCloud: GET /1.3/server/{uuid}.
upcloud_list_storagesread-onlyStorage devices: disks, backups, CD-ROM images and OS templates (uuid, title, type, tier, size GB, state, zone, labels). Narrow by `kind`: private (yours), public (UpCloud-provided), normal (disks), backup, cdrom, template or favorite. UpCloud: GET /1.3/storage[/{kind}].
upcloud_get_storageread-onlyDetails of one storage: size, tier, state (e.g. online, backuping), encryption, the servers it is attached to, its backups and backup_rule. Poll this to follow a backup started with upcloud_create_storage_backup. UpCloud: GET /1.3/storage/{uuid}.
upcloud_list_ip_addressesread-onlyEvery IP address on the account: address, family (IPv4/IPv6), access (public/utility/private), the server it is assigned to, zone, PTR record, floating flag and release policy. UpCloud: GET /1.3/ip_address.
upcloud_list_firewall_rulesread-onlyThe firewall rules of one server in evaluation order (position, direction, action, family, protocol, address and port ranges, comment). Whether the firewall is enabled at all is the `firewall` field of upcloud_get_server. UpCloud: GET /1.3/server/{uuid}/firewall_rule.
upcloud_list_networksread-onlyNetworks visible to the account — public, utility and private SDN networks — with their IP subnets, DHCP settings, routes, attached servers and peerings. Optionally only one zone. UpCloud: GET /1.3/network/.
upcloud_list_databasesread-onlyManaged Database services (PostgreSQL, MySQL, Valkey, OpenSearch): uuid, title, type, plan, zone, state, component hosts/ports, backups and labels. Note the response can include connection URIs with credentials. UpCloud: GET /1.3/database.
upcloud_list_load_balancersread-onlyManaged Load Balancer services with their frontends, backends and members, networks, plan, zone, configured status and operational state. UpCloud: GET /1.3/load-balancer.
upcloud_list_kubernetes_clustersread-onlyManaged Kubernetes clusters: name, uuid, zone, plan, state, network/CIDR, control-plane IP filter, labels and node groups (plan, count, state). UpCloud: GET /1.3/kubernetes.
upcloud_list_object_storagesread-onlyManaged Object Storage (S3-compatible) services: uuid, name, region, configured status and operational state, public/private endpoints, custom domains and labels. UpCloud: GET /1.3/object-storage-2.
upcloud_list_audit_logsread-onlySecurity audit trail of the account (up to 180 days): who did what to which resource, when, from which IP and via API or Hub. Filter by action, origin, resource type, time window or a keyword (UUID, username or IP). Returns total_count for paging. UpCloud: GET /1.3/audit-logs.
upcloud_start_servercan modifyStart a stopped server (billing for a started server resumes). Fails with 409 if it is not stopped. `async` returns immediately — poll upcloud_get_server for state=started. UpCloud: POST /1.3/server/{uuid}/start.
upcloud_stop_servercan modifyDISRUPTIVE: stop a running server — it goes offline until started again with upcloud_start_server. soft (default) sends an ACPI shutdown; with a timeout, a hard stop follows if it is still running. hard is like pulling the plug and can lose unsaved data. UpCloud: POST /1.3/server/{uuid}/stop.
upcloud_restart_servercan modifyDISRUPTIVE: stop and start a running server. soft (default) needs a timeout: after it, timeout_action=destroy hard-stops and restarts, ignore (API default) aborts and leaves the server running. hard power-cycles immediately. UpCloud: POST /1.3/server/{uuid}/restart.
upcloud_create_storage_backupcan modifyTake an on-demand, point-in-time backup of a storage device. Additive (nothing is overwritten) but backups are billed per GB. Asynchronous: the storage goes to a backuping/maintenance state and back to online — poll upcloud_get_storage. UpCloud: POST /1.3/storage/{uuid}/backup.
upcloud_modify_servercan modifyChange a server's title, hostname and/or simple-backup schedule. Only these reversible fields are exposed — no resizing or plan change (billing) and no firewall toggle. simple_backup is `HHMM,daily|dailies|weeklies|monthlies` (UTC time) or `no` to disable. UpCloud: PUT /1.3/server/{uuid}.
Alternatives in Databases & Data
Compare →
Moltline RecallB
A portable knowledge-graph memory you pass in and get back. No database. 4 of 6 free.
Moltline Data DeskB
Paste-your-data analytics: CSV profiling, A/B tests, correlation, growth. 4 of 7 free.
AHAtlarium Habitat Database MCPB
Structured habitat data and advisory tools for aquariums, marine tanks, terrariums and paludariums.
DABYTE AI Visibility IndexB
Measured share of answer for 20 SaaS brands. An open dataset, not an audit of your site.
OBOlympus Bets AnalyticsB
Quant sports analytics: 19 read-only tools across 12 leagues, projections, methods, track record.
IAImageKit AdminB
Official ImageKit admin server: manage origins, URL endpoints, account usage and usage analytics.