README
🚀 WHM 管理控制面板(MCP)
WHM 管理控制面板(MCP)是一个基于 Node.js 的服务器应用程序,它能够连接到 WHM(Web Host Manager)服务器,实现账户管理和服务管理功能。该应用实现了模型上下文协议(MCP),使得 AI 助手(如 Claude)可以与 WHM API 进行交互,为服务器管理提供了更智能、便捷的方式。
✨ 主要特性
- 账户管理:支持账户的创建、修改、挂起和终止操作。
- 服务器信息和统计:可查看服务器的相关信息和统计数据。
- 服务器更新和维护:方便进行服务器的更新和维护工作。
- SSL 证书管理:对 SSL 证书进行有效管理。
- 备份管理:实现服务器数据的备份管理。
- 电子邮件账户管理:可对电子邮件账户进行管理。
- 域名管理:支持域名的相关管理操作。
- 安全特性:具备一定的安全保障机制。
- MCP 协议实现:支持 AI 助手集成,便于与 WHM API 交互。
📦 安装指南
- 克隆仓库。
- 安装依赖:
npm install - 配置
.env文件,输入您的 WHM 服务器详细信息:# WHM 服务器配置 WHM_SERVER=your-server-domain.com WHM_PORT=2087 WHM_USERNAME=root WHM_API_TOKEN=your-api-token-here # MCP 服务器配置 PORT=3000 NODE_ENV=development LOG_LEVEL=info # API 认证 API_KEY=your-secret-api-key-here - 启动服务器:
npm start
开发环境使用:
npm run dev
📚 详细文档
MCP 服务器配置
要将此 MCP 服务器与 AI 助手(如 Claude 在 Cursor 中)一起使用,您需要在 mcp.json 文件中添加以下配置:
{
"mcpServers": {
"whm": {
"url": "http://your-server-address:3000/sse"
}
}
}
MCP 实现细节
此服务器使用 HTTP 服务器发送事件(SSE)作为传输机制实现模型上下文协议。实现遵循标准的 JSON - RPC 2.0 格式的所有消息,并包括:
/sse端点用于建立持久连接。/messages端点用于接收和响应客户端请求。- 主动
connection/ready和tools/ready通知。 - 规范化错误处理,带有适当的错误代码。
MCP 架构允许 AI 助手通过明确定义的工具与 WHM 功能安全交互,参数模式创建语言模型与服务器管理功能之间的安全桥梁。
可用 MCP 工具
该 MCP 服务器通过以下工具公开 WHM 功能:
账户管理
查看所有账户:列出所有用户账户。创建新账户:添加新的用户账户。删除指定账户:移除特定的用户账户。
服务器信息和统计
获取服务器状态:返回当前服务器运行状态。查看资源使用情况:显示 CPU、内存等资源使用详情。
API 文档
完整的 API 文档请访问 官方文档链接。
🔧 技术细节
此服务器使用 HTTP 服务器发送事件(SSE)作为传输机制实现模型上下文协议。实现遵循标准的 JSON - RPC 2.0 格式的所有消息,包含 /sse 和 /messages 两个端点,分别用于建立持久连接和接收响应客户端请求,同时有主动通知和规范化错误处理。MCP 架构让 AI 助手能通过明确定义的工具与 WHM 功能安全交互,参数模式在语言模型与服务器管理功能间搭建了安全桥梁。
💻 使用示例
基础用法
使用以下命令克隆仓库并安装依赖:
git clone <仓库地址>
npm install
配置 .env 文件后启动服务器:
npm start
高级用法
在开发环境中,使用以下命令启动服务器,支持热更新:
npm run dev
使用随附的示例客户端测试 MCP 服务器:
npm run example
这将运行一个简单的测试客户端,连接到 MCP 服务器,请求可用工具,并执行样本命令。
🔒 安全注意事项
⚠️ 重要提示
- 保护 API 令牌:确保 WHM_API_TOKEN 不被泄露,避免未授权访问。
- 部署 HTTPS:在生产环境中启用 SSL 证书以加密通信。
- 定期更新软件:保持服务器和相关组件的最新状态,防范已知漏洞。
Scan to join WeChat group