Skip to content

MCP

All MCP tools

Every tool your AI client can call through the ZapX MCP server, with parameters, required permission and behaviour. The list is generated straight from the server, so it is always up to date.

224 tools in 13 groups ยท included in every ZapX Pass

Endpointhttps://zap-hosting.com/api/mcpJSONMarkdown for LLMs
Tool names, titles and descriptions are shown exactly as your AI client receives them from the server. Tools marked โ€œNeeds confirmationโ€ only run with confirm: true. Your AI client asks you before it performs the action.

224 of 224 tools

Account

All services with id and type, outages and maintenance, and the status of running operations.

List All Services

list_account_services
Read-onlyStart here

List all accessible services (gameservers, VPS, dedicated servers, TeamSpeak servers, Discord bots, and domains) in one normalized response. Prefer this for discovery. Pass a service's "id" to the tools of its type (gameserver ids to gameserver tools, VPS ids to vserver tools, ...).

Permission
Every connectionResults only include the services the connection may view.
Granted when connecting
Every connection

Parameters

No parameters

List Incidents

list_incidents
Read-onlyStart here

List open, planned and recently resolved outages and maintenance that affect services accessible with the current credential. Each incident names the affected services (type, id, name; same ids as list_account_services); affectsAllServices marks platform-wide incidents. resolvedHours (0-168, default 24) controls how far back resolved incidents are included. Read-only.

Permission
Every connectionResults only include the services the connection may view.
Granted when connecting
Every connection

Parameters

  • resolvedHoursintegeroptional

    min 0 ยท max 168

Get Operation Status

get_operation_status
Read-only

Poll the status of an async public API operation.

Permission
Every connectionResults only include the services the connection may view.
Granted when connecting
Every connection

Parameters

  • operationIdstringrequired

Game servers

Status, console, start and stop, settings, game version and variant, mods, savegames, SFTP access and reinstall.

List Game Servers

list_gameservers
Read-onlyStart here

List gameservers accessible with the current credential. Prefer list_account_services for cross-product discovery.

Permission
gameserver.view
Granted when connecting
View services

Parameters

No parameters

Get Game Server

get_gameserver
Read-onlyStart here

Get one gameserver by ID.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Game Server Live Status

get_gameserver_live_status
Read-onlyStart here

Get live query status for a gameserver.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Game Server Settings

get_gameserver_config
Read-only

Read editable gameserver configuration fields.

Permission
gameserver.config.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Update Game Server Settings

update_gameserver_config
DestructiveNeeds confirmation

Update editable gameserver configuration fields. Requires confirm=true.

Permission
gameserver.config.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • changesRecord<string, string>required
  • confirmbooleanoptional

Get Game Server Console Logs

get_gameserver_console_logs
Read-only

Read a recent gameserver console log snapshot.

Permission
gameserver.console.read
Granted when connecting
Console & Logs

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • linesintegeroptional

    Number of recent log lines to return, 1-200 (default 50). Values above 200 are rejected.

    > 0 ยท max 200

Restart Game Server

restart_gameserver
DestructiveNeeds confirmation

Restart a gameserver. Requires confirm=true because this is a power action.

Permission
gameserver.restart
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Start Game Server

start_gameserver
Changes dataNeeds confirmation

Start a gameserver. Requires confirm=true because this is a power action.

Permission
gameserver.start
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Stop Game Server

stop_gameserver
DestructiveNeeds confirmation

Stop a gameserver. Requires confirm=true because this is a power action.

Permission
gameserver.stop
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Send Game Server Console Command

send_gameserver_console_command
DestructiveNeeds confirmation

Send one console command to a running gameserver. Requires confirm=true.

Permission
gameserver.console.write
Granted when connecting
Console & Logs

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • commandstringrequired

    max length 500

  • confirmbooleanoptional

Get Game Server Activity

get_gameserver_activity
Read-only

Read recent gameserver activity logs.

Permission
gameserver.activity.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • limitintegeroptional

    > 0 ยท max 100

  • offsetintegeroptional

    min 0 ยท max 9007199254740991

Get Game Server Container Status

get_gameserver_container_status
Read-only

Get gameserver container and port reachability status.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

List Game Server Schedules

list_gameserver_schedules
Read-only

List the recurring schedules of a gameserver (restart, start, stop, console command, backup, wipe) with cron, timezone, next and last run. Only schedules whose action the credential may manage are listed.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Create Game Server Schedule

create_gameserver_schedule
Changes dataNeeds confirmation

Create a recurring gameserver schedule. action: restart, start, stop, command (needs `command`, sent to the server console), backup (needs ZapX Pass Pro), wipe (only games with a wipe such as Rust, needs `wipe` options). Five-field cron evaluated in `timezone` (IANA, default UTC), at most every 5 minutes, max 20 schedules per server. To announce a restart, add a second command schedule a few minutes earlier (e.g. cron "55 3 * * *" with command "say Restart in 5 minutes"). Requires confirm=true.

Permission
gameserver.backups.managegameserver.restartgameserver.startgameserver.stopgameserver.console.writegameserver.wipe
Granted when connecting
Power actions, Console & Logs, Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • namestringrequired

    max length 120

  • action"restart" | "backup" | "start" | "stop" | "command" | "wipe"required

  • cronstringrequired

    Five-field cron, e.g. "0 4 * * *" = daily 04:00. At most every 5 minutes.

  • timezonestringoptional

    IANA zone the cron is evaluated in, e.g. "Europe/Berlin". Default UTC.

  • commandstringoptional

    Console command, required for action=command.

    max length 2000

  • wipeobjectoptional

    Wipe options, required for action=wipe (only games with a wipe, e.g. Rust).

  • wipe.kind"map" | "blueprints" | "full"optional

    Rust: map, blueprints or full.

  • wipe.backupFirstbooleanoptional

    Back up before wiping (default true).

  • wipe.seed"keep" | "random"optional

    Map seed: "keep" (default) or "random".

  • wipe.worldSizeintegeroptional

    min 1000 ยท max 6000

  • isActivebooleanoptional
  • confirmbooleanoptional

Update Game Server Schedule

update_gameserver_schedule
DestructiveNeeds confirmation

Update a gameserver schedule (name, action, cron, timezone, command, wipe options, isActive). isActive=false pauses it. The daily auto backup (isSystem) cannot be changed. Requires confirm=true.

Permission
gameserver.backups.managegameserver.restartgameserver.startgameserver.stopgameserver.console.writegameserver.wipe
Granted when connecting
Power actions, Console & Logs, Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • scheduleIdstringrequired
  • namestringoptional

    max length 120

  • action"restart" | "backup" | "start" | "stop" | "command" | "wipe"optional

  • cronstringoptional

    Five-field cron, e.g. "0 4 * * *" = daily 04:00. At most every 5 minutes.

  • timezonestringoptional

    IANA zone the cron is evaluated in, e.g. "Europe/Berlin". Default UTC.

  • commandstringoptional

    Console command, required for action=command.

    max length 2000

  • wipeobjectoptional

    Wipe options, required for action=wipe (only games with a wipe, e.g. Rust).

  • wipe.kind"map" | "blueprints" | "full"optional

    Rust: map, blueprints or full.

  • wipe.backupFirstbooleanoptional

    Back up before wiping (default true).

  • wipe.seed"keep" | "random"optional

    Map seed: "keep" (default) or "random".

  • wipe.worldSizeintegeroptional

    min 1000 ยท max 6000

  • isActivebooleanoptional
  • confirmbooleanoptional

Delete Game Server Schedule

delete_gameserver_schedule
DestructiveNeeds confirmation

Delete a gameserver schedule. The daily auto backup (isSystem) cannot be deleted. Requires confirm=true.

Permission
gameserver.backups.managegameserver.restartgameserver.startgameserver.stopgameserver.console.writegameserver.wipe
Granted when connecting
Power actions, Console & Logs, Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • scheduleIdstringrequired
  • confirmbooleanoptional

Wipe Game Server

wipe_gameserver
DestructiveNeeds confirmation

Wipe a gameserver now (games with a wipe such as Rust): kind map, blueprints or full. Backs up first unless backupFirst=false. Irreversible for the wiped data: state the effect and get an explicit yes first. Returns an operation (poll get_operation_status). For a recurring wipe use create_gameserver_schedule with action=wipe. Requires confirm=true.

Permission
gameserver.wipe
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • kind"map" | "blueprints" | "full"required

    Rust: map, blueprints or full.

  • backupFirstbooleanoptional

    Back up before wiping (default true).

  • seed"keep" | "random" | integeroptional

    Map seed: "keep" (default), "random" or a fixed number.

  • worldSizeintegeroptional

    min 1000 ยท max 6000

  • confirmbooleanoptional

List Game Server Databases

list_gameserver_databases
Read-only

List the managed MySQL/MariaDB databases of a gameserver with host, port, database name, username, status and phpMyAdmin URL. Passwords are never returned: the owner sees them in the dashboard.

Permission
gameserver.database.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Create Game Server Database

create_gameserver_database
Changes dataNeeds confirmation

Create a managed MySQL/MariaDB database for a gameserver (max 5 per server, free). It is ready when its status turns active (list_gameserver_databases). The password is not returned: the owner reads it in the dashboard. Requires confirm=true.

Permission
gameserver.database.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • namestringoptional

    Display label, e.g. "fivem". Optional.

    max length 40

  • confirmbooleanoptional

Delete Game Server Database

delete_gameserver_database
DestructiveNeeds confirmation

Permanently delete a gameserver database with all its tables and data (no undo). Get an explicit yes first. confirmationName must be the exact database name (field `database`). Requires confirm=true.

Permission
gameserver.database.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • databaseIdstringrequired
  • confirmationNamestringrequired

    The exact database name (field `database` of list_gameserver_databases), as typed in the dashboard.

  • confirmbooleanoptional

Get Game Server External Access

get_gameserver_external_access
Read-only

Read gameserver external access details.

Permission
gameserver.external-access.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Set Up Game Server External Access

ensure_gameserver_external_access
Changes dataNeeds confirmation

Ensure gameserver external access is provisioned. Requires confirm=true.

Permission
gameserver.external-access.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Rotate Game Server External Access Credentials

rotate_gameserver_external_access
DestructiveNeeds confirmation

Rotate gameserver external access credentials. Requires confirm=true.

Permission
gameserver.external-access.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Show Game Server External Access Credentials

reveal_gameserver_external_access
DestructiveNeeds confirmation

Reveal gameserver external access credentials. Requires confirm=true.

Permission
gameserver.external-access.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Reinstall Game Server

reinstall_gameserver
DestructiveNeeds confirmation

Reinstall a gameserver. Requires confirm=true.

Permission
gameserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Change Game Server Game Version

update_gameserver_version
DestructiveNeeds confirmation

Update gameserver game version. Requires confirm=true.

Permission
gameserver.lifecycle.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetVersionstringoptional
  • targetModpackVersionstringoptional
  • confirmbooleanoptional

Change Game Server Variant

update_gameserver_variant
DestructiveNeeds confirmation

Change gameserver variant. Requires confirm=true.

Permission
gameserver.lifecycle.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • variantIdstringrequired
  • confirmbooleanoptional

List Game Server Save Games

list_gameserver_savegames
Read-only

List gameserver savegames.

Permission
gameserver.savegames.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • pageintegeroptional

    > 0 ยท max 9007199254740991

  • limitintegeroptional

    > 0 ยท max 100

Delete Game Server Save Game

