set_server_property
Modify Minecraft server configuration properties like gamemode, difficulty, or max-players. Changes require server restart to take effect.
Instructions
Set a server.properties value. The server must be restarted for changes to take effect. Common properties: gamemode, difficulty, level-seed, level-type, max-players, view-distance, motd, online-mode, pvp, spawn-protection.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Property key (e.g., 'level-seed', 'gamemode', 'difficulty') | |
| value | Yes | Property value |
Implementation Reference
- src/tools/config-tools.ts:47-54 (handler)The handler logic for the 'set_server_property' tool, which updates the server property via the manager and notifies the user to restart.
async ({ key, value }) => { manager.properties.set(key, value); const desc = SERVER_PROPERTY_DESCRIPTIONS[key]; let msg = `Set ${key}=${value}`; if (desc) msg += `\n(${desc})`; msg += "\n\n⚠️ Restart the server for this change to take effect."; return { content: [{ type: "text", text: msg }] }; } - src/tools/config-tools.ts:40-55 (registration)The MCP tool registration for 'set_server_property'.
server.tool( "set_server_property", "Set a server.properties value. The server must be restarted for changes to take effect. Common properties: gamemode, difficulty, level-seed, level-type, max-players, view-distance, motd, online-mode, pvp, spawn-protection.", { key: z.string().describe("Property key (e.g., 'level-seed', 'gamemode', 'difficulty')"), value: z.string().describe("Property value"), }, async ({ key, value }) => { manager.properties.set(key, value); const desc = SERVER_PROPERTY_DESCRIPTIONS[key]; let msg = `Set ${key}=${value}`; if (desc) msg += `\n(${desc})`; msg += "\n\n⚠️ Restart the server for this change to take effect."; return { content: [{ type: "text", text: msg }] }; } );