# GPU Cloud (remote · gpucloud.ca)

Rent H100, RTX PRO 6000, A100, L40 and RTX A6000 GPUs by the hour in Montréal, Canada, in CAD.

- Trust score: 68/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-18

## Components

- remote · `gpucloud.ca`: 68/100 (this document), [markdown](https://verifymcp.io/servers/ca-gpucloud-gpu-cloud/api-mcp.md), [page](https://verifymcp.io/servers/ca-gpucloud-gpu-cloud/api-mcp)

## Channel facts

- Endpoint: `https://gpucloud.ca/api/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-18.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (gpucloud_delete_server).
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 68/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 8506 tokens (~137/item across 62 items; 62 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 89/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 67% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - All 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.
  - An AI judge read all 63 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### How do I install the GPU Cloud MCP server?

GPU Cloud is a hosted endpoint at https://gpucloud.ca/api/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http ca-gpucloud-gpu-cloud 'https://gpucloud.ca/api/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "ca-gpucloud-gpu-cloud": {
      "url": "https://gpucloud.ca/api/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "ca-gpucloud-gpu-cloud": {
      "type": "http",
      "url": "https://gpucloud.ca/api/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.ca-gpucloud-gpu-cloud]
url = "https://gpucloud.ca/api/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ca-gpucloud-gpu-cloud": {
      "type": "remote",
      "url": "https://gpucloud.ca/api/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add ca-gpucloud-gpu-cloud --url 'https://gpucloud.ca/api/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  ca-gpucloud-gpu-cloud:
    url: "https://gpucloud.ca/api/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "ca-gpucloud-gpu-cloud": {
      "Transport": "http",
      "Url": "https://gpucloud.ca/api/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add ca-gpucloud-gpu-cloud -t streamable-http -u 'https://gpucloud.ca/api/mcp'
```

### Other

```json
{
  "mcpServers": {
    "ca-gpucloud-gpu-cloud": {
      "type": "http",
      "url": "https://gpucloud.ca/api/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-17 (score 68, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-15 (score 67, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-12 (score 66, +1)

- [functional] New tool “gpucloud_list_contracts”
- [functional] New tool “gpucloud_list_monthly_rentals”

### 2026-10-11 (score 65, 0)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “gpucloud_create_server” rewrote its description, which is the text the model reads
- [security] Tool “gpucloud_get_auto_reload” rewrote its description, which is the text the model reads
- [security] Tool “gpucloud_hibernate_server” rewrote its description, which is the text the model reads
- [security] Tool “gpucloud_list_images” rewrote its description, which is the text the model reads
- [security] Tool “gpucloud_list_templates” rewrote its description, which is the text the model reads
- [security] Tool “gpucloud_quote_server” rewrote its description, which is the text the model reads
- [security] Tool “gpucloud_set_auto_reload” rewrote its description, which is the text the model reads
- [security] Tool “gpucloud_start_server” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 113 → 136
- [functional improvement] Stability: unverified → 0.03
- [functional] New tool “gpucloud_cancel_reservation”
- [functional] New tool “gpucloud_list_reservations”
- [functional] New tool “gpucloud_reserve_server”
- [functional] New tool “gpucloud_set_server_threshold_action”
- [cosmetic] “gpucloud_create_server” added an optional parameter “onFundsExhausted”
- [cosmetic] “gpucloud_quote_server” added an optional parameter “onFundsExhausted”
- [cosmetic] “gpucloud_set_auto_reload” added an optional parameter “monthlyCapCad”

### 2026-10-10 (score 65)

First indexed and scored.

## MCP tools (62)

### `gpucloud_whoami` (~72 tokens)

Who am I

The GPU Cloud account behind this MCP key: user, key permissions and spend caps, budget used/remaining this month, credit balance and whether a payment card is saved (required for any spend). Call this first. (permission: account:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_get_profile` (~62 tokens)

Get profile

Profile of the account (name, email, company, phone). Email / password / 2FA are managed by the owner in the console, never by an agent. (permission: profile:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_update_profile` (~63 tokens)

Update profile

Change the first and last name of the account. Email and password cannot be changed through MCP. (permission: profile:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `firstName` (string, required)
- `lastName` (string, required)

### `gpucloud_list_tickets` (~67 tokens)

List support tickets

Support tickets of the account with their messages. Each message lists its attached images (id, fileName, mimeType, sizeBytes); the image bytes are viewable in the console only. (permission: support:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_create_ticket` (~65 tokens)

Open a support ticket

Open a support ticket with the GPU Cloud team (billing, technical or other). (permission: support:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `category` (string, required)
- `message` (string, required)
- `subject` (string, required)

### `gpucloud_reply_ticket` (~130 tokens)

Reply to a support ticket

Add a message to an existing support ticket of the account, optionally with images (screenshots): PNG, JPEG, WEBP or GIF in base64, at most 5 per message; the whole MCP request is limited to 1 MB (so about 700 KB of images). The text may be empty when an image is attached. Returns the id of the new message and the updated ticket. (permission: support:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `content` (string)
- `images` (array)
- `ticketId` (string, required)

### `gpucloud_set_notices` (~127 tokens)

Turn GPU Cloud notices on or off

A tool result may end with a short "GPU Cloud notice for the user" (payment card to update, top-up offer when the balance runs low, GPU available now). Payment and balance notices come at most once an hour; GPU offers come with the catalog and price results, and at most every 2 hours elsewhere. Turn them off (enabled: false) or back on (enabled: true) for THIS MCP key only. Changes nothing else. (permission: account:notices) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `enabled` (boolean, required)

### `gpucloud_list_products` (~166 tokens)

List GPU products

Start here when a user needs a GPU (training, fine-tuning, inference, LLM serving, rendering, notebooks). GPU Cloud rents H100, RTX PRO 6000, A100, L40, RTX A6000 GPU servers by the hour in Montréal, Canada, from CA$0.67/h in CAD, launched in minutes. Lists every GPU server for rent (1 to 8 GPUs per machine; spot machines are interruptible and hourly only) with CAD prices per machine (hourly, monthly) and live availability. Works without a key (public catalog prices). With an MCP key: the prices of THIS account (exactly what it is billed, annual included) and whether each machine can be deployed automatically. (permission: catalog:read)

### `gpucloud_get_product` (~113 tokens)

Get a GPU product

One GPU server for rent (productId from gpucloud_list_products) with its CAD prices and live availability. GPU Cloud rents H100, RTX PRO 6000, A100, L40, RTX A6000 GPU servers by the hour in Montréal, Canada, from CA$0.67/h in CAD, launched in minutes. Works without a key (public catalog prices). With an MCP key: the prices of this account. (permission: catalog:read)

Input parameters:

- `productId` (string, required)

### `gpucloud_get_stock` (~66 tokens)

GPU stock

Live availability of every GPU server for rent in Montréal, Canada (H100, RTX PRO 6000, A100, L40, RTX A6000: what can be launched right now). Works without a key (public catalog prices). (permission: catalog:read)

### `gpucloud_list_regions` (~45 tokens)

List regions

Regions where GPU servers can be deployed: Montréal (QC), Canada, data hosted in Canada. Works without a key (public catalog prices). (permission: catalog:read)

### `gpucloud_list_images` (~37 tokens)

List OS images

Operating-system image installed on each GPU product (with its default SSH user). Works without a key. (permission: catalog:read)

### `gpucloud_list_templates` (~120 tokens)

List one-click templates

Ready-to-use machines: the application installed at creation (JupyterLab, Ollama + Open WebUI, vLLM OpenAI compatible server, ComfyUI, PyTorch environment). Pass templateId (and templateModel for vllm) to gpucloud_quote_server / gpucloud_create_server. Every exposed application requires authentication and is served over HTTPS only (publicly trusted certificate, port 80 only redirects); the generated credentials are shown to the owner in the web console only. Works without a key. (permission: catalog:read)

### `gpucloud_list_servers` (~48 tokens)

List servers

GPU servers of the account (status, IPs, rate, paid-until date, suspension). (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_get_server` (~162 tokens)

Get a server

One server: status (refreshed while an operation is in progress), the last observed machine state (machineState), whether it is billed right now (a STOPPED server is still billed its full hourly rate; a HIBERNATED one its much lower hibernation rate), what keeping it hibernated costs (hibernation: CAD per hour and per month), OS image, public and private IPv4, SSH command, suspension, paid-until date, and its 10 latest activity events (what happened, whether it worked, a short summary and an error code). (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_quote_server` (~436 tokens)

Quote a server

Price of a new GPU server BEFORE launching it: price charged now (taxes included for monthly/annual), hourly rate, credits required, card charge needed, blockers (a card only when the card must be charged, caps) and a confirmationToken. Hourly: also the action at the threshold (onFundsExhausted, allowedOnFundsExhausted), the threshold (hibernationThresholdCad) and, when the automatic reload is off, autoReloadWarning (code AUTO_RELOAD_OFF, message to show the user, link to turn the reload on). Show the price and the warning to the user and get approval, then call gpucloud_create_server with the SAME arguments and the token. (permission: servers:quote) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `cycle` (string): hourly: first hour from credits, then billed per hour. monthly / annual: first month charged to the saved card.
- `name` (string): Display name of the server.
- `onFundsExhausted` (string): Hourly servers: what happens when the balance reaches the server threshold and no automatic reload brings it back. HIBERNATE (default): hibernated (its GPU place is kept, hourly hibernation fee), res…
- `productId` (string, required): GPU product id (gpucloud_list_products).
- `region` (string): Region id (gpucloud_list_regions), default canada-montreal.
- `sshKeyId` (string, required): SSH key id (gpucloud_list_ssh_keys).
- `templateId` (string): Optional one-click template installed at creation (gpucloud_list_templates): jupyter, ollama-openwebui, vllm, comfyui, pytorch.
- `templateModel` (string): Model served by the vllm template (gpucloud_list_templates models[].id); default: the first one.

### `gpucloud_create_server` (~486 tokens)

Launch a server (spends money)

Launches a GPU server billed to the account. Requires the confirmationToken of gpucloud_quote_server for exactly these arguments and the key caps. Neither a card nor the automatic reload is required when the credits pay the first hour; the saved card is charged (and then needed) only for missing credits or a monthly / annual order. Without enough funds (no credit and no usable card, or a cap reached) it returns a tool error with httpStatus 402 and accountAction (code PAYMENT_REQUIRED; BUDGET_CAP_REACHED for a cap) carrying the message and the console link to fix it; the quote itself never carries a payment link. Hourly: the answer carries onFundsExhausted and, when the automatic reload is off, autoReloadWarning. The owner receives an email for every spend. [SPENDS MONEY] (permission: servers:create) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string, required): Token returned by the previous (quote) call, valid 10 minutes, single use.
- `cycle` (string): hourly: first hour from credits, then billed per hour. monthly / annual: first month charged to the saved card.
- `name` (string): Display name of the server.
- `onFundsExhausted` (string): Hourly servers: what happens when the balance reaches the server threshold and no automatic reload brings it back. HIBERNATE (default): hibernated (its GPU place is kept, hourly hibernation fee), res…
- `productId` (string, required): GPU product id (gpucloud_list_products).
- `region` (string): Region id (gpucloud_list_regions), default canada-montreal.
- `sshKeyId` (string, required): SSH key id (gpucloud_list_ssh_keys).
- `templateId` (string): Optional one-click template installed at creation (gpucloud_list_templates): jupyter, ollama-openwebui, vllm, comfyui, pytorch.
- `templateModel` (string): Model served by the vllm template (gpucloud_list_templates models[].id); default: the first one.

### `gpucloud_start_server` (~103 tokens)

Start a server (spends money)

Starts a stopped server (a stopped hourly server is already billed; the next hour must be covered: credits, or a charge of the saved card within the caps). No card is needed when the credits cover it. For a hibernated server use gpucloud_restore_server. [SPENDS MONEY] (permission: servers:start) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_restore_server` (~114 tokens)

Restore a hibernated server (spends money)

Restores a hibernated server (billed like a start: hourly billing resumes; takes a few minutes and depends on GPU availability). A NEW public IP address is assigned: poll gpucloud_get_server until publicIpv4 is set (publicIpStatus / publicIpNote explain the wait) and never reuse the previous address. [SPENDS MONEY] (permission: servers:start) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_stop_server` (~115 tokens)

Stop a server

Stops (shuts down) a server. Disk and data are kept. WARNING: a stopped server is STILL BILLED at its full hourly rate (the GPU stays reserved). To pay much less, use gpucloud_hibernate_server instead (a hibernated server is billed a small hibernation rate); to stop paying entirely, delete it. (permission: servers:stop) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_reboot_server` (~53 tokens)

Reboot a server

Hard-reboots a running server. (permission: servers:reboot) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_hibernate_server` (~257 tokens)

Hibernate a server

Hibernates a server: once hibernated it is billed a much lower HIBERNATION RATE (shown by gpucloud_get_server under hibernation, and returned by this tool as hibernationFee) instead of its hourly rate, for as long as it exists: tell the user this cost before hibernating; to stop paying entirely, delete the server. Root disk data is kept (ephemeral disks are not). The public IP address is RELEASED: a new, different one is assigned on restore, and SSH may then report a changed host key for it. Restore it later with gpucloud_restore_server: restoring takes a few minutes and depends on GPU availability. An hourly server you hibernate is kept 72 h at most: restore it before then, otherwise it is deleted with its data and its machine goes back to other customers (tell the user). The answer carries customerHibernation (maxHours, deleteAt, message); notices come at the hibernation, 24 h and 1 h before the deletion. (permission: servers:hibernate) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_delete_server` (~111 tokens)

Delete a server (irreversible)

Permanently destroys a server and ALL its data. Needs the canDelete permission. Two steps: call without confirmationToken to get the warning and a token, ask the user, then call again with the token. (permission: servers:delete) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string): Token returned by the previous (quote) call, valid 10 minutes, single use.
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_cancel_server` (~104 tokens)

Cancel a server (irreversible)

Cancels a server: destroys it (all data lost) and closes its order when it was the last item. Needs canDelete. Two steps like gpucloud_delete_server. (permission: servers:delete) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string): Token returned by the previous (quote) call, valid 10 minutes, single use.
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_renew_server` (~128 tokens)

Renew a prepaid server (charges the card)

One more month for a monthly/annual server, charged to the saved card within the caps. Two steps: without confirmationToken returns the price and a token; with it, pays and extends the paid-until date (a server stopped at period end is restarted). [SPENDS MONEY] (permission: servers:renew) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string): Token returned by the previous (quote) call, valid 10 minutes, single use.
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_set_server_threshold_action` (~147 tokens)

Set the action at the threshold

What happens to an hourly server when the account balance reaches its threshold and no automatic reload brings it back: HIBERNATE (kept 12 h with an hourly hibernation fee, restarted as soon as the balance is back, then deleted) or DELETE (deleted at once, no hibernation fee, data lost). Machines that cannot be hibernated (spot) only accept DELETE. Spends nothing. (permission: servers:update) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `onFundsExhausted` (string, required): HIBERNATE or DELETE.
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_get_console_url` (~186 tokens)

Open the web console

Link to the page of a RUNNING (ACTIVE) server in the GPU Cloud console, where the account owner (signed in) opens its web (VNC) console, e.g. to repair SSH or the network. No console session link is issued to an agent. Refused with a precise code when the console cannot be opened now: CONSOLE_SERVER_STOPPED (start it), CONSOLE_SERVER_HIBERNATED (restore it), CONSOLE_SERVER_TRANSITIONING (retry once ready), CONSOLE_SERVER_SUSPENDED (credits / renewal / agent budget), CONSOLE_SERVER_UNAVAILABLE (failed or deleted). The console login password is shown only on that console page, never through this tool. (permission: servers:console) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_get_server_metrics` (~69 tokens)

Server metrics

CPU, RAM and network usage series of a server (null while it is not ready or metrics are still being collected). (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_get_server_usage` (~116 tokens)

Server billing history

Hour-by-hour billing of one server (deleted ones included): each billed hour with its period, amount taken from the credit balance and balance after; the first hour charged at deployment; refunds; the total billed, the hourly rate and whether it is billed right now. Read-only. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `page` (integer)
- `pageSize` (integer)
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_list_server_volumes` (~53 tokens)

Server volumes

Storage volumes attached to a server. (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_list_server_snapshots` (~52 tokens)

Server snapshots

Snapshots of a server. (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_list_firewall_rules` (~63 tokens)

Firewall rules

Firewall (security) rules of a server. Empty while the server is being created. (permission: firewall:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_add_firewall_rule` (~169 tokens)

Add a firewall rule

Opens a port range (tcp/udp) or icmp on a ready server, from a source CIDR (default 0.0.0.0/0). Ports: single "8080" or range with portRangeMin/portRangeMax. (permission: firewall:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `direction` (string)
- `ethertype` (string)
- `portRangeMax` (integer)
- `portRangeMin` (integer)
- `protocol` (string, required)
- `remoteIpPrefix` (string): Source CIDR, e.g. 203.0.113.0/24 (default: anywhere).
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_delete_firewall_rule` (~88 tokens)

Delete a firewall rule

Removes a firewall rule (its fw_... id from gpucloud_list_firewall_rules) of a ready server. (permission: firewall:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `ruleId` (required): Rule id (fw_...) from gpucloud_list_firewall_rules.
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_reserve_server` (~589 tokens)

Reserve a GPU (automatic launch when back in stock)

Reserves a GPU machine that is out of stock: GPU Cloud launches the server AUTOMATICALLY as soon as it is back (machines are gone in 1 to 2 minutes), before other customers (first come, first served per machine). Requires a saved credit card (else httpStatus 402 PAYMENT_REQUIRED with the card link: an AI never enters card details), the user's explicit agreement (consent: true) and a maximum hourly price. The automatic reload is not required: the answer carries onFundsExhausted (the action at the threshold, chosen with the onFundsExhausted argument) and, when the reload is off, autoReloadWarning (show its message to the user). At launch, if the balance does not cover the first hour plus the hibernation threshold, only the missing amount is charged to the saved card; then the server is billed by the hour. Nothing is charged when reserving. [SPENDS MONEY] (permission: servers:reserve) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `acceptAlternative` (boolean): true: an equivalent machine (same usage, at least the same GPU memory, never spot) may be launched when the exact one is not in stock. Default false: this exact machine only.
- `consent` (boolean, required): true ONLY once the user explicitly agreed to: "I authorize GPU Cloud to launch this server as soon as it is available, to charge my saved card the amount needed if my balance is not enough, then to b…
- `maxHourlyCad` (number, required): Highest hourly price (CAD) the user accepts: at least the current price (gpucloud_get_product), at most 5 times it. Above it at launch time, the reservation waits.
- `name` (string): Server name (letters, digits, space, dot, dash, underscore).
- `onFundsExhausted` (string): What happens to the launched server when the balance reaches its threshold: HIBERNATE (default: kept 12 h with an hourly hibernation fee, restarted when the balance is back) or DELETE (deleted at onc…
- `productId` (string, required): Exact GPU machine to reserve (model and size, gpucloud_list_products), e.g. one shown out of stock.
- `sshKeyId` (string, required): SSH key id installed on the server (gpucloud_list_ssh_keys).
- `templateId` (string): Optional one-click template installed at launch (gpucloud_list_templates).
- `templateModel` (string): Model served by the vllm template.
- `validityDays` (integer): Days the reservation stays valid (1 to 30, default 7); renewable in the console.

### `gpucloud_list_reservations` (~81 tokens)

List GPU reservations

GPU reservations of the account: machine, status (ACTIVE, PROCESSING, FULFILLED, PAYMENT_FAILED, EXPIRED, CANCELLED), place in the queue, maximum price, end date, and the server launched (serverId) once fulfilled. (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_cancel_reservation` (~82 tokens)

Cancel a GPU reservation

Cancels a waiting GPU reservation (nothing is charged). If a launch attempt is running, the cancellation stops it before any charge or launch not made yet (status CANCEL_REQUESTED). (permission: servers:reserve) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `reservationId` (string, required): Reservation id (gpucloud_list_reservations).

### `gpucloud_list_monthly_rentals` (~174 tokens)

List monthly H100 rentals

Guaranteed H100 rented by the month on the account (1, 2, 4 or 8 H100 GPUs, or H100 NVLink x 8, yours alone for 1, 3, 6 or 12 months): machine, rental term, monthly and total amounts (CAD), status (PENDING_PAYMENT, PAID_AWAITING_CAPACITY, ACTIVE, COMPLETED, REFUNDED, CANCELLED), delivery deadline (put in service within 7 business days of the payment, otherwise refunded in full), service start and end, months paid, next charge, and the server (serverId) once delivered. Read only: the user rents it in the GPU Cloud console. (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_list_contracts` (~171 tokens)

List monthly H100 rentals (former name)

Guaranteed H100 rented by the month on the account (1, 2, 4 or 8 H100 GPUs, or H100 NVLink x 8, yours alone for 1, 3, 6 or 12 months): machine, rental term, monthly and total amounts (CAD), status (PENDING_PAYMENT, PAID_AWAITING_CAPACITY, ACTIVE, COMPLETED, REFUNDED, CANCELLED), delivery deadline (put in service within 7 business days of the payment, otherwise refunded in full), service start and end, months paid, next charge, and the server (serverId) once delivered. Read only: the user rents it in the GPU Cloud console. (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_list_server_backups` (~178 tokens)

Server backups

Backup option of a server and its backups (id, SCHEDULED / MANUAL, CREATING / AVAILABLE / FAILED, date, size in GB). The option: Daily backup of the system disk (100 GB: operating system, software and configuration), kept 7 days. The work disk (high-capacity local storage) is not included: back up your important data elsewhere. The server is briefly interrupted during the backup, at the time you choose. Option state: enabled, supported, hourLocal (0-23, Eastern time), retention, price per month and billing (hourly: pro rata per billed hour; prepaid: per period). (permission: servers:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_create_server_backup` (~141 tokens)

Back up a server now

Starts a backup of the server’s system disk now (the option must be enabled; at most 2 manual backups kept). The server is BRIEFLY INTERRUPTED (shut down then restarted automatically, a few minutes). Two steps: call without confirmationToken to get the warning and a token, ask the user, then call again with the token. (permission: servers:backup) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string): Token returned by the previous call without token, valid 10 minutes, single use.
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_restore_server_backup` (~193 tokens)

Restore a backup to a new server (spends money)

Creates a NEW server (same GPU model and region) from an AVAILABLE backup; the original server is not changed. Billed like a new hourly server: the first hour from credits now, then per hour. Needs canLaunch, a saved card, credits for one hour, the budget and key caps. Two steps: without confirmationToken returns the price and a token; with it, launches. Poll gpucloud_get_server for the new server. [SPENDS MONEY] (permission: servers:create) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `backupId` (string, required): Backup id (from gpucloud_list_server_backups).
- `confirmationToken` (string): Token returned by the previous call without token, valid 10 minutes, single use.
- `name` (string): Display name of the new server.
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_set_server_backup_policy` (~210 tokens)

Backup option of a server

Turns the backup option of a server on or off, or changes its hour (hourLocal 0-23, Eastern time) and retention (1-7 daily backups). Turning it ON costs 9.99 $/month (hourly servers: pro rata per billed hour; prepaid: the rest of the paid period now from credits, then with each renewal). Turning it OFF deletes the server's backups (needs canDelete when backups exist; no refund of the current period). On/off take two steps (confirmationToken); hour / retention changes apply directly. [SPENDS MONEY] (permission: servers:backup) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string): Token returned by the previous call without token, valid 10 minutes, single use.
- `enabled` (boolean)
- `hourLocal` (integer)
- `retention` (integer)
- `serverId` (string, required): Server id (from gpucloud_list_servers).

### `gpucloud_list_ssh_keys` (~44 tokens)

List SSH keys

SSH public keys of the account (used to access new servers). (permission: ssh_keys:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_add_ssh_key` (~74 tokens)

Add an SSH public key

Imports an OpenSSH public key (ssh-ed25519 / ssh-rsa / ecdsa). The key is validated and fingerprinted. (permission: ssh_keys:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `name` (string, required)
- `publicKey` (string, required)

### `gpucloud_generate_ssh_key` (~76 tokens)

Generate an SSH key pair

Generates a new ed25519 key pair server-side and stores the PUBLIC key. The PRIVATE key is returned ONCE in this result and never stored: save it immediately (chmod 600). (permission: ssh_keys:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `name` (string, required)

### `gpucloud_delete_ssh_key` (~54 tokens)

Delete an SSH key

Removes an SSH public key from the account (servers already created keep it). (permission: ssh_keys:write) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `keyId` (string, required)

### `gpucloud_get_balance` (~43 tokens)

Credit balance

Credit balance (CAD), current hourly running cost and low-balance notice. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_list_transactions` (~52 tokens)

Credit transactions

Latest credit movements (top-ups, hourly usage, refunds) with their payment reference. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `limit` (integer)

### `gpucloud_list_invoices` (~84 tokens)

List invoices

Invoices of the account: monthly usage statements (already paid with credits) and invoices to pay, with status (PAID, CREDITED, DUE = to pay, VOID = cancelled), due date and overdue flag. Read-only: invoices are paid from the console. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_get_invoice` (~49 tokens)

Get an invoice

One invoice (by id or invoice number) with its lines. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `invoiceId` (string, required)

### `gpucloud_topup_credits` (~110 tokens)

Buy credits (charges the card)

Buys credits with the saved card, within the key caps (max single charge, monthly charges). Two steps: without confirmationToken returns the amount and a token; with it, charges the card (the owner is emailed). [SPENDS MONEY] (permission: billing:charge) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `amountCad` (number, required)
- `confirmationToken` (string): Token returned by the previous call (valid 10 minutes, single use).

### `gpucloud_get_payment_method` (~81 tokens)

Saved payment card

The saved card (masked: brand, last 4 digits, expiry). Required for any spend by an agent. A card with needsReentry=true can no longer be charged (payment error): the account owner must enter the payment method again in the console. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_add_payment_method` (~50 tokens)

Add a payment card (console link)

An AI agent never enters card details: returns the console page where the account owner adds a card themselves. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_get_auto_reload` (~101 tokens)

Auto-reload settings

Automatic credit reload settings (threshold and amount charged to the saved card) and its monthly cap: monthlyCapCad (null = no cap), what was reloaded this calendar month (Montreal time, monthlyCapUsedCad), what remains and whether the cap is reached (then no automatic reload until next month: the servers follow the action chosen at their threshold). (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_set_auto_reload` (~253 tokens)

Change auto-reload

Turns automatic credit reload on/off. Needs canCharge; the reload amount may not exceed the key max single charge, and every reload counts in this key monthly card-charge cap and in the account budget limit. Turning it on (or changing it while on) takes two steps: without confirmationToken returns the settings and a token; call again with the same arguments and the token once the user approved. Turning it off applies at once. Threshold $10-$5,000, amount $25-$10,000. monthlyCapCad: the most the automatic reloads may charge per calendar month (Montreal time), $25-$100,000, null = no cap, absent = unchanged (200 for a new configuration); once reached, no automatic reload until next month and the user is told. It never limits a manual payment. [SPENDS MONEY] (permission: billing:auto_reload) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string): Token returned by the previous call (valid 10 minutes, single use).
- `enabled` (boolean, required)
- `monthlyCapCad`
- `reloadAmountCad` (number, required)
- `thresholdCad` (number, required)

### `gpucloud_list_orders` (~52 tokens)

List orders

Orders of the account (checkout and renewals) with their items and payment reference. (permission: orders:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `limit` (integer)

### `gpucloud_get_order` (~49 tokens)

Get an order

One order by id or payment reference (GPU-CMD-...). (permission: orders:read) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `orderId` (string, required)

### `gpucloud_quote_order` (~115 tokens)

Quote an order

Prices a cart exactly as it will be charged (taxes included) and returns a confirmationToken for gpucloud_create_order with the same items. (permission: orders:quote) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `country` (string): Billing country (default: the one of the last order, else CA).
- `items` (array, required)
- `province` (string): Province code for taxes, e.g. QC, ON (default: the one of the last order, else QC).

### `gpucloud_create_order` (~161 tokens)

Place an order (charges the card)

Places the quoted order and pays it with the saved card within the key caps (D7: monthly / annual servers included). Servers are then provisioned with the first SSH key of the account. Requires the confirmationToken of gpucloud_quote_order. [SPENDS MONEY] (permission: orders:create) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `confirmationToken` (string, required): Token returned by the previous call (valid 10 minutes, single use).
- `country` (string): Billing country (default: the one of the last order, else CA).
- `items` (array, required)
- `province` (string): Province code for taxes, e.g. QC, ON (default: the one of the last order, else QC).

### `gpucloud_get_budget` (~128 tokens)

Account budget limit

Monthly budget limit of the account (CAD, calendar month America/Toronto) and its optional daily limit (`daily`): the limit, the spend this month / today, the percentage used, what remains, and whether the limit was reached. When the limit is reached, every running hourly server is put into hibernation (no data lost; prepaid servers are not affected) and new deployments, starts, orders, card charges and automatic reloads are refused with BUDGET_LIMIT_REACHED. (permission: billing:read) [Requires a free GPU Cloud account and MCP key]

### `gpucloud_set_budget` (~201 tokens)

Set the account budget limit

Sets the monthly budget limit of the account. Lowering the limit (or setting one where there was none) applies at once. Raising or removing it needs the owner's approval: without confirmationToken it returns the change and a token; call again with the same arguments and the token once the user approved. Raising the limit does not restore hibernated servers. (permission: billing:budget) [Requires a free GPU Cloud account and MCP key]

Input parameters:

- `alertPercent` (integer): Alert e-mail threshold, percent of the limit (default 80).
- `confirmationToken` (string): Token returned by the previous call (valid 10 minutes, single use). Only needed to raise or remove the limit.
- `dailyLimitCad`: Optional DAILY budget limit in CAD (calendar day America/Toronto), null to remove it, omitted to keep it.
- `monthlyLimitCad` (required): New monthly budget limit in CAD, or null to remove the limit.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/ca-gpucloud-gpu-cloud/api-mcp#diagnostics

## Score history

- 2026-10-18: 68
- 2026-10-17: 68
- 2026-10-16: 67
- 2026-10-15: 67
- 2026-10-14: 66
- 2026-10-13: 66
- 2026-10-12: 66
- 2026-10-11: 65
- 2026-10-10: 65

## Common questions

### What is the GPU Cloud MCP server?

GPU Cloud is an MCP server listed in the public MCP registry as ca.gpucloud/gpu-cloud. Rent H100, RTX PRO 6000, A100, L40 and RTX A6000 GPUs by the hour in Montréal, Canada, in CAD. This page covers its hosted endpoint (https://gpucloud.ca/api/mcp).

### Is the GPU Cloud MCP server safe to use?

GPU Cloud scores 68 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the GPU Cloud MCP server expose?

GPU Cloud exposes 62 tools: gpucloud_whoami, gpucloud_get_profile, gpucloud_update_profile, gpucloud_list_tickets, gpucloud_create_ticket, and 57 more. Their descriptions and schemas cost roughly 7,789 tokens of context every time the server is loaded.

### Does the GPU Cloud MCP server require authentication?

No. We connected to GPU Cloud without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the GPU Cloud MCP server still maintained?

GPU Cloud is still listed as active in the MCP registry. We last reached this channel on 18 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://gpucloud.ca/api/mcp
- Website: https://gpucloud.ca/
- Changelog RSS feed: https://verifymcp.io/servers/ca-gpucloud-gpu-cloud/api-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/ca-gpucloud-gpu-cloud/api-mcp.json
- HTML version of this page: https://verifymcp.io/servers/ca-gpucloud-gpu-cloud/api-mcp
