get_servers
List Hostkey account servers with filters. Before the first call, automatically refreshes inventory (eq/update_servers). Returns server IDs and brief data; use get_server for the full card.
ipmacgroupstatuslocation
io.github.hostkey-cloud由 GitHub 帳號 hostkey-cloud 發布v1.0.8更新於 Oct 30, 2026
MCP server for Hostkey .com (InvAPI): servers, power, order, DNS, S3, billing
Hostkey Cloud MCP 伺服器,讓助理透過 InvAPI 檢視、訂購、開關機並設定 Hostkey 實體與虛擬伺服器的網路。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/io.github.hostkey-cloud%2Fmcp-server/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。把它新增到你客戶端的 mcpServers 設定中。
{
"mcpServers": {
"hostkey-cloud": {
"type": "http",
"url": "https://mcp.hostkey.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}MCP server for Hostkey (.com portal, InvAPI invapi.hostkey.com).
Runs locally over stdio — Cursor, VS Code, and other MCP clients.
Hosted remote: https://mcp.hostkey.com/mcp (cloud agents).
Gives the model access to your Hostkey account: servers, catalog and ordering, power, OS reinstall, network, DNS, snapshots, IPMI/console, ISO, S3, Remote Hands, billing, and API keys.
InvAPI → API keys → create a key.
Prefer a dedicated key for MCP. Per-server keys limit access to one server.
DNS writes need the pdns/edit permission.
Click the button, replace YOUR_API_KEY with your InvAPI key, then confirm.
Or add to .cursor/mcp.json manually:
No local Node/npx. Point the client at the hosted endpoint and send your InvAPI key:
.vscode/mcp.json:
Optional: HOSTKEY_TOKEN_TTL, HOSTKEY_HTTP_TIMEOUT, HOSTKEY_ALLOW_DESTRUCTIVE
(see .env.example).
From source (Node.js ≥ 22.18): npm install && npm run build.
Every write call needs confirm=true. Without it, nothing changes.
Also:
order_server defaults to dry_run — a real order only after explicit consent;HOSTKEY_ALLOW_DESTRUCTIVE=1;Long jobs (deploy, reinstall) return a callback key — poll with check_task.
Groups (full list via tools/list):
Or just ask: “list my servers” / “order a VPS in NL”.
來源:README.md,提交 a50b3dd
List Hostkey account servers with filters. Before the first call, automatically refreshes inventory (eq/update_servers). Returns server IDs and brief data; use get_server for the full card.
ipmacgroupstatuslocationFull server details by ID (eq/show): configuration, network, status, location.
id必填Current server power status (on/off).
id必填Hardware sensor readings (temperatures, voltages, fans). Bare-metal only.
id必填All server tags (tags/list). Tags store arbitrary key-value pairs.
id必填Search servers by tag name or value (tags/search_user). Returns server IDs.
value必填Current list of available instant servers (VM/BM/GPU/vGPU) with prices for a location. No token required. Use to pick a preset before ordering.
location必填Search free servers matching a preset name (e.g. vm.pico). Requires auth.
name必填scopelocation必填Prices for available presets in given currencies (presets/info). No token required.
currenciesPreset groups for catalog categories (presets/groups). No token required.
無需輸入參數。
Details for one preset or all presets (presets/show). May require auth depending on permissions.
idAvailable stock servers (physical servers of standard configs; deploy within a business day). No token required.
group必填location必填Details for a specific stock server (stocks/show).
id必填Operating systems available for a preset/server (os/list). Without instance_id returns OS for all presets. No token required.
instance_idSoftware (marketplace apps) available for auto-install (software/list). No token required.
locationinstance_idAvailable traffic plans for a preset in a location (traffic_plans/list). No token required.
location必填instance_id必填Current API token and account info (auth/info): available calls, account type and role, linked server IDs. Useful to verify the connection.
無需輸入參數。
End the current API session (auth/logout): session token is removed from InvAPI. On the next call the client will sign in again with the API key.
無需輸入參數。
List all account API keys (api_keys/list).
無需輸入參數。
List API keys issued for a specific server (api_keys/list_for_server).
server_id必填Details for a specific API key (api_keys/view).
id必填API key usage history for a period (api_keys/history).
id必填period_toperiod_fromCreate a new API key for the account or a specific server (api_keys/add). The key value is shown once in the response — save it.
ipname必填active必填confirm必填server_idlogin_notify_method必填login_notify_addressUpdate API key settings (api_keys/edit): name, IP allowlist, notifications, active flag.
id必填ipname必填active必填confirm必填login_notify_method必填login_notify_addressDelete an API key (api_keys/delete). DESTRUCTIVE: apps using the key will lose access.
id必填confirm必填Server network interface status (net/get_status): port, switch, VLAN, speed, MAC, link status. Optional port limits the query to one interface (useful when another NIC has no upstream_id).
id必填portPort utilization graphs for a period (net/show_cacti): day/month/year.
id必填port必填graph必填Network interface information by IP address (ip/get_ip).
ip必填Current PTR record (reverse DNS) for an IP address (ip/get_ptr).
id必填ip必填Enable a server network port (net/port_on).
id必填port必填confirm必填Disable a server network port (net/port_off). DESTRUCTIVE: the server will lose network connectivity on this interface.
id必填port必填confirm必填Block an IP address on the server at the Hostkey network level (net/block_ip). Useful for abuse requests.
id必填ip必填confirm必填four_hoursdescription必填Unblock an IP address on the server (net/unblock_ip).
id必填ip必填confirm必填Update the PTR record for an IP address (ip/update_ptr). Multiple records are passed separated by %0A.
id必填ip必填ptr必填confirm必填Set the primary IP address of the server (ip/set_main) when there are multiple addresses.
id必填ip必填main必填confirm必填List all DNS zones on the account on Hostkey PowerDNS servers (pdns/list_zones).
無需輸入參數。
DNS zone contents: all records (A, AAAA, CNAME, MX, TXT, etc.) from the authoritative server (pdns/view_zone).
zone必填List all user domains from the domains table (pdns/list_domains).
無需輸入參數。
List subdomains by server ID (pdns/list_subdomains).
server_id必填Create a DNS zone and add a domain to the domains table (pdns/add_domain). Requires pdns/edit permission.
name必填confirm必填Delete a domain by ID: DNS zone, the domain itself, and all its subdomains (pdns/delete_domain). DESTRUCTIVE. Requires pdns/edit permission.
confirm必填domain_id必填server_id必填Add a subdomain to the subdomains table (pdns/add_subdomain). Requires pdns/edit permission.
name必填confirm必填domain_id必填server_id必填Update a subdomain (pdns/edit_subdomain). Requires pdns/edit permission.
id必填confirm必填server_idDelete a subdomain from the subdomains table (pdns/delete_subdomain). DESTRUCTIVE. Requires pdns/edit permission.
id必填confirm必填server_id必填Create a DNS zone on the authoritative PowerDNS server (pdns/add_zone). Requires pdns/edit permission.
dnskindname必填dnssecrrsetsconfirm必填mastersnameserversDelete a DNS zone by name along with all records and metadata (pdns/delete_zone). DESTRUCTIVE. Requires pdns/edit permission.
zone必填confirm必填Add or update a DNS record in a zone (pdns/add_dns). Requires pdns/edit permission. For SRV records, fill in proto/priority/weight/port/target. Fields mname/rname are marked required for SOA checks in the docs — fill them in on error.
ttlnameporttype必填zone必填mnameprotornametargetweightconfirm必填content必填另有 3 個Delete a DNS record from a zone (pdns/delete_dns). DESTRUCTIVE. Requires pdns/edit permission.
name必填type必填zone必填confirm必填List virtual machine snapshots (vm/get_snapshot): name, snapshot_id, date.
id必填Virtualization engine information (vm/get_engine).
無需輸入參數。
Virtual machine statistics (vm/load_stats).
id必填Create a virtual machine snapshot (vm/create_snapshot). Async operation. Track with check_task.
id必填name必填confirm必填Delete a snapshot (vm/remove_snapshot). DESTRUCTIVE: the snapshot is permanently deleted. Deletion is only possible on a powered-off VM.
id必填name必填confirm必填Restore a VM from a snapshot (vm/restore_snapshot). DESTRUCTIVE: the current VM disk state will be overwritten with the snapshot state.
id必填name必填confirm必填Access the server VNC console (eq/console): returns console.vv config in Base64 for virt-viewer.
id必填Start a NoVNC (HTML5) server console session (eq/novnc): returns a link to open in the browser.
id必填white_ipAvailable post-install Ansible tasks (jenkins/get_tasks) with applicability tags: gpu, bm, vm, vgpu, default. Without a token — general list; with a token — tasks available to the specific user.
無需輸入參數。
Run a Jenkins/Ansible task on a server (jenkins/call): task ID or name from list_post_install_tasks + extra params. E.g. installing GPU drivers after OS reinstall.
id必填task必填paramsconfirm必填Create a static DNAT to the server IPMI (nat/add_static_nat): public IP for classic IPMI access. Distinct from Secure IPMI Proxy in the panel — Proxy Active alone may not satisfy this call. Async; track with check_task. On server_ipmi_acl_required pass ip_acl.
id必填ttlip_aclconfirm必填securedRemove static DNAT to the server IPMI (nat/remove_static_nat).
id必填confirm必填Remove stale static NAT forwarding rules by internal IP (nat/clear_static_nat).
ip必填confirm必填Delete a NAT record from the database (nat/drop_nat). DESTRUCTIVE, internal/ops action.
idipconfirm必填Create a temporary IPMI user for web access to IPMI (eq/add_ipmi_user).
id必填confirm必填Remove a temporary IPMI user (eq/remove_ipmi_user).
id必填confirm必填Reboot the server IPMI module (eq/unit_reset). Use when IPMI is unresponsive.
id必填confirm必填Remote Hands request: power on the server manually (jira/request_pon). Creates a Remote Hands ticket for the datacenter on-call shift; status and correspondence are in the ticket (link will be emailed).
id必填confirm必填Remote Hands request: power off the server manually (jira/request_poff). DESTRUCTIVE for running services. Creates a Remote Hands ticket for the datacenter on-call shift; status and correspondence are in the ticket (link will be emailed).
id必填confirm必填Remote Hands request: reboot the server manually (jira/request_reboot). Creates a Remote Hands ticket for the datacenter on-call shift; status and correspondence are in the ticket (link will be emailed).
id必填confirm必填Remote Hands request: boot the server via PXE (jira/request_PXEboot). Needed when reinstalling OS on servers without a remote management module. Creates a Remote Hands ticket for the datacenter on-call shift; status and correspondence are in the ticket (link will be emailed).
id必填confirm必填Remote Hands request: attach IP KVM to the server (jira/request_kvm). Creates a Remote Hands ticket for the datacenter on-call shift; status and correspondence are in the ticket (link will be emailed).
id必填confirm必填Remote Hands request: check the server and boot it into the OS (jira/request_check). Creates a Remote Hands ticket for the datacenter on-call shift; status and correspondence are in the ticket (link will be emailed).
id必填confirm必填Ticket to the sales department (jira/request_assistance): cancellation or transfer of a service and similar requests. Describe details in message.
idconfirm必填message必填subjectPXE reinstall step 1: create an OS reinstall master key (eq/reinstall). Returns reinstall_key used by check_task to track install stages. DESTRUCTIVE: part of the process that wipes server disks.
id必填confirm必填PXE reinstall step 2: create a PXE config for OS install (eq/create_pxe). DESTRUCTIVE.
id必填os_id必填confirm必填ssh_keyhostname必填root_pass必填reinstall_keypost_install_scriptpost_install_callbackSet server boot order (eq/boot_dev): pxe — network boot (reinstall step 3), disk — boot from disk (step 6), cd — mounted ISO.
id必填media必填confirm必填PXE reinstall step 7: remove the PXE config (eq/clear_pxe). REQUIRED after completion — otherwise an unexpected reinstall may occur on the next reboot.
id必填confirm必填hostname必填List available ISO images (iso/list_iso). InvAPI requires a server id (for client keys); images are matched to the server configuration.
id必填List ISO images uploaded by the client (iso/uploaded).
無需輸入參數。
Upload a new ISO image by URL (iso/upload). Available to clients.
url必填nameconfirm必填Add a new ISO image or update an existing one by name (iso/add). Requires special 'add' permission.
urlname必填confirm必填Mount an ISO image on a server (iso/mount_iso). Async operation. Callback key returned — track with check_task. InvAPI expects `iso` (name or id). Pass iso, or name / iso_id aliases.
id必填isonameiso_idconfirm必填Unmount an ISO image from a server (iso/unmount_iso). Async operation. Callback key returned — track with check_task.
id必填confirm必填Delete an ISO image by ID (iso/delete). DESTRUCTIVE. Per docs, available only to Hostkey staff — clients will likely get a permission error.
id必填confirm必填List available S3 storage plans (s3/list_plans).
locationList available locations for S3 (s3/get_available_locations).
無需輸入參數。
List S3 account buckets and usage (s3/get_buckets_rmq). Pass s3uid or account_id from s3_get_users. May return a task key — then track with check_task.
s3uidaccount_idSame as s3_get_buckets: list buckets via s3/get_buckets_rmq. Prefer s3_get_buckets.
s3uidaccount_idList files in a bucket with pagination and search (s3/get_files).
pagelimits3uidbucket必填searchaccount_idList S3 users with service, traffic, and storage usage info (s3/get_users). Full filtering is available to administrators. Use returned s3uid/id with s3_get_buckets.
locationGet a decrypted S3 access key (s3/show_key). SECRET: do not log or share with third parties.
s3uidkey_type必填account_idCreate an S3 account: bind a plan and initial bucket (s3/create_account). Requires authentication.
bucketconfirm必填plan_idlocationCreate a new bucket in an existing S3 account (s3/create_bucket).
s3uidbucket必填confirm必填account_idCreate a paid S3 storage order linked to billing (s3/create_order). MONEY: creates a real order/invoice.
confirm必填plan_idlocationDelete a file from a bucket (s3/delete_file). DESTRUCTIVE: the file is permanently deleted.
file必填s3uidbucket必填confirm必填account_idDelete a bucket from an S3 account (s3/delete_bucket). DESTRUCTIVE: all files in the bucket will be deleted.
s3uidbucket必填confirm必填account_idFully delete a user's S3 account (s3/delete_account). DESTRUCTIVE: all buckets and data will be deleted. Requires HOSTKEY_ALLOW_DESTRUCTIVE=1.
s3uidconfirm必填account_idInitiate S3 account deletion via service cancellation in billing (s3/delete_payment_account). DESTRUCTIVE: an end date will be set on the active service. Requires HOSTKEY_ALLOW_DESTRUCTIVE=1.
s3uidconfirm必填account_idCancel S3 service deletion initiated via billing and restore the account to active status (s3/cancel_payment_account_deletion).
s3uidconfirm必填account_idUpdate S3 account traffic information (s3/update_traffic_info). Available to administrators only.
s3uidconfirm必填account_idList Remote Hands requests with filtering by location and status (rhr/list).
statuslocationCreate a Remote Hands request (rhr/add): on-site datacenter shift work that cannot be done remotely. Describe the work in as much detail as possible in comment. Use only if the remote server management module is unavailable/not working.
id必填comment必填confirm必填request_typeAdd a client-visible message to the request history (rhr/chat).
id必填confirm必填message必填Cancel/close a Remote Hands request (rhr/discard). DESTRUCTIVE: the request will be cancelled.
id必填confirm必填Client data from billing (whmcs/get_client): contacts, currency, account status.
無需輸入參數。
Full list of account invoices (whmcs/get_invoices).
無需輸入參數。
Data for a specific invoice for payment (whmcs/get_invoice).
invoice_id必填Invoices related to a specific server (whmcs/get_related_invoices).
id必填Billing information for a server rental (whmcs/get_billing_data).
id必填List of transactions for the client account (whmcs/transactions).
invoice_idtransaction_idCredit balance movement: credit additions and deductions (whmcs/getcredits).
id必填Payment methods for a specific invoice (whmcs/getpaymentgw).
invoice_id必填Download an invoice as PDF (whmcs/download_invoice). InvAPI returns binary PDF; MCP returns JSON with encoding=base64 and data — decode to a .pdf file.
invoice_id必填List of active service cancellation requests (whmcs/get_cancellation_requests).
idList of additional account contacts (whmcs/get_contacts).
無需輸入參數。
Update client data in billing (whmcs/update_client): name, company, address, email, phone, etc.
confirm必填billing_citybilling_emailbilling_statebilling_countrybilling_address1billing_address2billing_lastnamebilling_postcodebilling_firstnamebilling_companynamebilling_phonenumberReset the billing account password (whmcs/reset_password): a reset link is sent to the given email. Email must match the account email.
email必填confirm必填Add an additional contact to the account (whmcs/add_contact). WARNING: the contact is created with a random email — change it in Invapi.
confirm必填Update an additional contact (whmcs/update_contact): email, password, phone. Providing a phone enables SMS 2FA.
email必填confirm必填password2contact_id必填phonenumberDelete an additional account contact (whmcs/delete_contact). DESTRUCTIVE.
confirm必填contact_id必填Create the next invoice for a server (whmcs/generate_due_invoice).
id必填confirm必填Create an invoice to top up the credit balance (whmcs/create_addfunds). MONEY: creates a real invoice for the given amount.
amount必填confirm必填Pay an invoice in full or in part from the credit balance (whmcs/apply_credit). MONEY: deducts funds from the account.
amount必填confirm必填invoice_id必填Create a group invoice to pay multiple invoices at once (whmcs/mass_pay). MONEY.
confirm必填invoices必填Request service cancellation (whmcs/request_cancellation). DESTRUCTIVE: cancellation_type=1 — immediate cancel with partial refund (if possible), 0 — cancel at end of billing period. Requires HOSTKEY_ALLOW_DESTRUCTIVE=1.
id必填confirm必填cancellation_type必填terminate_reason_customWithdraw a service cancellation request (whmcs/delete_cancellation_request).
id必填confirm必填Check async job status by callback key (eq_callback/check). Many InvAPI operations (power on/off, order, reinstall, snapshots) return {"result":"OK","callback":"<key>"}. Pass that key here: result="Not ready" — still running; result="OK" — finished (key then expires). Server deploy can take 10–30 minutes. If the client sent progressToken, emits notifications/progress.
key必填Power on a server (eq/on). Async: response includes a callback key for check_task.
id必填confirm必填Power off a server (eq/off). DESTRUCTIVE: interrupts all services on the server. Requires confirm=true. Async: response includes a callback key for check_task.
id必填confirm必填Reboot a server (eq/reboot). Interrupts services during reboot. Requires confirm=true. Async: response includes a callback key for check_task.
id必填confirm必填Order an instant or stock server (eq/order_instance). IMPORTANT: ordering charges the credit balance or creates an invoice. Defaults to dry_run=true — only checks preset/OS availability and returns a summary without placing an order. For a real order pass dry_run=false and confirm=true after explicit user consent on the cost. Deploy takes 10–30 minutes; status via check_task.
os_id必填own_ospreset必填confirmdry_runsoft_idssh_keyhostnamepromocoderoot_pass必填traffic_plan必填deploy_notify另有 4 個Reinstall OS on an existing server (simplified path via eq/order_instance with id). DESTRUCTIVE: all disk data will be erased. Requires HOSTKEY_ALLOW_DESTRUCTIVE=1 in the server environment, confirm=true, and re-entering the server's current hostname. Async: status via check_task.
id必填os_id必填own_osconfirm必填soft_idssh_keyhostname必填root_pass必填deploy_notifypost_install_scriptUniversal direct InvAPI call by resource and action, for resources without typed tools (e.g.: iso — ISO image library, s3 — S3 Object Storage, rhr — Remote Hands new version; see action list in the docs: https://hostkey.com/documentation/apidocs/). ALWAYS requires confirm=true; destructive/paid actions additionally require HOSTKEY_ALLOW_DESTRUCTIVE=1. Prefer typed tools when they exist for the needed operation.
authaction必填paramsconfirm必填resource必填已滿足適用檢查項的 100%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
{ "mcpServers": { "hostkey-mcp-server": { "command": "npx", "args": ["-y", "hostkey-mcp-server"], "env": { "HOSTKEY_API_KEY": "your-api-key" } } }}{ "mcpServers": { "hostkey": { "url": "https://mcp.hostkey.com/mcp", "headers": { "Authorization": "Bearer your-api-key" } } }}{ "servers": { "hostkey-mcp-server": { "command": "npx", "args": ["-y", "hostkey-mcp-server"], "env": { "HOSTKEY_API_KEY": "your-api-key" } } }}