mcpField
O
Obambu cPanel MCP

Obambu cPanel MCP

本地服务
github.com/RodrigueDev13云与基础设施014 周前更新

关于 Obambu cPanel MCP

Obambu cPanel MCP 通过 cPanel UAPI 将 AI 助手连接到 cPanel 托管账户。它提供域名、DNS、邮件、MySQL 和文件工具,并支持调用其他 UAPI 操作。

主要功能

  1. 01查看账户用量和统计信息
  2. 02管理域名与 DNS 记录
  3. 03列出和管理邮件账户
  4. 04创建数据库及数据库用户
  5. 05列出账户文件
  6. 06调用任意 UAPI 函数

适用场景

  1. 01切换域名前检查域名
  2. 02添加或审查 DNS 记录
  3. 03创建邮箱
  4. 04配置数据库并授予权限
  5. 05查看托管账户中的文件

MCP 相关

该服务将 cPanel UAPI 操作作为工具提供给 MCP 客户端。使用时需要 cPanel 账户和 API 令牌。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"rodriguedev13-obambu-cpanel": {
"command": "npx",
"args": [
"-y",
"obambu-cpanel-mcp"
],
"env": {
"CPANEL_HOST": "<CPANEL_HOST>",
"CPANEL_PORT": "<CPANEL_PORT>",
"CPANEL_USERNAME": "<CPANEL_USERNAME>",
"CPANEL_API_TOKEN": "<CPANEL_API_TOKEN>"
}
}
}
}
启动命令npx -y obambu-cpanel-mcp
需要配置的环境变量
CPANEL_HOSTcPanel server hostname or IP address
CPANEL_PORTcPanel API port
CPANEL_USERNAMEcPanel account username
CPANEL_API_TOKEN密钥cPanel API token (Security -> Manage API Tokens)

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

安装包
npmobambu-cpanel-mcp0.1.2

工具

16

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

此工具无需参数。

详细介绍

obambu-cpanel-mcp

一个 Model Context Protocol(MCP)服务,可让 AI 助手(Claude 等)通过 cPanel UAPI 管理 cPanel 托管账户。

它提供用于管理域名、DNS 区域、电子邮件账户、MySQL 数据库和文件列表的工具,还提供通用的备用入口,可调用任何其他 UAPI 模块或函数。

要求

  • Node.js 18+
  • 具有 API 令牌访问权限的 cPanel 账户(在 cPanel 中选择 Security → Manage API Tokens)

获取 cPanel 凭据(以 Obambu 为例)

