mcpField
E
Epeaky host

Epeaky host

本地服务
epeaky.zyn-network.com云与基础设施01 周前更新

关于 Epeaky host

Epeaky host 是用于在已有服务器上部署和运维 Epeaky den 的 MCP 服务。它通过操作者自己的 SSH 连接工作,不持有 SSH 密钥,并区分只读工具与会更改服务器的工具。

主要功能

  1. 01检查主机准备情况与配置
  2. 02安装 Epeaky、Docker 和 Caddy
  3. 03查看 den 状态与日志
  4. 04管理所有者、邀请和加入申请
  5. 05修改允许的设置并更新 Epeaky

适用场景

  1. 01安装 Epeaky den 前检查服务器
  2. 02通过 SSH 安装并配置 den
  3. 03查看成员申请并管理邀请
  4. 04检查日志或更新现有 den

MCP 相关

该 MCP 服务通过操作者的 SSH 访问提供检查、安装和管理 Epeaky den 的工具。会更改服务器的工具标记为非只读,以便 MCP 客户端请求批准。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"zyn-io-epeaky-host": {
"command": "npx",
"args": [
"-y",
"epeaky-host-mcp"
],
"env": {
"EPEAKY_HOST_SSH": "<EPEAKY_HOST_SSH>"
}
}
}
}
启动命令npx -y epeaky-host-mcp
需要配置的环境变量
EPEAKY_HOST_SSHAnother ssh to use (default: ssh on PATH)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmepeaky-host-mcp0.1.1

工具

11

收录的工具列表 · 更新于 2 周前

参数类型必填说明
domainstring是den 使用的域名,例如 chat.example.org。
serverstring是服务器地址,格式为 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 命令和设置。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。