ParalonCloud

io.github.ParalonCloud由 GitHub 帳號 ParalonCloud 發布v1.5.0更新於 Nov 3, 2026

Rent GPUs on ParalonCloud, or as a provider manage your nodes, prices and earnings.

概覽

AI 產生的概覽

讓助理在 ParalonCloud 上租用 GPU,並為供應商管理 GPU 節點、價格、存取權限與收益。

可以做什麼
  • 瀏覽可租 GPU、範本與帳戶餘額,並建立、查看和停止 JupyterLab、SSH 或 ComfyUI 應用程式租用
  • 管理 SSH 租用所用的 SSH 公開金鑰
  • 列出並檢視自己的供應商節點,包括即時 GPU 負載與溫度
  • 新增節點並取得 docker 安裝指令,上下架節點、設定價格和更新節點設定
  • 設定節點的可租對象,並收回 spot 節點自用
  • 依日查看收益與可提領餘額
適用情境
適合讓助理為吃重的工作臨時開一台 GPU、透過 SSH 執行指令或啟動 ComfyUI,用完後再停止;也適合在 ParalonCloud 提供 GPU 的使用者以對話方式查看和調整節點與收益。
執行需求
以 stdio 在本機執行,通常透過 npx 使用 npm 套件。需在 PARALON_API_KEY 環境變數提供 ParalonCloud 的 prlc_ API 金鑰,租用需 rental 權限,供應商工具需 nodes 權限。可選 PARALON_BASE_URL 覆寫 API 位址。SSH 租用需在持有私鑰的電腦上安裝 cloudflared。
安裝前請注意
create_rental 會依分鐘計費消耗帳戶額度;destroy_rental 用於停止計費,建議保持用戶端的工具呼叫確認開啟,並傳入 hours 讓租用自動停止。供應商工具會改變市場狀態:reclaim_spot_node 會讓租用者的 spot 租用約兩分鐘後停止。add_node 與 get_node_install_command 回傳的指令含節點密鑰權杖,應保持私密。請使用僅含所需權限的專用金鑰。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 ParalonCloud,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

ParalonCloud MCP server

Rent GPUs from inside your AI agent, and, if you provide GPUs, run your own nodes from it. This is an MCP server for the ParalonCloud Rental API and Provider API: it lets Claude Code, Claude Desktop, Cursor, or any MCP client

  • rent: browse GPUs, start a rental, get its connection URL, and stop it;
  • provide: list your nodes with live GPU load and temperature, add a node and get its install command, take a node off the market and back, set its price, reclaim a spot node, and read your earnings,

using natural language.

One key for everything: the same prlc_ key powers ParalonCloud's OpenAI-compatible inference API. Build an agent that calls a model and rents the GPU to run the heavy job.

Formerly @paraloncloud/mcp-rentals. That package is deprecated: switch your config to @paraloncloud/mcp.

Tools

Renting (key needs the rental scope)

ToolWhat it doesCost
list_gpusList rentable GPUs with price, VRAM, compute capability, countryfree
get_balanceYour credit balancefree
list_templatesApps a rental can start with (ComfyUI, Open WebUI with Ollama, Unsloth Studio), their version and minimumsfree
create_rentalStart a rental with JupyterLab or SSH (type: "ssh"), optionally with an app installed (template: "comfyui", "openwebui" or "unsloth"; an app with its own sign-in returns it in app.login) (async → poll)spends credits
get_rentalStatus + the JupyterLab URL or the SSH command once running, and an app's link (connection.app_url)free
list_rentalsYour active rentals (status: "all" for history)free
destroy_rentalStop a rental and stop billing—
list_ssh_keysThe SSH public keys an SSH rental installsfree
add_ssh_keySave an SSH public key (the .pub line, never the private key)free
delete_ssh_keyDelete a saved key; new SSH rentals stop accepting itfree

An SSH rental installs every saved key, so the agent can make its own key, add it, rent with type: "ssh", and run commands on the machine. Connecting needs cloudflared on the computer that holds the private key: get_rental returns the command.