以下四个环境变量可来自任何 cPanel 主机,下面介绍如何在 Obambu 上查找:

  • CPANEL_HOST — 服务器主机名,例如 cp4.obambu.com(如果可通过 https://yourdomain.com:2083 访问 cPanel,也可以使用自己的域名)。可在 Obambu 的欢迎邮件中找到;也可以在域名的 DNS 区域中查找名为 cpanel 的 A 记录(例如 cpanel.yourdomain.com)——同一台服务器也可通过其 cpX.obambu.com 主机名访问。
  • CPANEL_PORT — 00000(cPanel 默认的 HTTPS 端口)。除非主机另有说明,否则请保持不变。
  • CPANEL_USERNAME — cPanel 账户用户名。登录 cPanel 后可在右上角查看,也可在创建托管账户时 Obambu 发送的欢迎邮件中找到。
  • CPANEL_API_TOKEN — 请自行生成一个,它不是 cPanel 密码:
    1. 登录 https://<CPANEL_HOST>:00000 上的 cPanel
    2. 前往 Security → Manage API Tokens
    3. 点击 Create,为令牌命名(例如 mcp-server),可选择将其限制为特定 ACL,然后点击 Create
    4. 立即复制令牌——cPanel 只会显示一次

在 MCP 客户端中使用(推荐使用 npx)

此项目已发布到 npm,名称为 obambu-cpanel-mcp——无需克隆或构建。将其添加到 MCP 客户端配置中(例如 Claude Desktop / Claude Code):

{
  "mcpServers": {
    "obambu-cpanel": {
      "command": "npx",
      "args": ["-y", "obambu-cpanel-mcp"],
      "env": {
        "CPANEL_HOST": "your-server-hostname-or-ip",
        "CPANEL_PORT": "00000",
        "CPANEL_USERNAME": "your-cpanel-username",
        "CPANEL_API_TOKEN": "your-api-token"
      }
    }
  }
}

从源代码运行

git clone https://github.com/RodrigueDev13/obambu-cpanel-mcp.git
cd obambu-cpanel-mcp
npm install
cp .env.example .env

在 .env 中填写 cPanel 详细信息,然后:

npm run build
npm start

无需先构建即可进行本地开发:

npm run dev

从源代码运行时,请将 MCP 客户端指向构建后的入口点,而不是 npx:

{
  "mcpServers": {
    "obambu-cpanel": {
      "command": "node",
      "args": ["/absolute/path/to/obambu-cpanel-mcp/dist/index.js"],
      "env": {
        "CPANEL_HOST": "your-server-hostname-or-ip",
        "CPANEL_PORT": "00000",
        "CPANEL_USERNAME": "your-cpanel-username",
        "CPANEL_API_TOKEN": "your-api-token"
      }
    }
  }
}

可用工具

工具描述
get_account_summary磁盘/带宽配额使用情况和常规统计信息
list_domains域名、子域名、附加域名和停放域名
list_dns_records读取域名的 DNS 区域
add_dns_record添加 DNS 记录
edit_dns_record编辑现有 DNS 记录
remove_dns_record删除 DNS 记录
list_emails列出电子邮件账户
create_email创建电子邮件账户
delete_email删除电子邮件账户
list_files列出账户主目录下的文件/目录
list_databases列出 MySQL 数据库
list_database_users列出 MySQL 数据库用户
create_database创建 MySQL 数据库
create_database_user创建 MySQL 数据库用户
grant_database_privileges授予用户对数据库的权限
cpanel_uapi_call直接调用任意 UAPI 模块/函数,以处理上述工具未涵盖的操作

使用示例

连接后,只需用自然语言与助手对话,它就会选择合适的工具:

  • “测试与我的 cPanel 账户的连接” → get_account_summary
  • “这个托管账户有哪些域名和子域名?” → list_domains
  • “显示 example.com 的 DNS 记录” → list_dns_records
  • “添加一条 A 记录,将 shop.example.com 指向 1.2.3.4” → add_dns_record
  • “创建一个邮箱 [email protected]” → create_email
  • “为我的新应用创建一个 MySQL 数据库和用户,然后授予权限” → create_database + create_database_user + grant_database_privileges
  • “列出 public_html 中的文件” → list_files
  • “读取 config/filesystems.php 并修复这个路径” → cpanel_uapi_call,使用 module: "Fileman", function: "get_file_content" / save_file_content

由于工具调用直接映射到 UAPI 模块,因此它也适用于实际的迁移/部署工作流,例如将网站迁移到新的 cPanel 账户、为新应用配置数据库,或在域名切换前审计 DNS。

关于 Fileman 的说明

已知可可靠地读取和写入单个文件的方式只有 list_files(由 Fileman::list_files 支持),以及通过 cpanel_uapi_call 这一备用入口调用 get_file_content / save_file_content。批量文件系统操作(extract_files、rename、mkdir、fileop、delete_files 等)能否使用取决于你的 cPanel 版本/服务提供商,无法保证;依赖这些操作前请先测试。批量移动、解压和删除时,建议使用 cPanel 的文件管理器界面。

安全

  • 切勿提交 .env 文件(默认情况下,该文件已被 git 忽略)。
  • 根据服务提供商的限制,尽可能缩小 cPanel API 令牌的权限范围。
  • cpanel_uapi_call 工具可以调用账户可用的任何 UAPI 函数,请像对待直接 API/令牌访问一样谨慎使用。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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