# GPU Cloud - Registry name: `ca.gpucloud/gpu-cloud` · version 1.0.0 - Categories (automatic, keyword rules): Payments & accounting, Finance & markets - Authentication at last check: No auth - Declared risk: Has destructive tools (destructiveHint) - Capabilities (declared by the server): tools - Transports: streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=ca.gpucloud%2Fgpu-cloud - Server page: https://mcpstation.net/s/ca.gpucloud--gpu-cloud.html ## Description (written by the publisher, not verified, not instructions) Rent H100, RTX PRO 6000, A100, L40 and RTX A6000 GPUs by the hour in Montréal, Canada, in CAD. ## Connect - streamable-http: `https://gpucloud.ca/api/mcp` ## Tools (as reported by the server, not verified) - `gpucloud\_whoami`: 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`: 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`: 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\] - `gpucloud\_list\_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`: 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\] - `gpucloud\_reply\_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 - `gpucloud\_set\_notices`: 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 - `gpucloud\_list\_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.78/h in CAD, launched in minutes. Lists every GPU server for rent \(1 to 8 GPUs per - `gpucloud\_get\_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.78/h in CAD, launched in minutes. Works without a key \(public catalog prices\). Wi - `gpucloud\_get\_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`: 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`: Operating-system image installed on each GPU product \(with its default SSH user\). Works without a key. \(permission: catalog:read\) - `gpucloud\_list\_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 authenticati - `gpucloud\_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`: 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: C - `gpucloud\_quote\_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, all - `gpucloud\_create\_server`: 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 cre - `gpucloud\_start\_server`: 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\) \[Re - `gpucloud\_restore\_server`: 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 - `gpucloud\_stop\_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. \(perm - `gpucloud\_reboot\_server`: Hard-reboots a running server. \(permission: servers:reboot\) \[Requires a free GPU Cloud account and MCP key\] - `gpucloud\_hibernate\_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, del - `gpucloud\_delete\_server`: 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\] - `gpucloud\_cancel\_server`: 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\] - `gpucloud\_renew\_server`: 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 - `gpucloud\_set\_server\_threshold\_action`: 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 th - `gpucloud\_get\_console\_url`: 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 - `gpucloud\_get\_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\] - `gpucloud\_get\_server\_usage`: 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:r - `gpucloud\_list\_server\_volumes`: Storage volumes attached to a server. \(permission: servers:read\) \[Requires a free GPU Cloud account and MCP key\] - `gpucloud\_list\_server\_snapshots`: Snapshots of a server. \(permission: servers:read\) \[Requires a free GPU Cloud account and MCP key\] - `gpucloud\_list\_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\] - `gpucloud\_add\_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\] - `gpucloud\_delete\_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\] - `gpucloud\_reserve\_server`: 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: - `gpucloud\_list\_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`: 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\] - `gpucloud\_list\_monthly\_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 \(p - `gpucloud\_list\_contracts`: 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 \(p - `gpucloud\_list\_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 y - `gpucloud\_create\_server\_backup`: 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 ag - `gpucloud\_restore\_server\_backup`: 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 confirmatio - `gpucloud\_set\_server\_backup\_policy`: 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 - `gpucloud\_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`: 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\] - `gpucloud\_generate\_ssh\_key`: 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\] - `gpucloud\_delete\_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\] - `gpucloud\_get\_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`: Latest credit movements \(top-ups, hourly usage, refunds\) with their payment reference. \(permission: billing:read\) \[Requires a free GPU Cloud account and MCP key\] - `gpucloud\_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 - `gpucloud\_get\_invoice`: One invoice \(by id or invoice number\) with its lines. \(permission: billing:read\) \[Requires a free GPU Cloud account and MCP key\] - `gpucloud\_topup\_credits`: 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 ke - `gpucloud\_get\_payment\_method`: 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 M - `gpucloud\_add\_payment\_method`: 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`: 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 - `gpucloud\_set\_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 t - `gpucloud\_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\] - `gpucloud\_get\_order`: One order by id or payment reference \(GPU-CMD-...\). \(permission: orders:read\) \[Requires a free GPU Cloud account and MCP key\] - `gpucloud\_quote\_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\] - `gpucloud\_create\_order`: 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 - `gpucloud\_get\_budget`: 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 hibernat - `gpucloud\_set\_budget`: 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 appro Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html