Your nodes, for GPU providers (key needs the nodes scope)

ToolWhat it does
list_my_nodesYour nodes: state (available, rented, paused, offline, …), GPUs, price and its allowed range, the current rental, live per-GPU load, temperature, power and memory
get_my_nodeOne node, same fields
add_nodeAdd a node; returns the docker command that installs the agent (it holds the node's token)
get_node_install_commandThe install command of an existing node, again
set_node_availableTake a node off the market, or put it back; a running rental goes on to its end
set_node_priceSet the price in USD per hour for the node, or null for the default
update_nodeChange name, spot, availability and price in one call
reclaim_spot_nodeTake a spot node back for your own use; a spot rental on it stops in 2 minutes
get_node_accessWho can rent a node: everyone, or only the people, domains and organizations listed
set_node_accessKeep a node private for chosen renters (email, domain, organization), or open it to everyone ([])
get_earningsEarnings by day (rentals per node, inference per account) and the withdrawable balance

Payouts are not reachable from the API or this server. Deleting a node stays on the site.

Setup

1. Get a key with the right scope

  1. Create an API key in the Console.
  2. To rent, turn on GPU rentals for that key (rentals are opt-in), and optionally set Max rentals running at once as a safety cap.
  3. To manage your own nodes, turn on My nodes. One key can have both.

Use a dedicated key for the agent, not your production key.

2. Add it to your MCP client

The client passes your key via the PARALON_API_KEY env var — you never edit the server.

Claude Desktop — claude_desktop_config.json:

json
{  "mcpServers": {    "paraloncloud": {      "command": "npx",      "args": ["-y", "@paraloncloud/mcp"],      "env": {        "PARALON_API_KEY": "prlc_your_key_here"      }    }  }}

Claude Code — one command:

bash
claude mcp add paraloncloud \  --env PARALON_API_KEY=prlc_your_key_here \  -- npx -y @paraloncloud/mcp

Cursor — .cursor/mcp.json (same shape as Claude Desktop above).

Optional env: PARALON_BASE_URL (defaults to https://paraloncloud.com/api/v1).

3. Try it

"List the cheapest GPUs I can rent, then start a 2-hour Jupyter rental on one with at least 24GB of VRAM."

The agent calls list_gpus, picks a node, and calls create_rental with hours: 2. It then polls get_rental for the Jupyter URL. Say "stop it" and it calls destroy_rental.

"Rent a 4090 over SSH, run nvidia-smi on it, then stop it."

The agent makes a key with ssh-keygen, saves it with add_ssh_key, picks a node with ssh: true, starts it with type: "ssh", runs the command get_rental returns, and stops it.

"Start ComfyUI on a GPU with 24 GB for an hour and give me the link."

The agent calls list_templates, picks a node whose templates has comfyui, starts it with template: "comfyui" and hours: 1, and hands you connection.app_url from get_rental once the app answers, a minute or two after the machine.

As a provider:

"How are my nodes doing? Is any GPU running hot?"

"Take rig-2 off the market for the afternoon, and set rig-1 to $0.60 an hour."

"How much did I earn this week, and from which node?"

Safety

  • create_rental and destroy_rental change what you're billed — your MCP client will ask you to approve them (Claude Code/Desktop confirm tool calls by default). Keep that on.
  • create_rental auto-generates an idempotency key, so a retried call never starts a second GPU.
  • Pass hours so a rental auto-stops even if the agent forgets to.
  • The key's max_active_rentals limit (set in the Console) caps concurrency regardless.
  • The node tools that change something (add_node, set_node_available, set_node_price, update_node, reclaim_spot_node, set_node_access) tell the agent to confirm with you first; reclaim_spot_node stops a renter's spot rental two minutes later.
  • add_node and get_node_install_command return a command with the node's secret token: keep it private.
  • Give the agent a key with only the scopes it needs.

Test

bash
npm installPARALON_API_KEY=prlc_your_key_here node smoke-test.mjs

It calls the read-only tools, and the node tools only on a node that does not exist, so it changes nothing.

Run locally (dev)

bash
PARALON_API_KEY=prlc_your_key_here node server.js

Links

MIT

來源:README.md,提交 ad6a3e1

工具

21

list_gpus

List GPU nodes available to rent right now, with price per hour, GPU model, VRAM, CUDA compute capability, and country. Rent by the returned node_id. reserved_for_you: true marks a node its provider keeps for this key's person or organization: such nodes come first and nobody else sees them. Read-only, no cost. For modern LLM work prefer compute_cap >= 8.9 (FP8). spot: true marks a spot node: cheaper (list_price_per_hour is the on-demand price), but its provider can take it back with two minutes' notice, so avoid it for long unattended jobs. restricted_internet: true means the node's own network cannot reach the services in unreachable_services (e.g. GitHub, Hugging Face, PyPI, Docker Hub), so git clone, pip install and model or image downloads fail there; prefer a node where it is false when the job downloads anything (null means not checked yet). ssh: true means create_rental can start it with type 'ssh'. templates lists the apps create_rental can install on that node (e.g. ["comfyui"]); see list_templates.

無需輸入參數。

list_templates

List the apps a rental can start with, installed and running and opened in the browser by its own link: today ComfyUI (node-based image and video generation: Flux, SDXL, Wan). Each has a slug for create_rental's template, the version a rental gets (tested and pinned), and what a machine needs (min_vram_gb per GPU, min_disk_gb). Pick a node whose templates in list_gpus contains the slug. Read-only, no cost. Use it when the user wants to generate images or video, or names one of these apps.

無需輸入參數。

get_balance

Get the account's credit balance (rentals are billed per minute against it). Read-only, no cost.

無需輸入參數。

create_rental

Start renting a GPU. SPENDS CREDITS (per-minute billing) — confirm with the user before calling. Asynchronous: returns a rental_id with status 'pending'. Provisioning + the secure tunnel take ~20-40 seconds. After creating, call get_rental ONCE to fetch the connection URL — it waits internally for startup and returns when ready, so do NOT poll it in a tight loop. DURATION: the rental is open-ended by default (runs until the user stops it with destroy_rental) — use open-ended as the default. When starting one, briefly tell the user it's open-ended and bills per minute until stopped, and that they can set an 'hours' auto-stop cap instead if they prefer; only pass 'hours' when the user asks for a time limit. An idempotency key is generated automatically so accidental repeats don't start a second GPU.

輸入參數nametypehoursnode_id必填template

get_rental

Get one rental's status and connection details: for a JupyterLab rental connection.access_url (URL with its token), for an SSH rental connection.ssh_command (run it from the computer holding the private key; it needs cloudflared installed, and -i <private key> when the key is not in ~/.ssh). A rental started with a template also has app (name, version, state installing / starting / ready / failed, step) and, once the app answers, connection.app_url: the link that opens it, with its token; treat it like a password. state failed means the app did not start while the machine runs and bills: say so and offer to stop it. After create_rental, call this to get the URL. It WAITS internally (up to ~24s) for the rental to finish coming up and returns as soon as it's ready — so you usually only need ONE call, at most two. Do NOT call it repeatedly in a tight loop. Provisioning plus the secure tunnel take ~20-40 seconds total; the URL is ready when connection_pending is false. Read-only.

輸入參數rental_id必填

list_rentals

List the account's rentals. By default only active ones (what's running and billing). Pass status='all' for full history. Read-only.

輸入參數status

destroy_rental

Stop a rental — stops the GPU and STOPS BILLING. This is the money brake; safe to call twice. Confirm with the user unless they clearly asked to stop it.

輸入參數rental_id必填

list_ssh_keys

List the SSH public keys saved for this API key's person: every one of them is installed on each SSH rental they start. Read-only, no cost.

無需輸入參數。

add_ssh_key

Save an SSH public key so SSH rentals accept it (the key also shows on the account's SSH keys page). Pass the PUBLIC key line, e.g. the contents of ~/.ssh/id_ed25519.pub; never a private key. To make one: ssh-keygen -t ed25519 -N '' -f ~/.ssh/paralon_ed25519, then add the .pub file's line and connect with -i ~/.ssh/paralon_ed25519. A key added after a rental started is not on that rental. No cost.

輸入參數namepublic_key必填

delete_ssh_key

Delete a saved SSH public key by its id (from list_ssh_keys). New SSH rentals no longer accept it; a rental already running keeps it until it stops. Confirm with the user unless they asked for it.

輸入參數key_id必填

list_my_nodes

PROVIDER: list the GPU nodes this account provides (needs a key with the 'nodes' scope). For each node: state (available, rented, paused, not_verified, not_ready, offline), GPUs and VRAM, price (default, allowed min/max, custom, what a renter pays), verification, reputation, the current rental (never the renter), and live metrics from the last minute: per-GPU load %, temperature °C, power W and VRAM, plus host CPU and memory. Read-only.

無需輸入參數。

get_my_node

PROVIDER: one of the account's nodes, same fields as list_my_nodes (state, price, rental, live GPU metrics). Read-only.

輸入參數node_id必填

add_node

PROVIDER: add a new node to the account and get the docker command that installs the agent on the machine. Confirm the name and type with the user first. The returned command contains the node's secret token: show it only to the user, never paste it anywhere public. The node comes online once the command runs on the machine, then goes through the GPU check. At most 20 nodes an hour per key.

輸入參數osname必填spottypeavailable

get_node_install_command

PROVIDER: the docker command that installs the agent for an existing node (to reinstall or move it). It contains the node's secret token: show it only to the user. Read-only.

輸入參數node_id必填

set_node_available

PROVIDER: take a node off the market (available=false) or put it back (available=true). Off stops new rentals at once; a rental already running goes on to its end. Use it when the owner needs the machine or it is rented on another marketplace. Confirm with the user unless they asked for exactly this.

輸入參數node_id必填available必填

set_node_price

PROVIDER: set a node's price in US dollars per hour for the whole node (what the renter pays; the provider gets it minus the platform fee), or null to go back to the platform default. Must be within the node's price.min and price.max (50% to 300% of the default; see get_my_node). A rental already running keeps its price. Not possible on a spot node. Confirm the new price with the user first.

輸入參數node_id必填price_per_hour必填

update_node

PROVIDER: change several things on a node at once: name, spot (true/false; refused while the node is rented, and turning spot on clears a custom price), available, price_per_hour (USD per hour or null). Send only what changes. Confirm changes with the user first.

輸入參數namespotnode_id必填availableprice_per_hour

reclaim_spot_node

PROVIDER: take a spot node back for the owner's own use ("In use"): rentals and inference go off, and a spot rental running on it STOPS TWO MINUTES LATER (the renter is told). Only for spot nodes. Always confirm with the user first. Put the node back afterwards with set_node_available(true).

輸入參數node_id必填

get_node_access

PROVIDER: who can rent a node. An empty list (private: false) means everyone; otherwise only the people (email), email domains and organizations listed see the node and can rent it. Read-only.

輸入參數node_id必填

set_node_access

PROVIDER: set who can rent a node, replacing the whole list. Each entry is {kind: "email", value: "[email protected]"}, {kind: "domain", value: "company.com"} or {kind: "org", value: "<organization name or ID>"}. A non-empty list makes the node PRIVATE: only those renters see it and can rent it, and ParalonCloud places no inference or other work on it, so it earns from their rentals only. [] opens it to everyone again. Call get_node_access first to keep existing entries. Always confirm with the user first. People and organizations added are told by email.

輸入參數entries必填node_id必填

get_earnings

PROVIDER: the account's earnings in USD by UTC day for the last `days` days (default 30, max 366): rentals per node and inference for the account, after the platform fee; the total; the balance that can be withdrawn now; and what rentals still running have billed so far. Payouts themselves are not available through the API. Read-only.

輸入參數days

版本歷史

4
  1. v1.5.0最新Oct 31, 2026
  2. v1.4.0Oct 31, 2026
  3. v1.3.1Oct 29, 2026
  4. v1.2.0Oct 21, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分