delete_gameserver_savegame
DestructiveNeeds confirmation

Delete a gameserver savegame. Requires confirm=true.

Permission
gameserver.savegames.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • pathstringrequired
  • confirmbooleanoptional

List Game Server Mods

list_gameserver_mods
Read-only

List installed mods (installedOnly=true) or search the gameserver's mod browser (e.g. CurseForge/Modrinth for Minecraft mod loaders, Thunderstore for Valheim, uMod for Rust with Oxide, ficsit for Satisfactory). Results carry provider, projectId and the installation state; install with install_gameserver_mod.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • querystringoptional
  • providerstringoptional
  • installedOnlybooleanoptional
  • offsetintegeroptional

    min 0 ยท max 9007199254740991

  • limitintegeroptional

    > 0 ยท max 48

  • sort"relevance" | "downloads" | "updated" | "newest"optional

DestructiveNeeds confirmation

Install a mod from the gameserver's mod browser (find it with list_gameserver_mods: provider + projectId). Also updates, downgrades or repairs an installed mod: pass the versionId (see check_gameserver_addon_updates). Without versionId the newest compatible version is installed. Rust uMod plugins are mods with provider "umod" (set_gameserver_rust_framework to oxide first). The server must be stopped. Requires confirm=true. Returns an operation (get_operation_status) and the installationId.

Permission
gameserver.mods.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • provider"modrinth" | "curseforge" | "thunderstore" | "umod" | "beamng" | "ficsit" | "hangar"required

  • projectIdstringrequired

    max length 200

  • versionIdstringoptional

    max length 200

  • titlestringoptional

    max length 200

  • resolveDependenciesbooleanoptional
  • confirmbooleanoptional

Remove Game Server Mod

uninstall_gameserver_mod
DestructiveNeeds confirmation

Remove an installed mod by its installationId (from list_gameserver_mods with installedOnly=true). Deletes the mod files. The server must be stopped. Requires confirm=true.

Permission
gameserver.mods.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired
  • confirmbooleanoptional

Check Game Server Mod and Plugin Updates

check_gameserver_addon_updates
Read-only

Check the installed mods (kind=mods) or plugins (kind=plugins) of a gameserver for newer versions. Install an update with install_gameserver_mod / install_gameserver_plugin and the reported versionId. refresh=true asks the providers again even for cached answers. Read-only.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • kind"mods" | "plugins"required

  • refreshbooleanoptional

List Game Server Plugins

list_gameserver_plugins
Read-only

List installed plugins (installedOnly=true) or search the plugin catalog (Modrinth, Hangar) of a Minecraft plugin server (Paper, Spigot, Purpur, Folia, Velocity, Waterfall), e.g. EssentialsX or LuckPerms. Results carry provider, projectId and the installation state. Page with offset/nextOffset.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • querystringoptional

    max length 200

  • provider"all" | "modrinth" | "hangar"optional

  • installedOnlybooleanoptional
  • offsetintegeroptional

    min 0 ยท max 9007199254740991

  • limitintegeroptional

    min 1 ยท max 48

  • sortstringoptional

    max length 40

Install or Update Game Server Plugin

install_gameserver_plugin
DestructiveNeeds confirmation

Install a plugin from list_gameserver_plugins (provider + projectId), with its required dependencies. With the versionId of an installed plugin it updates or downgrades it. The server must be stopped. Requires confirm=true. Returns an operation (get_operation_status) and the installationId.

Permission
gameserver.plugins.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • provider"modrinth" | "hangar"required

  • projectIdstringrequired

    max length 200

  • versionIdstringoptional

    max length 200

  • titlestringoptional

    max length 200

  • resolveDependenciesbooleanoptional
  • confirmbooleanoptional

Remove Game Server Plugin

uninstall_gameserver_plugin
DestructiveNeeds confirmation

Remove an installed plugin by its installationId (from list_gameserver_plugins with installedOnly=true). Deletes the plugin jar; its config folder stays. The server must be stopped. Requires confirm=true.

Permission
gameserver.plugins.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired
  • confirmbooleanoptional

Get Rust Plugin Framework

get_gameserver_rust_framework
Read-only

Rust servers only: the configured plugin framework (vanilla, oxide = uMod, carbon), the one the running server uses and whether a restart is needed to apply it.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Set Rust Plugin Framework

set_gameserver_rust_framework
DestructiveNeeds confirmation

Rust servers only: install or switch the plugin framework (oxide = Oxide/uMod, carbon = Carbon, vanilla = none). Applied on the next start/restart (restart_gameserver); world, cfg and plugin folders are kept. Then install uMod plugins with install_gameserver_mod (provider umod). Requires confirm=true.

Permission
gameserver.plugins.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • framework"vanilla" | "oxide" | "carbon"required

  • confirmbooleanoptional

List Minecraft Modpacks

list_gameserver_modpacks
Read-only

Minecraft servers only: search the modpack catalog (CurseForge, Modrinth, FTB, Technic) with search/provider/offset/limit. Pass modpackId to get that modpack's versions (versionId for install_gameserver_modpack) and a RAM hint.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • searchstringoptional

    max length 200

  • provider"all" | "modrinth" | "curseforge" | "ftb" | "technic"optional

  • offsetintegeroptional

    min 0 ยท max 100000

  • limitintegeroptional

    min 1 ยท max 100

  • modpackIdstringoptional

Install Minecraft Modpack

install_gameserver_modpack
DestructiveNeeds confirmation

Minecraft servers only: install a modpack (modpackId + versionId from list_gameserver_modpacks) like the panel library. The server type and Minecraft version follow the modpack and the server is reinstalled with it; other installed variants keep their data. To update the active modpack use update_gameserver_version with targetModpackVersion. Requires confirm=true.

Permission
gameserver.lifecycle.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • modpackIdstringrequired
  • versionIdstringrequired
  • confirmbooleanoptional

Get Game Server Steam Workshop

get_gameserver_workshop
Read-only

