server_restart
Restart a Minecraft server by providing its server ID or UUID to apply changes or resolve issues.
Instructions
Restart a Minecraft server
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | Server ID or UUID |
Implementation Reference
- src/tools/server-actions.ts:7-34 (registration)The 'server_restart' tool is registered as part of a loop in 'registerServerActionTools'. It uses a generic handler that executes a POST request to the Crafty API using the 'restart_server' action.
export function registerServerActionTools(server: McpServer, client: CraftyClient): void { const actions: Array<{ name: string; action: string; description: string }> = [ { name: "server_start", action: "start_server", description: "Start a Minecraft server" }, { name: "server_stop", action: "stop_server", description: "Stop a Minecraft server (sends configured stop command)" }, { name: "server_restart", action: "restart_server", description: "Restart a Minecraft server" }, { name: "server_kill", action: "kill_server", description: "Force-kill a Minecraft server process immediately" }, { name: "server_backup", action: "backup_server", description: "Trigger an immediate backup of a Minecraft server's files" }, { name: "server_update_executable", action: "update_executable", description: "Update the server jar/executable from the configured download URL" }, { name: "server_clone", action: "clone_server", description: "Clone an existing Minecraft server (server must not be running)" }, ]; for (const { name, action, description } of actions) { server.tool( name, description, serverIdSchema, async ({ server_id }) => { try { const data = await client.post(`/servers/${server_id}/action/${action}`); return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] }; } catch (error) { const msg = error instanceof Error ? error.message : String(error); return { content: [{ type: "text", text: `Error: ${msg}` }], isError: true }; } } ); } }