关于 Beget Hosting
Beget Hosting 是供 AI Agent 管理 Beget 托管服务的 MCP 服务,提供 73 个工具,涵盖网站、域名、DNS、数据库、邮件、备份及账户操作。
主要功能
- 01管理网站和域名
- 02编辑 DNS 记录
- 03管理 MySQL 和 FTP
- 04安排 cron 任务
- 05管理邮件和备份
- 06查看统计与账户信息
适用场景
- 01部署或删除托管网站
- 02更新 DNS 和域名设置
- 03管理数据库、FTP 和定时任务
- 04检查备份、邮件及托管用量
MCP 相关
向 MCP 客户端提供覆盖 Beget REST API 操作的 73 个工具。使用 Beget API 登录名和密码进行身份验证。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx beget-mcpBEGET_API_LOGINBeget account loginBEGET_API_PASSWORD密钥Beget account password (API access must be enabled in the panel)MCP_TRANSPORTTransport: stdio for local clients, sse for a shared HTTP deployment. The image defaults to sse, so stdio clients must set this.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
73收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
beget-mcp
用于通过 AI Agent 管理主机服务商 Beget 服务的 MCP 服务。
基于 FastMCP 构建,覆盖全部 Beget REST API——包含 10 个类别中的 73 个工具。
Model Context Protocol (MCP) 是一项用于将 AI 模型连接到外部服务的开放标准。
快速开始
从 PyPI 运行,无需安装到系统中:
claude mcp add beget -s user \
-e BEGET_API_LOGIN=your_login \
-e BEGET_API_PASSWORD=your_password \
-- uvx beget-mcp
使用容器运行(默认镜像会启动 SSE——本地客户端需要 stdio):
docker run -i --rm \
-e MCP_TRANSPORT=stdio \
-e BEGET_API_LOGIN=your_login \
-e BEGET_API_PASSWORD=your_password \
ghcr.io/badigit/beget-mcp:latest
从源代码运行:
pip install -e .
claude mcp add beget -s user \
-e BEGET_API_LOGIN=your_login \
-e BEGET_API_PASSWORD=your_password \
-- python -m mcp_beget
该 MCP 服务以 io.github.badigit/beget-mcp 这一名称发布在 MCP Registry 中。项目主页:https://badigit.github.io/beget-mcp/.
功能
| 类别 | 工具 | 操作示例 |
|---|---|---|
| 网站 | 8 | 创建、删除、绑定域名、冻结文件 |
| 域名 | 13 | 管理、子域名、PHP 版本、指令、可用性检查 |
| DNS | 8 | A、CNAME、MX、TXT——安全合并;通过 dns_patch_record 部分更新;dns_verify 与权威 NS 上的实际记录核对 |
| MySQL | 6 | 数据库、主机访问权限、密码 |
| FTP | 4 | 账号、主目录 |
| Cron | 7 | 任务、计划、启用、电子邮件报告 |
| 备份 | 9 | 查看内容、回滚、导出文件和数据库 |
| 邮件 | 12 | 邮箱、密码、垃圾邮件过滤器、转发、catch-all、一次性配置 Yandex 360 / Mail.ru |
| 统计 | 4 | 网站和数据库负载——汇总与详细统计 |
| 账号 | 2 | 套餐、余额、SSH 访问 |
文档
| 文件 | 内容 |
|---|---|
| docs/api-coverage.md | Beget API 方法覆盖情况 |
| docs/beget-api-gotchas.md | API 易踩的坑:success 响应封装错误等 |
| docs/dns-facts-vs-intent.md | DNS:未创建的子域名、catch-all 区域、传播延迟 |
| docs/new-app-deploy-chain.md | 在共享主机上部署新应用的调用链 |
发布与部署
- 推送到
main= 部署到生产主机。.github/workflows/deploy.yml会在 VPS 上调用 forced-commanddeploy,从/opt/beget-mcp重新构建容器。无需单独手动操作——对main的修改会 自动部署到生产环境。 - 标签
vX.Y.Z= 发布软件包。publish-mcp.yml会运行测试并发布到 PyPI(trusted publishing)、GHCR 和 MCP Registry——全部通过 OIDC,无需密钥。pyproject.toml、server.json中的版本必须与标签一致:workflow 会在发布前进行核对,因为 PyPI 上的版本无法重新发布。
环境变量
| 变量 | 用途 |
|---|---|
BEGET_API_LOGIN | Beget 登录名 |
BEGET_API_PASSWORD | Beget 密码 |
架构
src/mcp_beget/
├── app.py — экземпляр FastMCP
├── config.py — конфигурация (dataclass + валидация)
├── client.py — HTTP-клиент с переиспользованием сессии
├── errors.py — типизированные исключения (Auth / API)
├── server.py — точка входа, инициализация, логирование
└── tools/ — инструменты, сгруппированные по разделам API
要求
- Python >= 3.11
- mcp[cli]
- requests
- python-dotenv
贡献
欢迎提交 Issues 和 pull requests。如果发现错误或想提出改进建议,请创建 issue。
许可证
还没有 Beget 账号?通过此链接注册——您将获得主机服务,项目作者也会得到一笔小额奖励。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。