Команды WebSocket
Команды представляют собой JSON-объекты, отправляемые через WebSocket-соединение. Каждая команда генерирует ответ через событие OnWsCommandResponse.
{
"command": "CommandName",
"requestId": "unique-id",
"parameters": []
}Команды протокола
Эти команды управляют самим WebSocket-сеансом.
Аутентификация
Аутентифицироваться с использованием настроенного пароля. Должна быть вызвана перед любой другой командой (кроме ChangeSessionId).
Параметры:
| Индекс | Тип | Описание |
|---|---|---|
| 0 | строка | Пароль |
Пример:
{
"command": "Authenticate",
"requestId": "auth-001",
"parameters": ["your-password-here"]
}ChangeSessionId
Переименовать текущую сессию. Может быть вызвана без аутентификации. Новый ID должен содержать от 1 до 32 символов и не должен быть уже занят.
Параметры:
| Индекс | Тип | Описание |
|---|---|---|
| 0 | строка | Новый ID сессии |
Пример:
{
"command": "ChangeSessionId",
"requestId": "rename-001",
"parameters": ["my-bot"]
}Команды логов
LogToConsole
Записать сообщение в логи консоли MCC.
Параметры:
| Индекс | Тип | Описание |
|---|---|---|
| 0 | строка | Сообщение |
LogDebugToConsole
Записать отладочное сообщение в логи консоли MCC (видно только в режиме отладки).
Параметры:
| Индекс | Тип | Описание |
|---|---|---|
| 0 | строка | Сообщение |
LogToConsoleTranslated
Log a translated message using an MCC translation key.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | строка | Translation key |
LogDebugToConsoleTranslated
Log a translated debug message.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | строка | Translation key |
Session Commands
ReconnectToTheServer
Reconnect to the Minecraft server.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Extra reconnect attempts (default 3) |
| 1 | int | Delay in seconds (default 0) |
DisconnectAndExit
Disconnect from the server and shut down MCC. No parameters.
Chat Commands
SendPrivateMessage
Send a private message to a player.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | строка | Player name |
| 1 | строка | Сообщение |
Script Commands
RunScript
Run an MCC script file.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | строка | File name |
World and Terrain Commands
GetTerrainEnabled
Check if terrain handling is enabled. No parameters. Returns { "enabled": true/false }.
SetTerrainEnabled
Enable or disable terrain handling.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | bool | Enabled |
GetWorld
Check if world data is available. No parameters. Returns { "available": true } if terrain is enabled.
DigBlock
Break a block at the given coordinates. Validates the block is within 6 blocks and is not air.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | double | X coordinate |
| 1 | double | Y coordinate |
| 2 | double | Z coordinate |
| 3 | строка | Direction (optional, e.g. "Down") |
The Direction parameter accepts string names: Down, Up, North, South, West, East.
Entity Commands
GetEntityHandlingEnabled
Check if entity handling is enabled. No parameters. Returns { "enabled": true/false }.
GetEntities
Get all tracked entities. No parameters. Returns a dictionary of entity ID to entity object.
Entity types are serialized as string names (e.g., "Zombie", "Player").
InteractEntity
Interact with an entity.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Entity ID |
| 1 | строка | Interaction type (Interact, Attack, InteractAt) |
| 2 | строка | Hand (optional, MainHand or OffHand) |
SendEntityAction
Send an entity action.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | строка | Action type (e.g. StartSneaking, StopSneaking) |
Sneak
Toggle sneaking.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | bool | true to sneak, false to stop |
Movement Commands
GetCurrentLocation
Get the player's current location. No parameters. Returns a location object with x, y, z.
MoveToLocation
Move the player to a location using pathfinding.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | double | X coordinate |
| 1 | double | Y coordinate |
| 2 | double | Z coordinate |
| 3 | bool | Allow unsafe (optional, false) |
| 4 | bool | Allow direct teleport (optional) |
| 5 | int | Max offset (optional, 0) |
| 6 | int | Min offset (optional, 0) |
ClientIsMoving
Check if the client is currently moving. No parameters. Returns { "moving": true/false }.
LookAtLocation
Make the player look at coordinates.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | double | X |
| 1 | double | Y |
| 2 | double | Z |
Player Info Commands
GetUsername
Get the player's username. No parameters. Returns { "username": "..." }.
GetUserUUID
Get the player's UUID. No parameters. Returns { "uuid": "..." }.
GetGamemode
Get the current gamemode. No parameters. Returns { "gamemode": 0 }.
GetYaw
Get the player's yaw rotation. No parameters. Returns { "yaw": 0.0 }.
GetPitch
Get the player's pitch rotation. No parameters. Returns { "pitch": 0.0 }.
GetOnlinePlayers
Get a list of online player names. No parameters. Returns a string array.
GetOnlinePlayersWithUUID
Get online players with their UUIDs. No parameters. Returns a dictionary of UUID to player name.
GetPlayersLatency
Get latency information for online players. No parameters.
Server Info Commands
GetServerHost
Get the server hostname. No parameters. Returns { "host": "..." }.
GetServerPort
Get the server port. No parameters. Returns { "port": 25565 }.
GetServerTPS
Get the server TPS (ticks per second). No parameters. Returns { "tps": 20.0 }.
GetTimestamp
Get the current timestamp. No parameters. Returns { "timestamp": "..." }.
GetProtocolVersion
Get the Minecraft protocol version. No parameters. Returns { "protocolVersion": 769 }.
GetMaxChatMessageLength
Get the maximum chat message length. No parameters. Returns { "length": 256 }.
Inventory Commands
GetInventoryEnabled
Check if inventory handling is enabled. No parameters. Returns { "enabled": true/false }.
GetPlayerInventory
Get the player's inventory. No parameters. Returns the full inventory container with items.
Item types are serialized as string names (e.g., "DiamondSword", "Stone").
GetInventories
Get all open inventories. No parameters.
WindowAction
Perform a window/inventory action.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Inventory ID |
| 1 | int | Slot ID |
| 2 | строка | Action type (e.g. LeftClick, RightClick, DropItemStack) |
ChangeSlot
Change the active hotbar slot.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | short | Slot number (0-8) |
GetCurrentSlot
Get the currently selected hotbar slot. No parameters. Returns { "slot": 0 }.
SetSlot
Set the active slot (legacy command).
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Slot number |
ClearInventories
Clear tracked inventory state. No parameters.
CloseInventory
Close an inventory window.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Inventory ID |
Creative Mode Commands
CreativeGive
Give an item in creative mode.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Slot ID |
| 1 | строка | Item type (e.g. "DiamondSword" or 798) |
| 2 | int | Count |
CreativeDelete
Delete an item from a slot in creative mode.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Slot ID |
Block Interaction Commands
SendPlaceBlock
Place a block.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | double | X coordinate |
| 1 | double | Y coordinate |
| 2 | double | Z coordinate |
| 3 | строка | Direction (e.g. "Up") |
| 4 | строка | Hand (optional, "MainHand" or "OffHand") |
SendAnimation
Play arm swing animation.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | строка | Hand (optional, default "MainHand") |
UseItemInHand
Use the item currently held. No parameters.
UpdateSign
Update text on a sign.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | double | X coordinate |
| 1 | double | Y coordinate |
| 2 | double | Z coordinate |
| 3 | строка | Line 1 |
| 4 | строка | Line 2 |
| 5 | строка | Line 3 |
| 6 | строка | Line 4 |
UpdateCommandBlock
Update a command block.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | double | X coordinate |
| 1 | double | Y coordinate |
| 2 | double | Z coordinate |
| 3 | строка | Command |
| 4 | строка | Mode (e.g. "Sequence", "Auto", "Redstone") |
| 5 | строка | Flags |
Trading Commands
SelectTrade
Select a villager trade.
Параметры:
| Index | Тип | Описание |
|---|---|---|
| 0 | int | Trade index |
Respawn
Respawn after death. No parameters.
Mapping Commands (New)
These commands let clients query enum mappings dynamically at runtime, so they do not need to maintain hardcoded numeric ID tables that break across MCC versions. For background, see issue #2805.
GetItemTypeMappings
Get a dictionary of all ItemType names to their numeric IDs. No parameters. Returns { "DiamondSword": 798, "Stone": 1, ... }.
GetEntityTypeMappings
Get a dictionary of all EntityType names to their numeric IDs. No parameters. Returns { "Player": 128, "Zombie": 119, ... }.