Steam workshop configuration of a gameserver whose game supports it (e.g. Garry's Mod, ARK, DayZ, Project Zomboid): item ids with titles and validation, the collection id, disabled items and whether changes wait for the next start.

Permission
gameserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Update Game Server Steam Workshop

update_gameserver_workshop
DestructiveNeeds confirmation

Change the Steam workshop items of a gameserver: addItemIds / removeItemIds edit the current list, itemIds replaces it, collectionId sets or (null) removes the collection, disabledItemIds keeps items listed but inactive. Omitted fields stay as they are. Applied on the next start/restart. Requires confirm=true.

Permission
gameserver.mods.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • itemIdsstring[]optional

    max items 500

  • addItemIdsstring[]optional

    max items 200

  • removeItemIdsstring[]optional

    max items 500

  • collectionIdstringoptional

    pattern ^\d{1,20}$

  • disabledItemIdsstring[]optional

    max items 500

  • confirmbooleanoptional

VPS

Start and stop, configuration, metrics, traffic, DNS, firewall, SSH keys, DDoS protection, schedules, rescue mode and reinstall.

List VPS

list_vservers
Read-onlyStart here

List VPS accessible with the current credential. Prefer list_account_services for cross-product discovery.

Permission
vserver.view
Granted when connecting
View services

Parameters

No parameters

Get VPS

get_vserver
Read-onlyStart here

Get one VPS by ID.

Permission
vserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get VPS Settings

get_vserver_config
Read-only

Read VPS configuration.

Permission
vserver.config.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Update VPS Settings

patch_vserver_config
DestructiveNeeds confirmation

Update VPS hostname, DNS, ballooning, or SSH password settings. Requires confirm=true.

Permission
vserver.config.writevserver.access.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • hostnamestringoptional
  • dnsServerstringoptional
  • ballooningDisabledbooleanoptional
  • sshPasswordEnabledbooleanoptional
  • confirmbooleanoptional

Get VPS Activity

get_vserver_activity
Read-only

Read paginated VPS activity log entries.

Permission
vserver.activity.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • limitintegeroptional

    min 1 ยท max 100

  • offsetintegeroptional

    min 0 ยท max 9007199254740991

Get VPS Traffic

get_vserver_traffic
Read-only

Read paginated VPS network traffic history.

Permission
vserver.traffic.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • limitintegeroptional

    min 1 ยท max 100

  • offsetintegeroptional

    min 0 ยท max 9007199254740991

Get VPS DDoS Status

get_vserver_ddos_status
Read-only

Get DDoS protection status of a VPS (read-only). Optional ipAddress selects an assigned address. Not every location has DDoS protection: there the answer is ddosProtectionAvailable=false, and the other vserver DDoS tools have no data either, so check this first.

Permission
vserver.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional

List VPS DDoS Rules

list_vserver_ddos_rules
Read-only

List the DDoS filter rules learned for a VPS IP.

Permission
vserver.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional

List VPS DDoS Incidents

list_vserver_ddos_incidents
Read-only

List inbound DDoS incidents against a VPS IP (paginated).

Permission
vserver.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional
  • pageintegeroptional

    > 0 ยท max 9007199254740991

  • pageSizeintegeroptional

    > 0 ยท max 100

Get VPS DDoS Bandwidth

get_vserver_ddos_bandwidth
Read-only

Get DDoS pass/drop bandwidth statistics of a VPS IP. range: 10m, 1h (default), 1d or 1w.

Permission
vserver.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • range"10m" | "1h" | "1d" | "1w"optional

  • ipAddressstringoptional

List Outgoing DDoS Attacks from VPS

list_vserver_outgoing_ddos
Read-only

List outgoing DDoS attacks detected from a VPS and whether it is flagged for reinstall.

Permission
vserver.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Turn VPS DDoS Protection On or Off

toggle_vserver_ddos_protection
DestructiveNeeds confirmation

Switch DDoS protection of a VPS IP on or off (service owner only). Switching it off leaves the IP unfiltered. Requires confirm=true.

Permission
vserver.ddos.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional
  • enabledbooleanoptional

    Target state (true = protected). Without it the current state is flipped.

  • confirmbooleanoptional

Get VPS DNS Settings

get_vserver_dns
Read-only

Read VPS DNS domains, subdomains, and favorite subdomain.

Permission
vserver.config.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

List Account SSH Keys

list_vserver_account_ssh_keys
Read-only

List SSH keys stored on the authenticated account.

Permission
vserver.config.read
Granted when connecting
Read configuration

Parameters

No parameters

Create VPS Subdomain

create_vserver_subdomain
Changes dataNeeds confirmation

Create a subdomain that points at the VPS (free ZAP domain or one of the customer's domains). Requires confirm=true.

Permission
vserver.config.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • labelstringrequired

    Subdomain label, e.g. `myserver` for myserver.<domain>.

  • domainIdstringoptional

    Domain from get_vserver_dns `domains[].id`; default `platform` (the free ZAP domain).

  • confirmbooleanoptional

Delete VPS Subdomain

delete_vserver_subdomain
DestructiveNeeds confirmation

Delete a subdomain of the VPS. Requires confirm=true.

Permission
vserver.config.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • subdomainIdstringrequired

    Subdomain id from get_vserver_dns.

  • confirmbooleanoptional

Set VPS Favorite Subdomain

set_vserver_favorite_subdomain
DestructiveNeeds confirmation

Set or clear the favorite subdomain shown as the VPS address. Requires confirm=true.

Permission
vserver.config.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • subdomainIdstringoptional

    Subdomain id from get_vserver_dns; null or omitted clears the favorite.

  • confirmbooleanoptional

Get VPS Reverse DNS

get_vserver_reverse_dns
Read-only

Read the reverse DNS (PTR) entries of the VPS IPv4 addresses and IPv6 prefixes.

Permission
vserver.config.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Update VPS Reverse DNS

update_vserver_reverse_dns
DestructiveNeeds confirmation

Set or reset the reverse DNS (PTR) hostname of one VPS IP. The hostname must resolve to that IP. Requires confirm=true.

Permission
vserver.config.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressIdstringoptional

    IPv4 entry from get_vserver_reverse_dns (`ipAddressId`). Pass this or ipv6PrefixAllocationId.

  • ipv6PrefixAllocationIdstringoptional

    IPv6 entry from get_vserver_reverse_dns (`ipv6PrefixAllocationId`).

  • hostnamestringoptional

    New PTR hostname (must resolve to the IP); empty or null resets it to the default.

  • confirmbooleanoptional

Update VPS Firewall Options

update_vserver_firewall_options
DestructiveNeeds confirmation

Turn the VPS firewall on or off and set the default in/out policies. A DROP policy without allow rules locks out SSH. Requires confirm=true.

Permission
vserver.firewall.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • enablebooleanrequired

    Firewall on (true) or off (false).

  • policyIn"ACCEPT" | "DROP" | "REJECT"required

    Default policy for incoming traffic no rule matches.

  • policyOut"ACCEPT" | "DROP" | "REJECT"required

    Default policy for outgoing traffic no rule matches.

  • confirmbooleanoptional

Change VPS Firewall Rule

mutate_vserver_firewall_rule
DestructiveNeeds confirmation

Add, update, delete or move a VPS firewall rule (positions from get_vserver_firewall). add/update need type and ruleAction. Requires confirm=true.

Permission
vserver.firewall.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • action"add" | "update" | "delete" | "move"required

  • posintegeroptional

    update/delete/move: `pos` of the rule as returned by get_vserver_firewall.

    min 0 ยท max 9007199254740991

  • newPosintegeroptional

    move: target position. add: optional insert position; default is after the existing customer rules (lowest priority, first match wins), so pass newPos to place a rule above an earlier ACCEPT.

    min 0 ยท max 9007199254740991

  • type"in" | "out"optional

    add/update: traffic direction.

  • ruleAction"ACCEPT" | "DROP" | "REJECT"optional

    add/update: what the rule does with matching traffic.

  • enablebooleanoptional

    add/update: rule active (default true).

  • macrostringoptional

    add/update: Proxmox firewall macro instead of proto/ports, e.g. SSH, HTTP, HTTPS, DNS, Ping.

  • protostringoptional

    add/update: protocol, e.g. tcp, udp, icmp, icmpv6.

  • sourcestringoptional

    add/update: source address, CIDR or +ipset_name (IP set of this VPS). Empty = any.

  • deststringoptional

    add/update: destination address, CIDR or +ipset_name. Empty = any.

  • sportstringoptional

    add/update: source port(s), e.g. 1024:65535.

  • dportstringoptional

    add/update: destination port(s), e.g. 22, 80,443 or 27015:27020.

  • commentstringoptional

    add/update: free text comment.

  • log"nolog" | "alert" | "crit" | "debug" | "emerg" | "err" | "info" | "notice" | "warning"optional

    add/update: log level (default nolog).

  • confirmbooleanoptional

Change VPS Firewall IP Set

mutate_vserver_firewall_ipset
DestructiveNeeds confirmation

Create or delete a VPS firewall IP set, or add/remove an address (cidr). Rules reference a set as +name. Requires confirm=true.

Permission
vserver.firewall.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • action"create" | "delete" | "add_entry" | "remove_entry"required

  • namestringrequired

    IP set name (letters, digits, - and _). Use it in rules as +name.

  • cidrstringoptional

    add_entry/remove_entry: IP address or CIDR, e.g. 203.0.113.7 or 198.51.100.0/24.

  • commentstringoptional

    add_entry: free text comment.

  • confirmbooleanoptional

List VPS SSH Keys

list_vserver_ssh_keys
Read-only

List the account SSH keys installed on one VPS.

Permission
vserver.config.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Install SSH Key on VPS

add_vserver_ssh_key
Changes dataNeeds confirmation

Install an account SSH key (list_vserver_account_ssh_keys) on the VPS as root authorized key. Requires confirm=true.

Permission
vserver.access.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • sshKeyIdstringrequired

    Key id from list_vserver_account_ssh_keys.

  • confirmbooleanoptional

Remove SSH Key from VPS

remove_vserver_ssh_key
DestructiveNeeds confirmation

Remove an SSH key from the VPS (the key stays in the account). Requires confirm=true.

Permission
vserver.access.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • sshKeyIdstringrequired

    Key id from list_vserver_ssh_keys.

  • confirmbooleanoptional

Add Account SSH Key

create_vserver_account_ssh_key
Changes dataNeeds confirmation

Add a public SSH key to the account key store (then install it with add_vserver_ssh_key). Requires confirm=true.

Permission
vserver.config.write
Granted when connecting
Change configuration

Parameters

  • namestringrequired
  • publicKeystringrequired

    OpenSSH public key line (ssh-ed25519/ssh-rsa/ecdsa ...). Never pass a private key.

  • confirmbooleanoptional

Update Account SSH Key

update_vserver_account_ssh_key
DestructiveNeeds confirmation

Rename an account SSH key or replace its public key on every VPS it is installed on. Requires confirm=true.

Permission
vserver.access.manage
Granted when connecting
Full access

Parameters

  • keyIdstringrequired

    Key id from list_vserver_account_ssh_keys.

  • namestringoptional
  • publicKeystringoptional

    Replaces the key on every VPS it is installed on.

  • confirmbooleanoptional

Delete Account SSH Key

delete_vserver_account_ssh_key
DestructiveNeeds confirmation

Delete an account SSH key and remove it from every VPS it is installed on. Requires confirm=true.

Permission
vserver.access.manage
Granted when connecting
Full access

Parameters

  • keyIdstringrequired

    Key id from list_vserver_account_ssh_keys.

  • confirmbooleanoptional

List VPS ISO Images

list_vserver_isos
Read-only

List the ISO images that can be mounted on the VPS (ZAP library and own custom ISOs) and the mounted one.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Mount ISO on VPS

mount_vserver_iso
Changes dataNeeds confirmation

Mount an ISO on the VPS (e.g. to install an own OS). Restart the VPS to boot from it. Requires confirm=true.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • isoIdstringoptional

    ISO id from list_vserver_isos `images[].id`.

  • volidstringoptional

    Alternative to isoId: the image's `volid` from list_vserver_isos.

  • applyHardwareProfilebooleanoptional

    Adapt the VM hardware to the ISO's OS (UEFI + TPM); default false. Set true for Windows 11 / UEFI-only ISOs.

  • attachDriverDiscbooleanoptional

    Attach the VirtIO driver disc (Windows installs).

  • bootFromIsobooleanoptional

    Boot from the ISO first; default true except driver/tool ISOs.

  • confirmbooleanoptional

Unmount ISO from VPS

unmount_vserver_iso
Changes dataNeeds confirmation

Eject the mounted ISO and boot from disk again. Requires confirm=true.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

List Custom VPS ISOs

list_vserver_custom_isos
Read-only

List the customer's own imported ISO images for VPS.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Import Custom VPS ISO

import_vserver_custom_iso
Changes dataNeeds confirmation

Import an own ISO from a public URL into the VPS ISO library. Returns an operation. Requires confirm=true.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • displayNamestringrequired
  • sourceUrlstringrequired

    Public http(s) URL of the .iso file.

  • filenamestringoptional
  • osProfile"linux" | "windows"optional

    OS of the ISO, sets the hardware profile on mount.

  • confirmbooleanoptional

Delete Custom VPS ISO

delete_vserver_custom_iso
DestructiveNeeds confirmation

Delete an own imported ISO. Requires confirm=true.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • assetIdstringrequired

    Custom ISO id from list_vserver_custom_isos.

  • confirmbooleanoptional

Get VPS Metrics

get_vserver_metrics
Read-only

Get VPS metrics for a timeframe. Each point is a Proxmox RRD average: `netInBytes`, `netOutBytes`, `diskReadBytes` and `diskWriteBytes` are average bytes per second over the point's step (not byte volumes; multiply by the gap between consecutive `time` values to get a volume), `cpuPercent` is the CPU usage in percent and `memoryUsedMb`/`memoryMaxMb` are MiB. `time` is a Unix timestamp in seconds. `points` is empty only when the VPS is not running. If the host of a running VPS does not return monitoring data (ZapX retries once), the call fails with HTTP 503 `vserver_metrics_unavailable` (MCP: an error result saying the metrics are temporarily unavailable) instead of returning an empty list: that does not mean the VPS is idle, retry later.

Permission
vserver.metrics.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • timeframe"hour" | "day" | "week" | "month"optional

Get VPS Firewall Rules

get_vserver_firewall
Read-only

Read the VPS firewall configuration.

Permission
vserver.firewall.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Start VPS

start_vserver
Changes dataNeeds confirmation

Start a VPS. Requires confirm=true.

Permission
vserver.power.start
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Stop VPS

stop_vserver
DestructiveNeeds confirmation

Stop a VPS. Requires confirm=true.

Permission
vserver.power.stop
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Restart VPS

restart_vserver
DestructiveNeeds confirmation

Restart a VPS. Requires confirm=true.

Permission
vserver.power.restart
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

List VPS Schedules

list_vserver_schedules
Read-only

List recurring VPS schedules (restart, start, stop, guest-agent command) the credential may manage.

Permission
vserver.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Create VPS Schedule

create_vserver_schedule
DestructiveNeeds confirmation

Create a recurring VPS schedule: action restart, start, stop or command (runs `command` through the QEMU guest agent). Five-field cron, evaluated in `timezone` (IANA, default UTC), at most every 5 minutes. Requires confirm=true.

Permission
vserver.power.restartvserver.power.startvserver.power.stopvserver.console.write
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • namestringrequired
  • action"restart" | "start" | "stop" | "command"required

  • cronstringrequired
  • timezonestringoptional
  • commandstringoptional
  • isActivebooleanoptional
  • confirmbooleanoptional

Update VPS Schedule

update_vserver_schedule
DestructiveNeeds confirmation

Update a VPS schedule (name, action, cron, timezone, command, isActive). Requires confirm=true.

Permission
vserver.power.restartvserver.power.startvserver.power.stopvserver.console.write
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • scheduleIdstringrequired
  • namestringoptional
  • action"restart" | "start" | "stop" | "command"optional

  • cronstringoptional
  • timezonestringoptional
  • commandstringoptional
  • isActivebooleanoptional
  • confirmbooleanoptional

Delete VPS Schedule

delete_vserver_schedule
DestructiveNeeds confirmation

Delete a VPS schedule. Requires confirm=true.

Permission
vserver.power.restartvserver.power.startvserver.power.stopvserver.console.write
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • scheduleIdstringrequired
  • confirmbooleanoptional

Enable VPS Rescue Mode

enable_vserver_rescue
DestructiveNeeds confirmation

Enable VPS rescue mode. Requires confirm=true.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Disable VPS Rescue Mode

disable_vserver_rescue
DestructiveNeeds confirmation

Disable VPS rescue mode. Requires confirm=true.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

List VPS Reinstall Templates

list_vserver_reinstall_templates
Read-only

List available VPS reinstall templates. minDiskGb is the minimum disk in GB the template needs (null = none); templates above the VPS disk are rejected.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

No parameters

Reinstall VPS

reinstall_vserver
DestructiveNeeds confirmation

Reinstall a VPS. Requires confirm=true.

Permission
vserver.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • templateIdstringoptional
  • confirmbooleanoptional

Dedicated servers

Power state, hardware, metrics, traffic, installation, custom ISOs, reverse DNS, DDoS protection, remote management and rescue mode.

List Dedicated Servers

list_dedicated_servers
Read-onlyStart here

List dedicated servers accessible with the current credential. Prefer list_account_services for cross-product discovery.

Permission
dedicated.view
Granted when connecting
View services

Parameters

No parameters

Get Dedicated Server

get_dedicated_server
Read-onlyStart here

Get one dedicated server by ID.

Permission
dedicated.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server Power State

get_dedicated_power_state
Read-only

Get dedicated server hardware power state.

Permission
dedicated.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server Metrics

get_dedicated_metrics
Read-only

Get dedicated server hardware metrics for a timeframe.

Permission
dedicated.metrics.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • range"1h" | "6h" | "24h" | "7d" | "30d"optional

Get Dedicated Server Hardware

get_dedicated_hardware
Read-only

Get dedicated server hardware inventory.

Permission
dedicated.hardware.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server Traffic

get_dedicated_traffic
Read-only

Get dedicated server traffic overview for a timeframe.

Permission
dedicated.traffic.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • range"1h" | "6h" | "24h" | "7d" | "30d"optional

Get Dedicated Server Traffic Quota

get_dedicated_traffic_quota
Read-only

Get dedicated server traffic quota snapshot.

Permission
dedicated.traffic.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server Traffic History

get_dedicated_traffic_history
Read-only

Get dedicated server traffic history entries.

Permission
dedicated.traffic.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • limitintegeroptional

    > 0 ยท max 9007199254740991

  • offsetintegeroptional

    min 0 ยท max 9007199254740991

Get Dedicated Server Activity

get_dedicated_activity
Read-only

Read recent dedicated server activity logs.

Permission
dedicated.activity.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • limitintegeroptional

    > 0 ยท max 9007199254740991

  • offsetintegeroptional

    min 0 ยท max 9007199254740991

Get Dedicated Server Installation

get_dedicated_installation
Read-only

Get dedicated server installation status.

Permission
dedicated.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server Installation Progress

get_dedicated_installation_progress
Read-only

Get dedicated server installation progress and log.

Permission
dedicated.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server Installation Options

get_dedicated_installation_options
Read-only

List install media, reinstall, rescue, and custom ISO options.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server Reverse DNS

get_dedicated_reverse_dns
Read-only

Read reverse DNS entries for a dedicated server.

Permission
dedicated.network.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Dedicated Server DDoS Status

get_dedicated_ddos_status
Read-only

Get DDoS protection status for a dedicated server.

Permission
dedicated.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional

List Dedicated Server DDoS Rules

list_dedicated_ddos_rules
Read-only

List DDoS protection rules for a dedicated server.

Permission
dedicated.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional

List Dedicated Server DDoS Incidents

list_dedicated_ddos_incidents
Read-only

List DDoS incidents for a dedicated server.

Permission
dedicated.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional
  • pageintegeroptional

    > 0 ยท max 9007199254740991

  • pageSizeintegeroptional

    > 0 ยท max 100

Get Dedicated Server DDoS Bandwidth

get_dedicated_ddos_bandwidth
Read-only

Get DDoS bandwidth statistics for a dedicated server.

Permission
dedicated.ddos.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • rangestringoptional
  • ipAddressstringoptional

Get Dedicated Server Remote Management

get_dedicated_remote_management
Read-only

Get dedicated server remote management session state.

Permission
dedicated.remote_management.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

List Dedicated Server Custom ISOs

list_dedicated_custom_isos
Read-only

List custom ISO assets available for a dedicated server.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

List Dedicated Server Reinstall Templates

list_dedicated_reinstall_templates
Read-only

List the OS installation ISOs of the dedicated server catalog. They are not installed automatically: mount one and install it through remote management.

Permission
dedicated.reinstall
Granted when connecting
Full access

Parameters

No parameters

Start Dedicated Server

start_dedicated_server
Changes dataNeeds confirmation

Start a dedicated server. Requires confirm=true.

Permission
dedicated.power.start
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Stop Dedicated Server

stop_dedicated_server
DestructiveNeeds confirmation

Stop a dedicated server. Requires confirm=true.

Permission
dedicated.power.stop
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • mode"gracefulShutdown" | "forceShutdown"optional

  • confirmbooleanoptional

Restart Dedicated Server

restart_dedicated_server
DestructiveNeeds confirmation

Restart a dedicated server. Requires confirm=true.

Permission
dedicated.power.restart
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • mode"gracefulRestart" | "forceRestart" | "powerCycle"optional

  • confirmbooleanoptional

Reinstall Dedicated Server

reinstall_dedicated_server
DestructiveNeeds confirmation

Reset a dedicated server: wipes all disks and installs NO operating system (osTemplateId is only validated, not installed). Mount a catalog ISO afterwards to install an OS. Requires confirm=true.

Permission
dedicated.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • osTemplateIdstringoptional

    Optional catalog template id; only validated, nothing is installed (the reset only wipes the disks).

  • confirmbooleanoptional

Wipe Dedicated Server

wipe_dedicated_server
DestructiveNeeds confirmation

Wipe a dedicated server. Requires confirm=true.

Permission
dedicated.reinstall
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Update Dedicated Server Reverse DNS

update_dedicated_reverse_dns
DestructiveNeeds confirmation

Update reverse DNS for a dedicated server. Requires confirm=true.

Permission
dedicated.network.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressIdstringoptional
  • ipv6PrefixAllocationIdstringoptional
  • hostnamestringoptional
  • confirmbooleanoptional

Refresh Dedicated Server Installation

refresh_dedicated_installation
Changes dataNeeds confirmation

Refresh dedicated server installation media and boot state. Requires confirm=true.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Mount Dedicated Server Install Media

mount_dedicated_install_media
Changes dataNeeds confirmation

Mount install media on a dedicated server. Requires confirm=true.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • templateIdstringrequired
  • confirmbooleanoptional

Unmount Dedicated Server Install Media

unmount_dedicated_install_media
Changes dataNeeds confirmation

Unmount install media from a dedicated server. Requires confirm=true.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional
Changes dataNeeds confirmation

Set the next boot device for a dedicated server. Requires confirm=true.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • device"disk" | "virtual_media"required

  • confirmbooleanoptional
DestructiveNeeds confirmation

Enable rescue mode on a dedicated server. Requires confirm=true.

Permission
dedicated.rescue.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • templateIdstringrequired
  • confirmbooleanoptional
DestructiveNeeds confirmation

Disable rescue mode on a dedicated server. Requires confirm=true.

Permission
dedicated.rescue.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Activate Dedicated Server Remote Management

activate_dedicated_remote_management
Changes dataNeeds confirmation

Activate remote management for a dedicated server. Requires confirm=true.

Permission
dedicated.remote_management.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • durationHoursintegeroptional

    > 0 ยท max 9007199254740991

  • confirmbooleanoptional

Extend Dedicated Server Remote Management

extend_dedicated_remote_management
Changes dataNeeds confirmation

Extend remote management for a dedicated server. Requires confirm=true.

Permission
dedicated.remote_management.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Revoke Dedicated Server Remote Management

revoke_dedicated_remote_management
DestructiveNeeds confirmation

Revoke remote management for a dedicated server. Requires confirm=true.

Permission
dedicated.remote_management.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Launch Dedicated Server Remote Management

launch_dedicated_remote_management
DestructiveNeeds confirmation

Issue a remote management launch URL for a dedicated server. Requires confirm=true.

Permission
dedicated.remote_management.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Turn Dedicated Server DDoS Protection On or Off

toggle_dedicated_ddos_protection
DestructiveNeeds confirmation

Toggle DDoS protection for a dedicated server. Requires confirm=true.

Permission
dedicated.ddos.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipAddressstringoptional
  • enabledbooleanoptional

    Target state (true = protected). Without it the current state is flipped.

  • confirmbooleanoptional

Import Dedicated Server Custom ISO

import_dedicated_custom_iso
Changes dataNeeds confirmation

Import a custom ISO for dedicated servers. Requires confirm=true.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • displayNamestringrequired
  • sourceUrlstringrequired

    format uri

  • filenamestringoptional
  • confirmbooleanoptional

Delete Dedicated Server Custom ISO

delete_dedicated_custom_iso
DestructiveNeeds confirmation

Delete a custom ISO asset. Requires confirm=true.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • assetIdstringrequired
  • confirmbooleanoptional

Mount Dedicated Server Custom ISO

mount_dedicated_custom_iso
Changes dataNeeds confirmation

Mount a custom ISO on a dedicated server. Requires confirm=true.

Permission
dedicated.installation.manage
Granted when connecting
Full access

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • assetIdstringrequired
  • confirmbooleanoptional

TeamSpeak servers

Status, start and stop, settings, clients, bans and privilege keys.

List TeamSpeak Servers

list_teamspeak_servers
Read-onlyStart here

List TeamSpeak servers accessible with the current credential. Prefer list_account_services for cross-product discovery.

Permission
teamspeak.view
Granted when connecting
View services

Parameters

No parameters

Get TeamSpeak Server

get_teamspeak_server
Read-onlyStart here

Get one TeamSpeak server by ID.

Permission
teamspeak.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get TeamSpeak Settings

get_teamspeak_config
Read-only

Read TeamSpeak server configuration.

Permission
teamspeak.config.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Update TeamSpeak Settings

update_teamspeak_config
DestructiveNeeds confirmation

Update TeamSpeak server configuration. Requires confirm=true.

Permission
teamspeak.config.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • propertiesRecord<string, string | number>required
  • confirmbooleanoptional

List TeamSpeak Privilege Keys

list_teamspeak_tokens
Read-only

List privilege tokens for a TeamSpeak server.

Permission
teamspeak.tokens.manage
Granted when connecting
TeamSpeak management

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Create TeamSpeak Privilege Key

create_teamspeak_token
DestructiveNeeds confirmation

Create a TeamSpeak privilege token. Requires confirm=true.

Permission
teamspeak.tokens.manage
Granted when connecting
TeamSpeak management

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • descriptionstringoptional

    max length 100

  • confirmbooleanoptional

Start TeamSpeak Server

start_teamspeak_server
Changes dataNeeds confirmation

Start a TeamSpeak server. Requires confirm=true.

Permission
teamspeak.power.start
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Stop TeamSpeak Server

stop_teamspeak_server
DestructiveNeeds confirmation

Stop a TeamSpeak server. Requires confirm=true.

Permission
teamspeak.power.stop
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Restart TeamSpeak Server

restart_teamspeak_server
DestructiveNeeds confirmation

Restart a TeamSpeak server. Requires confirm=true.

Permission
teamspeak.power.restart
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Get TeamSpeak Metrics

get_teamspeak_metrics
Read-only

Get TeamSpeak server metrics.

Permission
teamspeak.metrics.read
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

List TeamSpeak Connected Clients

list_teamspeak_clients
Read-only

List connected TeamSpeak clients.

Permission
teamspeak.clients.manage
Granted when connecting
TeamSpeak management

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

List TeamSpeak Bans

list_teamspeak_bans
Read-only

List TeamSpeak server bans.

Permission
teamspeak.bans.manage
Granted when connecting
TeamSpeak management

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Add TeamSpeak Ban

add_teamspeak_ban
Changes dataNeeds confirmation

Add a TeamSpeak ban. Requires confirm=true.

Permission
teamspeak.bans.manage
Granted when connecting
TeamSpeak management

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • ipstringoptional
  • uidstringoptional
  • namestringoptional
  • timenumberoptional
  • reasonstringoptional
  • confirmbooleanoptional

Delete TeamSpeak Ban

delete_teamspeak_ban
DestructiveNeeds confirmation

Delete a TeamSpeak ban. Requires confirm=true.

Permission
teamspeak.bans.manage
Granted when connecting
TeamSpeak management

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • banIdintegerrequired

    > 0 ยท max 9007199254740991

  • confirmbooleanoptional

Delete TeamSpeak Privilege Key

delete_teamspeak_token
DestructiveNeeds confirmation

Delete a TeamSpeak privilege token. Requires confirm=true.

Permission
teamspeak.tokens.manage
Granted when connecting
TeamSpeak management

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • tokenstringrequired
  • confirmbooleanoptional

Discord bots

Status, console, start and stop and the activity of your Discord bots.

List Discord Bots

list_discord_bots
Read-onlyStart here

List Discord bots accessible with the current token.

Permission
discord_bot.view
Granted when connecting
View services

Parameters

No parameters

Get Discord Bot

get_discord_bot
Read-onlyStart here

Get Discord bot details.

Permission
discord_bot.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Discord Bot Container Status

get_discord_bot_container_status
Read-only

Get Discord bot container and port reachability status.

Permission
discord_bot.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Get Discord Bot Activity

get_discord_bot_activity
Read-only

Read recent Discord bot activity logs.

Permission
discord_bot.view
Granted when connecting
View services

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • limitintegeroptional

    min 1 ยท max 100

  • offsetintegeroptional

    min 0 ยท max 9007199254740991

Start Discord Bot

start_discord_bot
Changes dataNeeds confirmation

Start a Discord bot. Requires confirm=true.

Permission
discord_bot.start
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Stop Discord Bot

stop_discord_bot
DestructiveNeeds confirmation

Stop a Discord bot. Requires confirm=true.

Permission
discord_bot.stop
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Restart Discord Bot

restart_discord_bot
DestructiveNeeds confirmation

Restart a Discord bot. Requires confirm=true.

Permission
discord_bot.restart
Granted when connecting
Power actions

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • confirmbooleanoptional

Get Discord Bot Console Logs

get_discord_bot_console_logs
Read-only

Get recent Discord bot console log lines.

Permission
discord_bot.console.read
Granted when connecting
Console & Logs

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • linesintegeroptional

    Number of recent log lines to return, 1-200 (default 50). Values above 200 are rejected.

    > 0 ยท max 200

Send Discord Bot Console Command

send_discord_bot_console_command
DestructiveNeeds confirmation

Send a command to the Discord bot console. Requires confirm=true.

Permission
discord_bot.console.write
Granted when connecting
Console & Logs

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • commandstringrequired

    max length 500

  • confirmbooleanoptional

Domains

Domains, DNS records, nameservers, parking page and auto-renewal.

List Domains

list_domains
Read-onlyStart here

List domains accessible with the current credential (own and shared): name, status, dnsMode (managed = ZapX nameservers, external = own nameservers), auto-renew, expiry, nameservers. Read-only.

Permission
domain.view
Granted when connecting
View services

Parameters

No parameters

Get Domain

get_domain
Read-only

Get one domain by ID. Read-only.

Permission
domain.view
Granted when connecting
View services

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

Get Domain DNS Records

get_domain_dns_records
Read-onlyStart here

List the DNS records of a domain (id, name, type, content, ttl, priority/weight/port, linkedService) plus the parking page state. mode managed or cloudflare-protected = records are editable with the DNS tools; read-only = the domain uses external nameservers, manage its records there. Records with linkedService belong to a server link or One-Click Apps and cannot be changed here. Read-only.

Permission
domain.dns.read
Granted when connecting
Read configuration

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

Create Domain DNS Record

create_domain_dns_record
Changes dataNeeds confirmation

Create a DNS record on a domain with ZapX nameservers (or an active Cloudflare protection). name is relative to the domain ('@' = the domain itself). MX needs priority, SRV needs priority, weight and port. Requires confirm=true.

Permission
domain.dns.write
Granted when connecting
Domain management

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

  • type"A" | "AAAA" | "CAA" | "CNAME" | "MX" | "NS" | "SRV" | "SSHFP" | "TLSA" | "TXT"required

    Record type.

  • namestringoptional

    Record name relative to the domain: '@' (default) for the domain itself, 'www', '_acme-challenge', ...

    max length 253

  • contentstringrequired

    Record value (IP address, hostname, TXT text, ...).

    max length 4096

  • ttlintegeroptional

    TTL in seconds (default 3600, min 60).

    min 60 ยท max 9007199254740991

  • priorityintegeroptional

    MX/SRV priority.

    min 0 ยท max 65535

  • weightintegeroptional

    SRV weight.

    min 0 ยท max 65535

  • portintegeroptional

    SRV port.

    min 0 ยท max 65535

  • confirmbooleanoptional

    Must be true to apply the change.

Update Domain DNS Record

update_domain_dns_record
DestructiveNeeds confirmation

Replace a DNS record (name, content, ttl, priority/weight/port). The record type cannot change: delete the record and create a new one instead. Requires confirm=true.

Permission
domain.dns.write
Granted when connecting
Domain management

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

  • recordIdstringrequired

    Record id from get_domain_dns_records.

  • type"A" | "AAAA" | "CAA" | "CNAME" | "MX" | "NS" | "SRV" | "SSHFP" | "TLSA" | "TXT"required

    Record type.

  • namestringoptional

    Record name relative to the domain: '@' (default) for the domain itself, 'www', '_acme-challenge', ...

    max length 253

  • contentstringrequired

    Record value (IP address, hostname, TXT text, ...).

    max length 4096

  • ttlintegeroptional

    TTL in seconds (default 3600, min 60).

    min 60 ยท max 9007199254740991

  • priorityintegeroptional

    MX/SRV priority.

    min 0 ยท max 65535

  • weightintegeroptional

    SRV weight.

    min 0 ยท max 65535

  • portintegeroptional

    SRV port.

    min 0 ยท max 65535

  • confirmbooleanoptional

    Must be true to apply the change.

Delete Domain DNS Record

delete_domain_dns_record
DestructiveNeeds confirmation

Delete a DNS record of a domain. The domain's own NS records on '@' and records of server links / One-Click Apps cannot be deleted. Requires confirm=true.

Permission
domain.dns.write
Granted when connecting
Domain management

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

  • recordIdstringrequired

    Record id from get_domain_dns_records.

  • confirmbooleanoptional

    Must be true to apply the change.

Set Domain Parking Page

set_domain_parking_page
DestructiveNeeds confirmation

Switch the ZapX parking page of a domain with ZapX nameservers on or off (A records on '@', 'www' and '*'). If switching on would replace own records, nothing is written and the result lists them under replace with needsConfirmation=true; call again with their ids in confirmedReplaceRecordIds. Requires confirm=true.

Permission
domain.dns.write
Granted when connecting
Domain management

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

  • enabledbooleanrequired

    true = show the ZapX parking page, false = remove it.

  • confirmedReplaceRecordIdsstring[]optional

    Ids of the own records the previous call listed under `replace` (switching on only).

    max items 200

  • confirmbooleanoptional

    Must be true to apply the change.

Get Domain Nameservers

get_domain_nameservers
Read-only

Read the nameserver delegation of a domain (dnsMode managed/external and the nameservers). Read-only.

Permission
domain.dns.read
Granted when connecting
Read configuration

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

Set Domain Nameservers

set_domain_nameservers
DestructiveNeeds confirmation

Change the nameservers of a domain at the registrar (domain owner only). mode managed = back to the ZapX nameservers; mode external = own nameservers (2-13 distinct hostnames that resolve). Switching to external nameservers means the DNS records at ZapX no longer answer for the domain. Requires confirm=true.

Permission
domain.nameservers.write
Granted when connecting
Domain management

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

  • mode"managed" | "external"required

    managed = ZapX nameservers (DNS records editable here), external = own nameservers.

  • nameserversstring[]optional

    External nameserver hostnames (mode external only, 2-13 distinct).

    min items 2 ยท max items 13

  • confirmbooleanoptional

    Must be true to apply the change.

Get Domain Renewal Status

get_domain_renewal
Read-only

Read the renewal state of a domain (domain owner only): autoRenew, expiresAt, registrarStatus, scheduledDeletionAt, nextRenewalChargeAt. Read-only.

Permission
domain.view
Granted when connecting
View services

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

Set Domain Auto-Renew

set_domain_auto_renew
DestructiveNeeds confirmation

Turn auto-renew of a domain on or off (domain owner only). With auto-renew off the domain is neither renewed nor charged at the end of its term and expires. Requires confirm=true.

Permission
domain.renewal.manage
Granted when connecting
Domain management

Parameters

  • domainIdstringrequired

    Domain id (from list_domains or list_account_services).

  • autoRenewbooleanrequired

    false = the domain is not renewed (nor charged) at the end of its term and expires.

  • confirmbooleanoptional

    Must be true to apply the change.

Files

List, read, write, rename and delete files of game servers and Discord bots.

List Discord Bot Files

list_discord_bot_files
Read-onlyStart here

List files in a Discord bot directory.

Permission
discord_bot.files.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • pathstringoptional
  • includeFolderSizesbooleanoptional

Read Discord Bot File

read_discord_bot_file
Read-only

Read an editable text file from a Discord bot.

Permission
discord_bot.files.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • pathstringrequired

Edit Discord Bot File

mutate_discord_bot_file
DestructiveNeeds confirmation

Create, rename, delete, or write Discord bot file content. Destructive actions require confirm=true.

Permission
discord_bot.files.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Discord bot: the "id" field from list_account_services or list_discord_bots (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • action"write" | "create_file" | "create_dir" | "rename" | "delete"required

  • pathstringrequired
  • contentstringoptional
  • expectedRevisionstringoptional

    `revision` returned when the file was read. With action `write` the write is refused (409 file_changed) when the file changed since; re-read and retry.

  • newNamestringoptional
  • confirmbooleanoptional

List Game Server Files

list_gameserver_files
Read-onlyStart here

List files in a gameserver directory.

Permission
gameserver.files.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • pathstringoptional
  • scope"savegame" | "config" | "active"optional

    `savegame` restricts to savegame paths; `config`/`active` resolve paths from the game data root.

  • includeFolderSizesbooleanoptional

Read Game Server File

read_gameserver_file
Read-only

Read text content of a gameserver file.

Permission
gameserver.files.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • pathstringrequired
  • scope"savegame" | "config" | "active"optional

    `savegame` restricts to savegame paths; `config`/`active` resolve paths from the game data root.

Edit Game Server File

mutate_gameserver_file
DestructiveNeeds confirmation

Create, write, rename, delete, move or copy a gameserver file or folder. move/copy put entries into an existing destination folder and never overwrite. Destructive actions (write, rename, delete, move) require confirm=true.

Permission
gameserver.files.write
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • action"write" | "create_file" | "create_dir" | "rename" | "delete" | "move" | "copy"required

  • pathstringoptional

    File or folder to act on (required except for move/copy given `paths`). For move/copy: the single entry to transfer.

  • contentstringoptional
  • expectedRevisionstringoptional

    `revision` returned when the file was read. With action `write` the write is refused (409 file_changed) when the file changed since; re-read and retry.

  • newNamestringoptional
  • pathsstring[]optional

    move/copy: several entries to transfer at once (overrides path).

    min items 1 ยท max items 100

  • destinationstringoptional

    move/copy: existing folder the entries go into, keeping their names. Nothing is overwritten: a taken name or a missing folder refuses the request.

  • scope"savegame" | "config" | "active"optional

    `savegame` restricts to savegame paths; `config`/`active` resolve paths from the game data root.

  • confirmbooleanoptional

One-Click Apps (VPS and dedicated)

App catalog (Pterodactyl, Nextcloud, n8n, ...), install, start/stop/restart, logs and uninstall; game servers inside Pterodactyl are created in its own panel.

List VPS One-Click Apps

get_vserver_apps
Read-onlyStart here

One-Click Apps (Coolify apps such as Pterodactyl, Nextcloud, n8n, Uptime Kuma) on a VPS: setup status, installed apps with status and access URL, whether apps can be installed. No passwords are returned. live=true asks the panel for the current status.

Permission
vserver.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • livebooleanoptional

    Ask the panel for the live status (slower; needs the manage permission), default the stored status.

Search VPS App Catalog

list_vserver_app_catalog
Read-only

Search the One-Click Apps catalog for a VPS (name, description, category, paged). Use the type with get_vserver_app_catalog_entry before installing.

Permission
vserver.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • searchstringoptional

    Free text search over name, description and tags.

    max length 200

  • categorystringoptional

    max length 100

  • pageintegeroptional

    > 0 ยท max 9007199254740991

  • pageSizeintegeroptional

    > 0 ยท max 50

Get VPS App Catalog Entry

get_vserver_app_catalog_entry
Read-only

One catalog app with its install fields and install guidance (which values to ask the user for; apps that need a secret can only be installed in the dashboard).

Permission
vserver.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • catalogTypestringrequired

    max length 128

Get VPS App Logs

get_vserver_app_logs
Read-only

Recent container logs of an installed One-Click App on a VPS (secrets and login links removed). Read them before suggesting a restart.

Permission
vserver.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • linesintegeroptional

    min 50 ยท max 500

Install VPS One-Click App

install_vserver_app
Changes dataNeeds confirmation

Install a One-Click App on a VPS (queued, takes a few minutes; check with get_vserver_apps). Follow the catalog entry's install guidance first. Requires confirm=true.

Permission
vserver.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • catalogTypestringrequired

    Catalog type from the app catalog.

    max length 128

  • displayNamestringrequired

    min length 2 ยท max length 80

  • envValuesRecord<string, string>optional

    Non-secret catalog fields only (see the catalog entry's install.requiredCustomerEnvFields).

  • customEnvsobject[]optional

    max items 50

  • confirmbooleanoptional
  • withoutHostnamebooleanoptional

    Skip the default HTTPS zap.cloud address (only when the user wants no domain).

DestructiveNeeds confirmation

Start, stop or restart an installed One-Click App on a VPS. Requires confirm=true.

Permission
vserver.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • action"start" | "stop" | "restart"required

  • confirmbooleanoptional

Uninstall VPS One-Click App

uninstall_vserver_app
DestructiveNeeds confirmation

Uninstall a One-Click App from a VPS. Keeps the app data unless deleteVolumes=true. Requires confirm=true.

Permission
vserver.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • deleteVolumesbooleanoptional

    Also delete the app's persistent data (volumes). Only when the user explicitly asked for it; default keeps the data.

  • confirmbooleanoptional

Reinstall VPS One-Click App

reinstall_vserver_app
DestructiveNeeds confirmation

Reinstall a One-Click App on a VPS (redeploys it; keeps the data unless deleteVolumes=true). Requires confirm=true.

Permission
vserver.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • deleteVolumesbooleanoptional

    Also delete the app's persistent data (volumes). Only when the user explicitly asked for it; default keeps the data.

  • confirmbooleanoptional
Read-onlyStart here

One-Click Apps (Coolify apps such as Pterodactyl, Nextcloud, n8n, Uptime Kuma) on a dedicated server: setup status, installed apps with status and access URL, whether apps can be installed. No passwords are returned. live=true asks the panel for the current status.

Permission
dedicated.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • livebooleanoptional

    Ask the panel for the live status (slower; needs the manage permission), default the stored status.

Search Dedicated Server App Catalog

list_dedicated_app_catalog
Read-only

Search the One-Click Apps catalog for a dedicated server (name, description, category, paged). Use the type with get_dedicated_app_catalog_entry before installing.

Permission
dedicated.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • searchstringoptional

    Free text search over name, description and tags.

    max length 200

  • categorystringoptional

    max length 100

  • pageintegeroptional

    > 0 ยท max 9007199254740991

  • pageSizeintegeroptional

    > 0 ยท max 50

Get Dedicated Server App Catalog Entry

get_dedicated_app_catalog_entry
Read-only

One catalog app with its install fields and install guidance (which values to ask the user for; apps that need a secret can only be installed in the dashboard).

Permission
dedicated.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • catalogTypestringrequired

    max length 128

Get Dedicated Server App Logs

get_dedicated_app_logs
Read-only

Recent container logs of an installed One-Click App on a dedicated server (secrets and login links removed). Read them before suggesting a restart.

Permission
dedicated.apps.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • linesintegeroptional

    min 50 ยท max 500

Changes dataNeeds confirmation

Install a One-Click App on a dedicated server (queued, takes a few minutes; check with get_dedicated_apps). Follow the catalog entry's install guidance first. Requires confirm=true.

Permission
dedicated.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • catalogTypestringrequired

    Catalog type from the app catalog.

    max length 128

  • displayNamestringrequired

    min length 2 ยท max length 80

  • envValuesRecord<string, string>optional

    Non-secret catalog fields only (see the catalog entry's install.requiredCustomerEnvFields).

  • customEnvsobject[]optional

    max items 50

  • confirmbooleanoptional
DestructiveNeeds confirmation

Start, stop or restart an installed One-Click App on a dedicated server. Requires confirm=true.

Permission
dedicated.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • action"start" | "stop" | "restart"required

  • confirmbooleanoptional
DestructiveNeeds confirmation

Uninstall a One-Click App from a dedicated server. Keeps the app data unless deleteVolumes=true. Requires confirm=true.

Permission
dedicated.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • deleteVolumesbooleanoptional

    Also delete the app's persistent data (volumes). Only when the user explicitly asked for it; default keeps the data.

  • confirmbooleanoptional
DestructiveNeeds confirmation

Reinstall a One-Click App on a dedicated server (redeploys it; keeps the data unless deleteVolumes=true). Requires confirm=true.

Permission
dedicated.apps.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • installationIdstringrequired

    Installation id from get_vserver_apps / get_dedicated_apps.

    max length 64

  • deleteVolumesbooleanoptional

    Also delete the app's persistent data (volumes). Only when the user explicitly asked for it; default keeps the data.

  • confirmbooleanoptional

Backups and snapshots

Create, restore and delete backups and snapshots.

List Game Server Backups

list_gameserver_backups
Read-onlyStart here

List gameserver backups.

Permission
gameserver.backups.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Create Game Server Backup

create_gameserver_backup
DestructiveNeeds confirmation

Create a gameserver backup. Requires confirm=true.

Permission
gameserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • namestringoptional

    max length 120

  • confirmbooleanoptional

Delete Game Server Backup

delete_gameserver_backup
DestructiveNeeds confirmation

Delete a gameserver backup. Requires confirm=true.

Permission
gameserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • backupIdstringrequired
  • confirmbooleanoptional

Restore Game Server Backup

restore_gameserver_backup
DestructiveNeeds confirmation

Restore a gameserver backup. Requires confirm=true.

Permission
gameserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • backupIdstringrequired
  • confirmbooleanoptional

List VPS Backups

list_vserver_backups
Read-onlyStart here

List VPS backups.

Permission
vserver.backups.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

List VPS Snapshots

list_vserver_snapshots
Read-only

List VPS VM snapshots.

Permission
vserver.backups.read
Granted when connecting
Read configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Create VPS Snapshot

create_vserver_snapshot
Changes dataNeeds confirmation

Create a VPS VM snapshot. Requires confirm=true.

Permission
vserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • namestringrequired
  • descriptionstringoptional
  • includeRambooleanoptional
  • confirmbooleanoptional

Delete VPS Snapshot

delete_vserver_snapshot
DestructiveNeeds confirmation

Delete a VPS VM snapshot. Requires confirm=true.

Permission
vserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • namestringrequired
  • confirmbooleanoptional

Roll Back VPS to Snapshot

rollback_vserver_snapshot
DestructiveNeeds confirmation

Roll back a VPS to a named snapshot. Requires confirm=true.

Permission
vserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • namestringrequired
  • confirmbooleanoptional

Create VPS Backup

create_vserver_backup
Changes dataNeeds confirmation

Create a VPS backup. Requires confirm=true.

Permission
vserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • notesstringoptional

    max length 500

  • confirmbooleanoptional

Delete VPS Backup

delete_vserver_backup
DestructiveNeeds confirmation

Delete a VPS backup. Requires confirm=true.

Permission
vserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • backupIdstringrequired
  • confirmbooleanoptional

Restore VPS Backup

restore_vserver_backup
DestructiveNeeds confirmation

Restore a VPS backup. Requires confirm=true.

Permission
vserver.backups.manage
Granted when connecting
Change configuration

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • backupIdstringrequired
  • confirmbooleanoptional

Plan changes

Upgrades and downgrades with a price preview, applied only after your explicit confirmation.

Get Game Server Plan Change Options

get_gameserver_plan_change_options
Read-onlyStart hereNot in the ChatGPT and Claude connectors

List available gameserver plan-change targets (packages and custom constraints) for a service. Use preview_gameserver_plan_change for the full change overview with pricing before applying.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
gameserver.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Preview Game Server Plan Change

preview_gameserver_plan_change
Read-onlyNot in the ChatGPT and Claude connectors

Return a read-only overview of the planned gameserver package/configuration change: current vs. target resources, pricing (recurring old/new, delta, immediate charges or credits, billing period), blockers, migration requirements, and a one-time previewConfirmationNonce when allowed. Read-only. Never call apply_* in the same assistant turn. After preview, you MUST send a user-visible message that includes old price, new price, delta, and immediate charge or credit from confirmation.pricingSummary. Then STOP and wait for an explicit user reply (for example 'Ja') in a NEW turn. A user request like 'upgrade to 3 GB' only authorizes preview, not apply. Pass couponCode only when the user gave you a coupon code for this upgrade (never guess or invent one): an accepted code is shown as pricing.couponCode / pricing.couponDiscountCents and is already subtracted from the immediate charge; a refused code makes the preview not allowed with coupon.error -- tell the user why and preview again without the code if they want to continue.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
gameserver.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.pricingMode"package" | "custom"optional

  • target.targetPackageKeystringoptional
  • target.ramMbintegeroptional

    > 0 ยท max 9007199254740991

  • target.cpuMillisintegeroptional

    > 0 ยท max 9007199254740991

  • target.diskMbintegeroptional

    > 0 ยท max 9007199254740991

  • target.slotsintegeroptional

    > 0 ยท max 9007199254740991

  • target.dedicatedIpbooleanoptional
  • target.premiumCpubooleanoptional

    Premium CPU option (higher CPU priority under load, +66 % on the gameserver price). Omit to keep the booked value; only offered when plan-change-options capabilities.supportsPremiumCpu is true.

  • target.targetRegionIdstringoptional
  • target.targetBillingIntervalCountintegeroptional

    > 0 ยท max 9007199254740991

  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

Apply Game Server Plan Change

apply_gameserver_plan_change
DestructiveNeeds confirmationNot in the ChatGPT and Claude connectors

Execute a gameserver upgrade or downgrade after the user has explicitly confirmed a matching preview_gameserver_plan_change result. NEVER call in the same turn as preview_*. Requires confirm=true, userExplicitlyConfirmed=true, and previewConfirmationNonce from the matching preview_* result, plus the same target and the same couponCode as that preview (omit couponCode if the preview had none). Only call after the user explicitly confirmed the exact pricing summary you showed. When the preview has requiresImmediateStartRequest: true (paid upgrade), also tell the user they ask ZAP-Hosting to start the upgrade right away and owe compensation for the days used if they withdraw the upgrade within 14 days; pass requestImmediateStart=true only if they expressly agreed to that. If apply returns PREVIEW_CONFIRMATION_TOO_EARLY, wait until details.earliestApplyAt (or confirmation.earliestApplyAt from preview) and call apply again; this short safety delay needs no explanation to the user. Triggers billing and infrastructure changes.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
gameserver.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the Gameserver: the "id" field from list_account_services or list_gameservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.pricingMode"package" | "custom"optional

  • target.targetPackageKeystringoptional
  • target.ramMbintegeroptional

    > 0 ยท max 9007199254740991

  • target.cpuMillisintegeroptional

    > 0 ยท max 9007199254740991

  • target.diskMbintegeroptional

    > 0 ยท max 9007199254740991

  • target.slotsintegeroptional

    > 0 ยท max 9007199254740991

  • target.dedicatedIpbooleanoptional
  • target.premiumCpubooleanoptional

    Premium CPU option (higher CPU priority under load, +66 % on the gameserver price). Omit to keep the booked value; only offered when plan-change-options capabilities.supportsPremiumCpu is true.

  • target.targetRegionIdstringoptional
  • target.targetBillingIntervalCountintegeroptional

    > 0 ยท max 9007199254740991

  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

  • confirmtruerequired
  • userExplicitlyConfirmedtruerequired
  • previewConfirmationNoncestringrequired
  • requestImmediateStartbooleanoptional

    Express request of the user to start the upgraded service right away (ยง 357a (2) BGB): they owe compensation for the days used if they later withdraw the upgrade. Set true ONLY when the user expressly agreed to exactly that in this conversation after you told them; never set it on your own. Required for a paid upgrade when the preview says requiresImmediateStartRequest: true, otherwise apply is refused with PLAN_CHANGE_EARLY_START_REQUIRED and nothing is charged. Ignored for downgrades and free changes.

Get VPS Plan Change Options

get_vserver_plan_change_options
Read-only

List the packages a VPS (vServer) can be upgraded or downgraded to (plan-change targets and custom resource constraints such as CPU cores, RAM and disk). Start here when the user wants a bigger or smaller VPS. Use preview_vserver_plan_change for the full change overview with pricing before applying.

Permission
vserver.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Preview VPS Plan Change

preview_vserver_plan_change
Read-only

Return a read-only overview of the planned VPS package/configuration change: current vs. target resources, pricing (recurring old/new, delta, immediate charges or credits, billing period), blockers, migration requirements, and a one-time previewConfirmationNonce when allowed. Read-only. Never call apply_* in the same assistant turn. After preview, you MUST send a user-visible message that includes old price, new price, delta, and immediate charge or credit from confirmation.pricingSummary. Then STOP and wait for an explicit user reply (for example 'Ja') in a NEW turn. A user request like 'upgrade to 3 GB' only authorizes preview, not apply. Pass couponCode only when the user gave you a coupon code for this upgrade (never guess or invent one): an accepted code is shown as pricing.couponCode / pricing.couponDiscountCents and is already subtracted from the immediate charge; a refused code makes the preview not allowed with coupon.error -- tell the user why and preview again without the code if they want to continue.

Permission
vserver.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.pricingMode"package" | "custom"optional

    Set "custom" to change cores, memoryMb, diskGb or bandwidthMbps on a package VPS (otherwise the request is rejected); use targetPackageKey to switch package.

  • target.targetPackageKeystringoptional
  • target.coresintegeroptional

    > 0 ยท max 9007199254740991

  • target.memoryMbintegeroptional

    > 0 ยท max 9007199254740991

  • target.diskGbintegeroptional

    > 0 ยท max 9007199254740991

  • target.bandwidthMbpsintegeroptional

    > 0 ยท max 9007199254740991

  • target.memoryintegeroptional

    > 0 ยท max 9007199254740991

  • target.diskintegeroptional

    > 0 ยท max 9007199254740991

  • target.bandwidthintegeroptional

    > 0 ยท max 9007199254740991

  • target.additionalIpCountintegeroptional

    min 0 ยท max 9007199254740991

  • target.targetBillingIntervalCountintegeroptional

    > 0 ยท max 9007199254740991

  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

Apply VPS Plan Change

apply_vserver_plan_change
DestructiveNeeds confirmation

Execute a VPS upgrade or downgrade after the user has explicitly confirmed a matching preview_vserver_plan_change result. NEVER call in the same turn as preview_*. Requires confirm=true, userExplicitlyConfirmed=true, and previewConfirmationNonce from the matching preview_* result, plus the same target and the same couponCode as that preview (omit couponCode if the preview had none). Only call after the user explicitly confirmed the exact pricing summary you showed. When the preview has requiresImmediateStartRequest: true (paid upgrade), also tell the user they ask ZAP-Hosting to start the upgrade right away and owe compensation for the days used if they withdraw the upgrade within 14 days; pass requestImmediateStart=true only if they expressly agreed to that. If apply returns PREVIEW_CONFIRMATION_TOO_EARLY, wait until details.earliestApplyAt (or confirmation.earliestApplyAt from preview) and call apply again; this short safety delay needs no explanation to the user. Triggers billing and infrastructure changes.

Permission
vserver.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the VPS: the "id" field from list_account_services or list_vservers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.pricingMode"package" | "custom"optional

    Set "custom" to change cores, memoryMb, diskGb or bandwidthMbps on a package VPS (otherwise the request is rejected); use targetPackageKey to switch package.

  • target.targetPackageKeystringoptional
  • target.coresintegeroptional

    > 0 ยท max 9007199254740991

  • target.memoryMbintegeroptional

    > 0 ยท max 9007199254740991

  • target.diskGbintegeroptional

    > 0 ยท max 9007199254740991

  • target.bandwidthMbpsintegeroptional

    > 0 ยท max 9007199254740991

  • target.memoryintegeroptional

    > 0 ยท max 9007199254740991

  • target.diskintegeroptional

    > 0 ยท max 9007199254740991

  • target.bandwidthintegeroptional

    > 0 ยท max 9007199254740991

  • target.additionalIpCountintegeroptional

    min 0 ยท max 9007199254740991

  • target.targetBillingIntervalCountintegeroptional

    > 0 ยท max 9007199254740991

  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

  • confirmtruerequired
  • userExplicitlyConfirmedtruerequired
  • previewConfirmationNoncestringrequired
  • requestImmediateStartbooleanoptional

    Express request of the user to start the upgraded service right away (ยง 357a (2) BGB): they owe compensation for the days used if they later withdraw the upgrade. Set true ONLY when the user expressly agreed to exactly that in this conversation after you told them; never set it on your own. Required for a paid upgrade when the preview says requiresImmediateStartRequest: true, otherwise apply is refused with PLAN_CHANGE_EARLY_START_REQUIRED and nothing is charged. Ignored for downgrades and free changes.

Get TeamSpeak Plan Change Options

get_teamspeak_plan_change_options
Read-onlyNot in the ChatGPT and Claude connectors

List available TeamSpeak plan-change options and constraints for a service. Use preview_teamspeak_plan_change for the full change overview with pricing before applying.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
teamspeak.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Preview TeamSpeak Plan Change

preview_teamspeak_plan_change
Read-onlyNot in the ChatGPT and Claude connectors

Return a read-only overview of the planned TeamSpeak slot/billing change: current vs. target configuration, pricing (recurring old/new, delta, immediate charges or credits, billing period), blockers, and a one-time previewConfirmationNonce when allowed. Read-only. Never call apply_* in the same assistant turn. After preview, you MUST send a user-visible message that includes old price, new price, delta, and immediate charge or credit from confirmation.pricingSummary. Then STOP and wait for an explicit user reply (for example 'Ja') in a NEW turn. A user request like 'upgrade to 3 GB' only authorizes preview, not apply. Pass couponCode only when the user gave you a coupon code for this upgrade (never guess or invent one): an accepted code is shown as pricing.couponCode / pricing.couponDiscountCents and is already subtracted from the immediate charge; a refused code makes the preview not allowed with coupon.error -- tell the user why and preview again without the code if they want to continue.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
teamspeak.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.pricingMode"package" | "custom"optional

    Set "custom" to change slots on a package TeamSpeak server (otherwise the request is rejected); use targetPackageKey to switch package.

  • target.targetPackageKeystringoptional
  • target.slotsintegeroptional

    > 0 ยท max 9007199254740991

  • target.hasAdvertisementbooleanoptional
  • target.targetBillingIntervalCountintegeroptional

    > 0 ยท max 9007199254740991

  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

Apply TeamSpeak Plan Change

apply_teamspeak_plan_change
DestructiveNeeds confirmationNot in the ChatGPT and Claude connectors

Execute a TeamSpeak upgrade or downgrade after the user has explicitly confirmed a matching preview_teamspeak_plan_change result. NEVER call in the same turn as preview_*. Requires confirm=true, userExplicitlyConfirmed=true, and previewConfirmationNonce from the matching preview_* result, plus the same target and the same couponCode as that preview (omit couponCode if the preview had none). Only call after the user explicitly confirmed the exact pricing summary you showed. When the preview has requiresImmediateStartRequest: true (paid upgrade), also tell the user they ask ZAP-Hosting to start the upgrade right away and owe compensation for the days used if they withdraw the upgrade within 14 days; pass requestImmediateStart=true only if they expressly agreed to that. If apply returns PREVIEW_CONFIRMATION_TOO_EARLY, wait until details.earliestApplyAt (or confirmation.earliestApplyAt from preview) and call apply again; this short safety delay needs no explanation to the user. Triggers billing and infrastructure changes.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
teamspeak.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the TeamSpeak server: the "id" field from list_account_services or list_teamspeak_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.pricingMode"package" | "custom"optional

    Set "custom" to change slots on a package TeamSpeak server (otherwise the request is rejected); use targetPackageKey to switch package.

  • target.targetPackageKeystringoptional
  • target.slotsintegeroptional

    > 0 ยท max 9007199254740991

  • target.hasAdvertisementbooleanoptional
  • target.targetBillingIntervalCountintegeroptional

    > 0 ยท max 9007199254740991

  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

  • confirmtruerequired
  • userExplicitlyConfirmedtruerequired
  • previewConfirmationNoncestringrequired
  • requestImmediateStartbooleanoptional

    Express request of the user to start the upgraded service right away (ยง 357a (2) BGB): they owe compensation for the days used if they later withdraw the upgrade. Set true ONLY when the user expressly agreed to exactly that in this conversation after you told them; never set it on your own. Required for a paid upgrade when the preview says requiresImmediateStartRequest: true, otherwise apply is refused with PLAN_CHANGE_EARLY_START_REQUIRED and nothing is charged. Ignored for downgrades and free changes.

Get Dedicated Server Plan Change Options

get_dedicated_plan_change_options
Read-onlyNot in the ChatGPT and Claude connectors

List available dedicated-server IP plan-change options and constraints for a service. Hardware changes are not supported. Use preview_dedicated_plan_change for the full change overview with pricing before applying.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
dedicated.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

Preview Dedicated Server Plan Change

preview_dedicated_plan_change
Read-onlyNot in the ChatGPT and Claude connectors

Return a read-only overview of the planned dedicated-server additional IPv4 count change: current vs. target IP configuration, pricing (recurring old/new, delta, immediate charges or credits, billing period), blockers, releasable assignments, and a one-time previewConfirmationNonce when allowed. Read-only. Never call apply_* in the same assistant turn. After preview, you MUST send a user-visible message that includes old price, new price, delta, and immediate charge or credit from confirmation.pricingSummary. Then STOP and wait for an explicit user reply (for example 'Ja') in a NEW turn. A user request like 'upgrade to 3 GB' only authorizes preview, not apply. Pass couponCode only when the user gave you a coupon code for this upgrade (never guess or invent one): an accepted code is shown as pricing.couponCode / pricing.couponDiscountCents and is already subtracted from the immediate charge; a refused code makes the preview not allowed with coupon.error -- tell the user why and preview again without the code if they want to continue.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
dedicated.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.additionalIpCountintegeroptional

    min 0 ยท max 9007199254740991

  • target.releaseIpAssignmentIdsstring[]optional
  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

Apply Dedicated Server Plan Change

apply_dedicated_plan_change
DestructiveNeeds confirmationNot in the ChatGPT and Claude connectors

Execute a dedicated-server additional IPv4 upgrade or downgrade after the user has explicitly confirmed a matching preview_dedicated_plan_change result. Downgrades require releaseIpAssignmentIds. NEVER call in the same turn as preview_*. Requires confirm=true, userExplicitlyConfirmed=true, and previewConfirmationNonce from the matching preview_* result, plus the same target and the same couponCode as that preview (omit couponCode if the preview had none). Only call after the user explicitly confirmed the exact pricing summary you showed. When the preview has requiresImmediateStartRequest: true (paid upgrade), also tell the user they ask ZAP-Hosting to start the upgrade right away and owe compensation for the days used if they withdraw the upgrade within 14 days; pass requestImmediateStart=true only if they expressly agreed to that. If apply returns PREVIEW_CONFIRMATION_TOO_EARLY, wait until details.earliestApplyAt (or confirmation.earliestApplyAt from preview) and call apply again; this short safety delay needs no explanation to the user. Triggers billing and infrastructure changes.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
dedicated.plan_change
Granted when connecting
Plan changes

Parameters

  • serviceIdstringrequired

    ID of the Dedicated server: the "id" field from list_account_services or list_dedicated_servers (e.g. "cmabc123..."). The numericId shown in the panel (e.g. "180") is accepted too. IDs of other service types do not work here.

  • targetobjectoptional
  • target.additionalIpCountintegeroptional

    min 0 ยท max 9007199254740991

  • target.releaseIpAssignmentIdsstring[]optional
  • couponCodestringoptional

    Optional shop coupon code the user typed for this upgrade. Only pass a code the user explicitly gave you in this conversation; never guess, invent, reuse from elsewhere or try codes. It only reduces the amount charged now for an upgrade (pricing.couponDiscountCents, coupon.error when refused). Apply must send exactly the same couponCode as the preview whose nonce it uses.

    max length 100

  • confirmtruerequired
  • userExplicitlyConfirmedtruerequired
  • previewConfirmationNoncestringrequired
  • requestImmediateStartbooleanoptional

    Express request of the user to start the upgraded service right away (ยง 357a (2) BGB): they owe compensation for the days used if they later withdraw the upgrade. Set true ONLY when the user expressly agreed to exactly that in this conversation after you told them; never set it on your own. Required for a paid upgrade when the preview says requiresImmediateStartRequest: true, otherwise apply is refused with PLAN_CHANGE_EARLY_START_REQUIRED and nothing is charged. Ignored for downgrades and free changes.

Get Plan Change Status

get_plan_change_status
Read-onlyStart here

Poll the status of a service plan change by change ID after a confirmed apply_* call (billing commit, queue, and infrastructure apply).

Permission
gameserver.plan_changevserver.plan_changeteamspeak.plan_changededicated.plan_change
Granted when connecting
Plan changes

Parameters

  • changeIdstringrequired

Ordering

Orderable products, plans, regions, games and ISO images, plus the price preview of an order.

List Orderable Products

list_orderable_products
Read-onlyStart hereNot in the ChatGPT and Claude connectors

List the products that can be ordered (catalog, read-only). Read-only catalog: nothing is ordered or charged. To order, price the configuration with preview_order first.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

No parameters

List Orderable Plans

list_orderable_plans
Read-onlyNot in the ChatGPT and Claude connectors

List the plans, billing cycles, prices and resource options of one orderable product (catalog, read-only). Read-only catalog: nothing is ordered or charged. To order, price the configuration with preview_order first.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

  • productSlugstringrequired

    Product slug from list_orderable_products, e.g. the productSlug field of a product.

List Regions for an Orderable Product

list_orderable_product_regions
Read-onlyNot in the ChatGPT and Claude connectors

List the regions in which one orderable product can be ordered (catalog, read-only). Read-only catalog: nothing is ordered or charged. To order, price the configuration with preview_order first.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

  • productSlugstringrequired

    Product slug from list_orderable_products, e.g. the productSlug field of a product.

List Order Regions

list_order_regions
Read-onlyNot in the ChatGPT and Claude connectors

List all regions that are used by orderable products (catalog, read-only). Read-only catalog: nothing is ordered or charged. To order, price the configuration with preview_order first.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

No parameters

List Orderable Games

list_orderable_games
Read-onlyNot in the ChatGPT and Claude connectors

List the games for which a gameserver can be ordered (catalog, read-only). Read-only catalog: nothing is ordered or charged. To order, price the configuration with preview_order first.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

No parameters

List ISO Images for VPS Orders

list_vserver_order_isos
Read-onlyNot in the ChatGPT and Claude connectors

List the catalog ISO images a VPS can be ordered with, per region (catalog, read-only). Read-only catalog: nothing is ordered or charged. To order, price the configuration with preview_order first.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

No parameters

Read-onlyStart hereNot in the ChatGPT and Claude connectors

Preview an order: checks the combination of product, plan, billing cycle, region and options, and returns the price breakdown and any blockingReasons. Nothing is ordered, reserved or charged. When this connection may order (permission orders.create) and the order is allowed, it also returns confirmation (confirmationCode, chargeSummary, valid 10 minutes) for create_order; otherwise ordering.reason says why not.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

  • productSlugstringrequired

    Product slug from list_orderable_products.

  • billingCycleSlug"3-day" | "monthly" | "quarterly" | "semi-annual" | "annual"required

    Billing cycle: 3-day, monthly, quarterly, semi-annual or annual.

  • planSlugstringoptional

    Plan slug from list_orderable_plans (products with fixed plans).

  • gameSlugstringoptional

    Game slug from list_orderable_games (gameservers).

  • regionSlugstringoptional

    Region slug from list_orderable_product_regions (products with region choice).

  • resourceConfigRecord<string, number>optional

    Resource values for configurable products, keyed as listed by list_orderable_plans.

  • optionsobjectoptional
  • options.couponCodestringoptional
  • options.dedicatedIpCountintegeroptional

    min 0 ยท max 9007199254740991

  • options.domainAttachmentobjectoptional
  • configurationRecord<string, any>optional

    Product-specific configuration, same shape as the REST order body.

  • domainsobject[]optional

Get Order Status

get_order_status
Read-onlyNot in the ChatGPT and Claude connectors

Status of one order of this account (payment, items, the services it created). Use it after create_order to follow the setup, or to check whether an order went through before ordering again. Read-only.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.view
Granted when connecting
Order catalog & preview

Parameters

  • orderIdstringrequired

    orderId returned by create_order (or an order id from the dashboard).

Place Paid Order

create_order
Changes dataNeeds confirmationNot in the ChatGPT and Claude connectors

Place a PAID order that preview_order priced, using its confirmation.confirmationCode. Charges the payment method saved in the user's ZapX account and creates a subscription that renews until cancelled. Requires confirm=true and userExplicitlyConfirmed=true. Only call this after showing the user confirmation.chargeSummary and getting their explicit yes to this exact order; never on your own initiative. The code orders exactly the previewed configuration; to change anything, run preview_order again. Refused when the price changed since the preview, without a saved payment method, or above the daily limit of orders through the MCP. Retrying with the same code never orders twice. If the bank asks for a confirmation (3-D Secure), the result contains paymentActionUrl for the user.

Ordering and plan changes are hidden in the connectors from the ChatGPT and Claude app directories. The tool is available in Claude Code, Cursor and with an API key.

Permission
orders.create
Granted when connecting
Place orders (paid)

Parameters

  • confirmationCodestringrequired

    confirmation.confirmationCode from preview_order. It stands for exactly the previewed order; nothing else can be ordered with it.

  • confirmtruerequired

    Must be true. Same confirm=true every state-changing MCP tool requires; set it only together with userExplicitlyConfirmed=true.

  • userExplicitlyConfirmedbooleanrequired

    true only after the user explicitly agreed to this order and its price in the conversation (e.g. replied "yes" to the shown confirmation.chargeSummary).

  • requestImmediateStartbooleanoptional

    true only if the user also expressly agreed to confirmation.immediateStartNotice (start right away, compensation for used days on withdrawal). Required for most paid orders; without it the order is refused with WITHDRAWAL_EARLY_START_REQUIRED.

Feedback

Your AI client reports bugs or missing features of the MCP tools straight to us.

Changes dataStart here

Report a problem with THIS MCP server (ZAP-Hosting / ZapX) to its developers. Use it only after a real problem with these tools: kind=bug when a tool failed or returned something wrong although the input looked right; kind=missing_capability when the user asked for something no tool here can do; kind=unclear_tool_description when a tool's description or parameters misled you; kind=improvement for a concrete suggestion that would have made the task easier. Do NOT use it for the user's own support requests (problems with their server, billing, orders): the user opens a support ticket for those. Never include passwords, tokens, API keys, file contents, personal data or other secrets in summary, details or exampleArgs. Nothing is changed on any service. The result only confirms that the report was received; do not tell the user it was fixed.

Permission
Every connection
Granted when connecting
Every connection

Parameters

  • kind"bug" | "missing_capability" | "unclear_tool_description" | "improvement"required

  • summarystringrequired

    One sentence: what went wrong or what is missing.

    min length 5 ยท max length 200

  • detailsstringoptional

    What you tried, what you expected and what happened (error text). No secrets or file contents.

    max length 4000

  • relatedToolstringoptional

    Name of the tool the report is about, if any (e.g. get_gameserver).

    max length 100

  • exampleArgsRecord<string, any>optional

    Optional arguments of the failing call, without secrets.