beget-mcp
MCP-сервер для управления сервисами хостера Beget из AI-агентов.
Построен на FastMCP и покрывает весь Beget REST API — 73 инструмента в 10 разделах.
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 Registry под именем
io.github.badigit/beget-mcp. Страница проекта — https://badigit.github.io/beget-mcp/.
Что умеет
| Раздел | Инструменты | Примеры операций |
|---|---|---|
| Сайты | 8 | создание, удаление, привязка доменов, заморозка файлов |
| Домены | 13 | управление, поддомены, PHP-версии, директивы, проверка доступности |
| DNS | 8 | A, CNAME, MX, TXT — безопасный merge; частичное обновление через dns_patch_record; dns_verify сверяет факт у авторитативного NS |
| MySQL | 6 | базы, доступы с хостов, пароли |
| FTP | 4 | аккаунты, домашние каталоги |
| Cron | 7 | задачи, расписание, активация, email-отчёты |
| Бэкапы | 9 | просмотр содержимого, откат, выгрузка файлов и БД |
| Почта | 12 | ящики, пароли, спам-фильтр, пересылка, catch-all, one-shot-настройка Яндекс 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 | цепочка вызовов для нового приложения на shared-хостинге |
Переменные окружения
| Переменная | Назначение |
|---|---|
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
Contributing
Issues и pull requests приветствуются. Если нашли баг или хотите предложить улучшение — создайте issue.
Лицензия
Нет аккаунта на Beget? Зарегистрируйтесь по ссылке — вы получите хостинг, а автор проекта небольшой бонус.
Release files for beget-mcp 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| beget_mcp-0.2.0.tar.gz | 103.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| beget_mcp-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 134.1 kB
Release files / beget_mcp-0.2.0.tar.gz
| Download URL | beget_mcp-0.2.0.tar.gz |
|---|---|
| Size | 103.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
09257f9b32b19f3e2397a145516a7e64bea76e5f43f514de1aee87b5e29938b9
|
|
BLAKE2b-256 checksum How to use checksums |
ec172d2f0fdd2d982682728ebbc53077ad885d99898272afd00a903a95df92ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.
Transparency logRelease files / beget_mcp-0.2.0-py3-none-any.whl
| Download URL | beget_mcp-0.2.0-py3-none-any.whl |
|---|---|
| Size | 31.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5a0e938206540620ac65833ddab62591a37097f12866cbcd22014853e8aa4255
|
|
BLAKE2b-256 checksum How to use checksums |
3b2e8fbb8a1df417aacb9680179d93bf43e75612910462cb582383136133f592
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.
Transparency log