MCTOOLBOX
MC ToolboxMC TOOLBOX
Java 版服务器协议

我的世界服务器管理 API 探索器

浏览原版 JSON-RPC 方法,构建位置参数,检查响应架构,并准备安全的 WebSocket 连接,而无需暴露真实的服务器密钥。

68
方法
17
通知
15
架构
3.0
26.2 中的协议
可调用方法只读1.21.9+
minecraft:server/status

读取启动状态、在线玩家和运行中的 Minecraft 版本。

参数

此方法不带参数。

结果

结果类型
Server State
JSON-RPC 请求
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "minecraft:server/status"
}
示例响应
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "started": true,
    "players": [
      {
        "id": "853c80ef-3c37-49fd-aa49-938b674adae6",
        "name": "jeb_"
      }
    ],
    "version": {
      "name": "26.2",
      "protocol": 774
    }
  }
}

连接和 server.properties 构建器

为工具使用固定端口,并将密钥留空一次,以便 Minecraft 生成一个有效的 40 字符值。

安全提示: 切勿将真实的管理密钥粘贴到公共网站。绑定到 localhost 或私有网络,使用防火墙,并在不受信任的网络上使用 TLS。
server.properties
management-server-enabled=true
management-server-host=localhost
management-server-port=25585
management-server-secret=
management-server-tls-enabled=true
management-server-tls-keystore=management-server.p12
management-server-allowed-origins=http://localhost:3000
终端连接
wscat -c wss://localhost:25585 -s minecraft-v1 -H "Authorization: Bearer YOUR_40_CHARACTER_SECRET"
浏览器 WebSocket 示例
const socket = new WebSocket('wss://localhost:25585', [
  'minecraft-v1',
  'YOUR_40_CHARACTER_SECRET'
]);

socket.addEventListener('open', () => {
  socket.send("{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"minecraft:server/status\"}");
});

socket.addEventListener('message', ({ data }) => {
  console.log(JSON.parse(data));
});
协议指南

什么是我的世界服务器管理协议?

服务器管理协议是 1.21.9 中引入的 Java 版专用服务器 API。它通过 WebSocket 传输 JSON-RPC 2.0 消息,因此仪表板和自动化可以处理类型化的玩家、封禁、设置、游戏规则和服务器状态,而不是解析控制台文本。

Minecraft 26.2 使用协议版本 3.0,并且可以在游戏服务器完全启动之前暴露 rpc.discover。发现是客户端了解其所连接的确切服务器支持的方法和通知的最安全方式。

此探索器是一个参考和负载构建器,而非远程控制面板。它有意使用占位符密钥,并在您的浏览器中本地执行所有编辑。

操作指南

管理 API 与 RCON

RCON 发送控制台命令并返回非结构化文本。管理 API 返回类型化的 JSON,并可以推送加入、离开、保存、游戏规则和状态事件,这使其更适合控制面板、监控和机器人。

该 API 仅适用于 Java 版,并且默认禁用。生产客户端应验证发现的架构,处理标准 JSON-RPC 错误对象,以退避方式重新连接,并将停止、清除、设置、封禁、踢出和操作员写入视为特权操作。

端口 0 要求 Minecraft 选择一个随机端口;它不会禁用服务。TLS 默认启用,浏览器客户端还需要一个允许的 Origin 以及 minecraft-v1 WebSocket 子协议。

常见问题

此页面可以连接到我的实时 Minecraft 服务器吗?

不能。它在本地构建示例,从不要求您的真实密钥。请在受信任的本地工具中使用生成的代码片段,或使用维护良好的客户端库。

为什么参数显示为 JSON 数组?

Minecraft API 方法使用位置 JSON-RPC 参数。即使只有一个逻辑参数的方法,也会将该值作为 params 数组的一部分发送。

该协议在基岩版上有效吗?

不能。Minecraft 服务器管理协议目前是 Java 版专用服务器的功能。

我应该在服务器面板中硬编码方法列表吗?

如果可能,请在运行时使用 rpc.discover。协议已在 1.21.9、1.21.11 和 26.2 版本中发生变化。