JoinGG

Minecraft Snapshot 25w35a Adds Server Management API

Minecraft snapshot 25w35a introduces a JSON-RPC management WebSocket protocol and moves core server properties into dynamic game rules.

SweetMask · 4 min read

Mojang released Minecraft snapshot 25w35a on 26 August 2025, bringing major structural changes for anyone hosting Java Edition worlds. The testing release introduces an external management protocol over WebSockets alongside moving longstanding startup properties into live-updatable game rules.

Whether you operate an active community or inspect options on the Minecraft server list, the changes redefine how administrative tooling communicates with background processes.

The Minecraft Server Management Protocol

The central technical addition in snapshot 25w35a is the Minecraft Server Management Protocol, a JSON-RPC 2.0 interface run over a WebSocket connection. Built specifically for dedicated environments rather than a local listen server, the endpoint allows external scripts, dashboards, and automated panels to supervise the running world without issuing legacy console commands.

Connection and Configuration Properties

The management interface stays inactive until explicitly switched on. Dedicated instances expose four settings inside server.properties:

  • management-server-enabled: Toggles the service (defaults to false).
  • management-server-host: Sets the binding interface host (defaults to localhost).
  • management-server-port: Defines the listening port (defaults to 25585).
  • status-heartbeat-interval: Interval in seconds for dispatching heartbeat messages to connected clients (defaults to 0, disabled).

When enabled, clients connect via ws://<management-server-host>:<management-server-port>. While later testing builds introduced TLS and authentication, this release introduces the baseline transport.

Methods and Schema Discovery

The API organises remote procedure calls using namespaced methods. Reserved built-in namespaces include minecraft for commands and notification for broadcast events. Key method groupings include:

  • players: Inspecting current online users.
  • allowlist: Querying or updating entries via methods like minecraft:allowlist/add.
  • operators: Inspecting and editing privileged ranks.
  • server: Managing persistence, such as triggering save or stop routines.
  • server settings and game rules: Reading and modifying live configurations.

Clients can send {"id":1,"method":"rpc.discover"} to receive an API schema covering every active method and event signature. The internal Data Generator produces an identical layout inside reports/json-rpc-api-schema.json.

Server Properties Migrated to Game Rules

Four traditional startup properties were removed from server.properties entirely. Instead of requiring a process restart to alter, they are now standard game rules that take effect immediately when edited in-game or via the console:

  • pvp: Controls whether players can inflict damage on one another (defaults to true). Replaces the pvp server property.
  • allowEnteringNetherUsingPortals: Controls player entry into the Nether via obsidian frames (defaults to true). Replaces allow-nether.
  • spawnMonsters: Determines whether hostile monsters spawn naturally (defaults to true). Replaces spawn-monsters.
  • enableCommandBlocks: Toggles command block execution (defaults to true). Replaces enable-command-block.

Pack Updates and Technical Tweaks

Snapshot 25w35a bumps the Data Pack version to 85.0 and the Resource Pack version to 67.0. Data packs and textures must account for internal identifier adjustments:

  • Both block and item identifiers for chain were renamed to iron_chain.
  • The object text component now supports custom non-character rendering, introducing explicit atlas and player types. The player type renders a miniature player head, accepting an optional name, id, properties, and a hat boolean.

Entity definitions also received adjustments. The Copper Golem hitbox was altered to 0.98 blocks tall so that the mob can pathfind through single-block spaces. The mob now utilises its Saddle equipment slot for items mounted on its Lightning Rod, while its Head slot functions like regular humanoid armour.

What Server Owners Must Adjust

Hosts upgrading an existing server to snapshot 25w35a must audit their operational configurations immediately upon deployment:

  • Migrated Startup Values: Any automated deployment scripts relying on pvp, allow-nether, spawn-monsters, or enable-command-block inside server.properties will find those options ignored. Re-apply these parameters as in-game commands or via world generation data packs.
  • Firewalls for Port 25585: Because the management service listens on port 25585 by default, hosts setting management-server-enabled=true must ensure port 25585 is not opened publicly to untrusted networks, as snapshot 25w35a does not bundle built-in authentication.
  • Data Pack and Texture Breakages: Custom loot tables, recipes, and resource packs referencing chain will throw validation errors until updated to iron_chain.

What Players Will Notice

Players logging into snapshot 25w35a will immediately notice interface and chat enhancements:

  • Player Heads in Chat: Chat messages and interface components using the new player object text format can render miniature skins and player faces directly within text lines.
  • Hanging Sign Crafting: Hanging Signs can no longer be assembled with generic chains; recipes strictly require Iron Chains.
  • Mouse Cursor States: The cursor changes shape to indicate interactive components, displaying a hand icon over clickable links and distinct icons for sliders, buttons, scroll bars, and text fields. Players can toggle this off in Mouse Settings... under Allow Cursor Changes.
  • Server Entry Screen: Adding a new address to the multiplayer list no longer prefills default naming text.

Common questions

How do you enable the Server Management Protocol in 25w35a?
Set management-server-enabled=true in server.properties. You can optionally configure management-server-host, management-server-port, and status-heartbeat-interval.
Why were allow-nether and pvp removed from server.properties?
Mojang converted allow-nether, pvp, spawn-monsters, and enable-command-block into game rules so server administrators can modify them dynamically without restarting the process.
What happened to the chain item in Data Pack 85.0?
Both the block and item sprites and data identifiers previously named chain were renamed to iron_chain.
Tags
minecraft
Share

SweetMask

Published · 4 min read

All articles

Keep reading