3 v0.1.0 更新于 2026-10-19
HeadlessMc MCP Server
Install, launch and control Minecraft: Java Edition clients and servers, also headless.
适用客户端
本地客户端
Claude Desktop、Claude Code、Cursor、Cline 等支持本地 MCP 的客户端
安装配置
本地运行(npm)
{
"mcpServers": {
"headlessmc-mcp": {
"command": "npx",
"args": [
"-y",
"@headlesshq/headlessmc-mcp"
]
}
}
}将上方 JSON 加入 MCP 客户端配置(如 Claude Desktop 的 claude_desktop_config.json 或项目的 .mcp.json)即可接入;远程接入按客户端要求填写 URL 与鉴权头。
提供的工具 接入后 Agent 可调用这 20 个工具
hmc
运行任意 HeadlessMc 命令行,如安装版本、搜索模组、登录等,长命令可通过 hmc_job 轮询。
hmc_job
查看正在运行的 hmc 命令的输出和状态。
launch_client
安装并启动一个 Minecraft 客户端,可指定版本、加载器、配置文件、无头模式、离线模式和 JVM 参数,并等待其进入主菜单。
start_server
创建并启动 Paper/Fabric/Purpur/Forge/NeoForge/原版服务器,并等待世界加载完成。
list_profiles
列出所有配置文件(拥有独立游戏目录的客户端配置)。
create_profile
创建一个新的配置文件。
delete_profile
删除一个配置文件。
list_instances
列出所有已启动的客户端和服务器及其状态。
instance_log
读取某个实例的最新输出日志,可按正则过滤。
server_command
向服务器写入控制台命令并返回其打印的内容。
stop_instance
退出客户端或停止(或强制关闭)服务器。
get_screen
以 JSON 形式获取当前屏幕的按钮和文本框(id、文本、位置)。
get_state
以 JSON 形式获取游戏状态:是否在世界中、是否死亡、当前屏幕,以及位置、生命、维度、服务器、延迟、TPS、玩家等指标。
click
点击当前屏幕上的按钮,并返回点击后的屏幕。
set_text
设置当前屏幕文本框的内容。
press_key
向当前屏幕发送按键。
chat
发送聊天消息或 / 命令。
connect
加入一个服务器。
disconnect
离开当前服务器。
wait_for
等待游戏进入指定状态,如 in_world、menu、特定屏幕、匹配日志或退出。