面板用户本来就没有 shell
Pterodactyl / Pelican 的典型用户拿到的是面板账号和受限 API Key,而不是节点上的 root。面板存在的意义就是把操作系统隔离掉。
SSH vs API
给 AI 一把 root,和给它一把有权限范围的 API Key,是两件完全不同的事。
Pterodactyl / Pelican 的典型用户拿到的是面板账号和受限 API Key,而不是节点上的 root。面板存在的意义就是把操作系统隔离掉。
只读模式、危险操作二次确认、权限边界由 API Key 决定。AI 只能做你允许它做的事,而不是拥有一台机器的全部能力。
备份、文件、电源状态在面板里都是有权限、有审计、有状态语义的一等操作,不是随手一条 shell 命令。
能力
列出全部服务器,读取在线状态与资源占用。
启动、停止、重启、强杀,动作后轮询状态直到就绪。
直接向服务器发送指令,读回控制台输出。
浏览、读取、写入、上传、重命名、删除、新建文件夹、生成一次性下载链接。
查看备份列表、创建新备份、从备份恢复、删除旧备份。
只读模式一键开启,高危操作需要二次确认,API Key 永不离开本机。
开始使用
需要 Python 3.12+。用 uv 一行跑起来,然后在 MCP 客户端里加一段配置即可。
# 需要 Python 3.12+ 与 uv $ uvx pteropilot
从源码运行(开发者)
# 需要 git、uv 与 Python 3.12+ $ git clone https://github.com/telson-dev/pteropilot.git $ cd pteropilot $ uv sync && uv run pteropilot
{
"mcpServers": {
"pteropilot": {
"command": "uvx",
"args": ["pteropilot"],
"env": {
"PANEL_URL": "https://panel.example.com",
"PANEL_API_KEY": "ptlc_xxxxxxxxxxxxxxxxxxxx",
"PANEL_READONLY": "0"
}
}
}
}
PANEL_URL — 你的面板地址PANEL_API_KEY — 面板 API KeyPANEL_READONLY — 设为 1 进入只读模式用法
「列出我所有服务器和状态」
「smp 服最近一次备份是什么时候?没有就现在建一个」
「往 creative 服上传这个插件并重启」
安全
FAQ
不需要。Pteropilot 连接你已经运行中的 Pterodactyl / Pelican 面板,只需要面板地址和 API Key。
任何支持 MCP 的客户端,例如 Claude Desktop、Cursor 等。
建议先开只读模式确认行为;高危操作需要二次确认;API Key 的权限也可以自行收窄到最小。
开源、免费,MIT 许可。源码在 GitHub,包在 PyPI。