关于 Epeaky host
Epeaky host 是用于在已有服务器上部署和运维 Epeaky den 的 MCP 服务。它通过操作者自己的 SSH 连接工作,不持有 SSH 密钥,并区分只读工具与会更改服务器的工具。
主要功能
- 01检查主机准备情况与配置
- 02安装 Epeaky、Docker 和 Caddy
- 03查看 den 状态与日志
- 04管理所有者、邀请和加入申请
- 05修改允许的设置并更新 Epeaky
适用场景
- 01安装 Epeaky den 前检查服务器
- 02通过 SSH 安装并配置 den
- 03查看成员申请并管理邀请
- 04检查日志或更新现有 den
MCP 相关
该 MCP 服务通过操作者的 SSH 访问提供检查、安装和管理 Epeaky den 的工具。会更改服务器的工具标记为非只读,以便 MCP 客户端请求批准。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
11收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| domain | string | 是 | den 使用的域名,例如 chat.example.org。 |
| server | string | 是 | 服务器地址,格式为 user@host(地址或名称),须可通过用户的 SSH 密钥访问。 |
详细介绍
epeaky-host-mcp
从任意 MCP 客户端(Claude Desktop、Claude Code 等)在你已有的服务器上设置并运行 Epeaky den。它通过你自己的 SSH运行: 它不持有密钥、不保留任何信息,也绝不会创建、租用或购买服务器。
claude mcp add epeaky-host -- npx -y epeaky-host-mcp
或者,在任意 MCP 客户端的配置中:
{ "command": "npx", "args": ["-y", "epeaky-host-mcp"] }
你的 SSH 密钥必须已能连接到服务器(无需密码即可运行 ssh user@server)。需要 Node 22 或更高版本。
这是有意与 epeaky-mcp 分开的:后者是 den 房间里的 Agent;而这个工具在 den 的服务器上拥有 root 权限。请谨慎决定是否将它们分别交给 Agent。
工具
| 工具 | 是否会更改服务器 | 功能 |
|---|---|---|
host_check | 否 | 检查系统、内存、磁盘、sudo、端口 80/443、Docker、域名是否指向服务器(通过公共解析器检查)、NAT 和防火墙,并说明哪些项目正常、哪些需要修复 |
host_install | 是 | 如果缺少 Docker,则安装 Docker;在 /opt/epeaky 中安装 den 和 Caddy、证书及防火墙端口;返回首个邀请链接 |
host_status | 否 | 查看所有者、成员、加入请求和邀请 |
host_logs | 否 | 查看 den 的最新日志 |
host_owner | 是 | 将某个设备(格式为 m-…,以其页面显示为准)设为所有者 |
host_invite | 是 | 创建一次性邀请链接 |
host_withdraw | 是 | 撤销邀请及其允许进入的通行凭证 |
host_approve、host_decline | 是 | 回复加入请求 |
host_setting | 是 | 更改 /opt/epeaky/.env 中的已知设置(会先备份),然后重启 |
host_update | 是 | 更新到最新版本的 Epeaky |
会更改服务器的工具都已标记(readOnlyHint: false),因此客户端会在每次调用前征求你的同意。返回的邀请链接附有说明,要求只向你本人展示。
安全保障
- 每个值在传给 SSH 前都会经过严格格式校验:服务器(
user@host)、域名、ID(十六进制)、设备名称、数量,以及每项设置各自的规则。SSH 会将命令作为一个字符串交给服务器的 shell 执行,因此防止值变成命令的关键是这项校验,而不是参数列表;此外,值也会用单引号括起来。 - 仅允许修改以下设置:
DEN_ENTRY、DEN_ROOMS、DEN_DONATE、DEN_DONATE_LABEL、DEN_ISSUER_LABEL、DEN_SCREEN、DEN_SCREEN_BITRATE、DEN_RETENTION_DAYS、DEN_LIMITS、DEN_PUBLIC_IP。绝不会修改密钥和域名。 - 不使用密码。 如果 sudo 要求输入密码,工具会返回准确的命令,供你自行运行。
- SSH 会以批处理模式运行,并在首次遇到服务器主机密钥时接受该密钥(
StrictHostKeyChecking=accept-new),与首次手动运行ssh并确认接受后的行为一致;如果密钥发生变化,则会拒绝连接。
EPEAKY_HOST_SSH 可指向另一个 SSH 可执行文件。
测试
npm test
测试会检查工具列表(不会有任何操作创建服务器;所有会更改服务器的操作均已标记)、无效值不会传给 SSH、每个工具运行的命令、设置规则、检查报告,以及安装程序和 den 中是否存在使用到的每条 epeaky 命令和设置。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。