Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BEGET_API_LOGINYesBeget login
BEGET_API_PASSWORDYesBeget password

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
account_infoB

Сведения об аккаунте: баланс, тариф, ресурсы, сервер.

toggle_sshA

Переключить SSH-доступ для основного или FTP-аккаунта.

Args: status: 1 = включить, 0 = выключить ftplogin: Логин FTP-аккаунта (если пусто — применяется к основному аккаунту)

stat_site_list_loadB

Средняя нагрузка по всем сайтам за месяц.

stat_db_list_loadA

Средняя нагрузка по всем базам данных за месяц.

stat_site_loadB

Детальная статистика нагрузки сайта (почасовая и посуточная за месяц).

Args: site_id: ID сайта

stat_db_loadC

Детальная статистика нагрузки БД: CPU, размер, почасовая и посуточная.

Args: db_name: Имя базы данных

backup_files_listC

Доступные файловые резервные копии.

backup_mysql_listC

Доступные резервные копии баз MySQL.

backup_restore_fileB

Откатить файлы из резервной копии.

Args: backup_id: ID бэкапа (получить через backup_files_list) paths: Список путей для восстановления

backup_restore_mysqlA

Откатить базу MySQL из резервной копии.

Args: backup_id: ID бэкапа (получить через backup_mysql_list) databases: Список имён баз для восстановления

backup_file_listA

Содержимое файлового бэкапа (файлы и каталоги).

Args: backup_id: ID бэкапа (не указан = текущая копия) path: Путь от корня директории (пусто = корень)

backup_mysql_db_listB

Базы данных внутри резервной копии.

Args: backup_id: ID бэкапа (не указан = текущая копия)

backup_download_fileA

Выгрузить файлы из бэкапа в корневую директорию аккаунта.

Args: paths: Список путей для скачивания backup_id: ID бэкапа (не указан = текущая копия)

backup_download_mysqlB

Выгрузить дамп MySQL из бэкапа в корневую директорию аккаунта.

Args: bases: Список имён баз данных backup_id: ID бэкапа (не указан = текущая копия)

backup_logB

Журнал операций восстановления и скачивания бэкапов.

cron_listC

Все cron-задачи аккаунта.

cron_addB

Зарегистрировать новую cron-задачу.

Args: minutes: Минуты (0-59, * или */N) hours: Часы (0-23, * или */N) days: Дни месяца (1-31, * или */N) months: Месяцы (1-12, * или */N) weekdays: Дни недели (0-7, 0 и 7 = воскресенье) command: Команда для выполнения

cron_deleteB

Убрать cron-задачу.

Args: task_id: ID задачи

cron_editA

Изменить параметры cron-задачи. Указывайте только обновляемые поля.

Args: task_id: ID задачи minutes: Минуты (0-59, * или */N) hours: Часы (0-23, * или */N) days: Дни месяца (1-31, * или */N) months: Месяцы (1-12, * или */N) weekdays: Дни недели (0-7) command: Команда для выполнения

cron_toggleA

Переключить активность cron-задачи.

Args: task_id: ID задачи (полученный из cron_list) is_hidden: 1 = выключить (скрыть), 0 = включить

cron_get_emailB

Адрес уведомлений о выполнении cron-задач.

cron_set_emailA

Назначить email для отчётов cron. Пустая строка отключает уведомления.

Args: email: Email-адрес или пустая строка для отключения

dns_getA

DNS-записи FQDN плюс фактический ответ авторитативного NS.

В Beget поддомен — отдельная сущность со своим getData. Если прямой запрос вернул METHOD_FAILED, функция пробует родительскую зону и возвращает её records с пометкой (актуально для DKIM типа mail._domainkey.site.ru, которые иногда хранятся на уровне родителя).

ВАЖНО: отсутствие записи в зоне НЕ означает, что имя не резолвится. У зоны бывает catch-all на shared-хостинг Beget, невидимый для dns/getData: имя отвечает чужим адресом, хотя в выдаче API его нет. Поле effective — фактический ответ авторитативного NS зоны, запрошенный напрямую по UDP мимо кеша резолвера. Расхождение «в зоне нет, а отвечает» видно сразу.

Args: fqdn: Имя домена (site.ru или sub.site.ru) check_effective: Спросить авторитативный NS (по умолчанию да)

dns_verifyA

Подтвердить факт у авторитативного NS зоны: отдаётся ли значение миру.

success от dns_set_* означает «принято панелью», а dns_get подтверждает ровно это — он читает тот же источник, куда писал. Авторитативный NS может отдавать старое значение ещё несколько минут. Запуск certbot в этом окне сжигает попытку и приближает лимит Let's Encrypt на домен.

Тул опрашивает авторитативные NS зоны напрямую по UDP (мимо кеша любого резолвера) до совпадения с expect или до дедлайна.

Вручную сверять надо nslookup, а НЕ Resolve-DnsName -Server: флаг -Server не обходит клиентский кеш Windows и отдаёт устаревшее значение.

Args: fqdn: Имя, которое проверяем expect: Ожидаемое значение (IP для A, имя для CNAME/MX). Пусто — просто вернуть текущий ответ NS одним запросом, без ожидания type: Тип записи (A, AAAA, CNAME, MX, TXT, NS) timeout: Сколько секунд ждать совпадения (по умолчанию 120)

dns_set_aA

Задать A-запись (IPv4) для FQDN.

Безопасно: делает getData → merge → changeRecords. Прочие записи (MX, TXT, CNAME, NS) в зоне сохраняются. Прежние A-записи заменяются на переданную.

TTL: Beget управляет TTL на уровне зоны (типичный минимум 600 сек) и может игнорировать значение в запросе. Параметр оставлен для совместимости.

Если в зоне есть CAA/SRV — вернёт ошибку (changeRecords их затирает). Передайте force=True, чтобы продолжить и потерять их.

Args: fqdn: Имя домена address: IPv4-адрес (203.0.113.1) ttl: TTL в секундах (может быть проигнорирован; по умолчанию 600) force: Продолжить при наличии CAA/SRV (они будут удалены)

dns_set_cnameA

Задать CNAME-запись для поддомена.

Безопасно мерджится с существующими записями. ВАЖНО: у Beget set_type у зоны при CNAME становится эксклюзивным (A/MX/TXT при этом не работают). Используйте CNAME только на поддоменах, где у вас нет других записей.

Args: fqdn: Имя поддомена (www.site.ru) cname: Каноническое имя (site.ru — автоматически без trailing dot) ttl: TTL в секундах (см. dns_set_a) force: Продолжить при наличии CAA/SRV

dns_set_txtA

Задать TXT-запись (SPF, верификация, DKIM и пр.).

Заменяет все TXT-записи одной. Если нужно добавить к существующим (верификация

  • SPF, например) — используйте dns_patch_record с add=...

Прочие записи (A/MX/CNAME/NS) сохраняются.

Args: fqdn: Имя домена txtdata: Содержимое TXT-записи (v=spf1 redirect=_spf.yandex.net) ttl: TTL в секундах (см. dns_set_a) force: Продолжить при наличии CAA/SRV

dns_set_mxA

Задать MX-запись (почтовый сервер) домена.

Заменяет все MX-записи одной. Прочие типы записей в зоне сохраняются. Для нескольких MX за один вызов — используйте dns_set_records.

Args: fqdn: Имя домена exchange: Имя сервера (mx.yandex.net — trailing dot снимается автоматически) preference: Приоритет (меньше = выше) ttl: TTL в секундах (см. dns_set_a) force: Продолжить при наличии CAA/SRV

dns_set_recordsA

Задать несколько типов DNS-записей одним вызовом.

По умолчанию — безопасный merge: типы, отсутствующие в records, сохраняются. replace_all=True — полная замена зоны (как делает голый dns/changeRecords): ВСЕ записи, кроме переданных, будут удалены.

Args: fqdn: Имя домена records: JSON с записями, например: {"A": [{"address": "1.2.3.4"}], "MX": [{"exchange": "mx.yandex.net", "preference": 10}]} replace_all: True — полная замена зоны; по умолчанию False (merge) force: Продолжить при наличии CAA/SRV (будут удалены)

dns_patch_recordA

Частично изменить записи одного типа (add/remove/replace).

Внутри: getData → merge → changeRecords. Прочие типы в зоне не затрагиваются. Удобно для многозначных TXT (SPF + DKIM + verification) и нескольких MX.

  • add — JSON-массив записей для добавления к существующим

  • remove — JSON-массив записей для удаления (match по полям кроме ttl)

  • replace — JSON-массив для полной замены массива этого типа (если задан, add и remove игнорируются)

Примеры: type="TXT", add='[{"txtdata":"google-site-verification=abc"}]' — добавить к существующим TXT-записям type="TXT", remove='[{"txtdata":"v=spf1 include:old.example"}]' — снять старую SPF type="MX", replace='[{"exchange":"mx.yandex.net","preference":10}]' — заменить весь массив MX одной записью

Args: fqdn: Имя домена type: Тип записи (A, AAAA, MX, TXT, CNAME, NS) add: JSON-массив для добавления remove: JSON-массив для удаления replace: JSON-массив для полной замены этого типа force: Продолжить при наличии CAA/SRV

domain_listB

Все домены, привязанные к аккаунту.

domain_addA

Зарегистрировать виртуальный домен (без покупки).

Args: hostname: Имя домена (например: example.com) zone_id: ID доменной зоны (1 = .ru). Получить список: domain_zones

domain_deleteC

Убрать домен из аккаунта.

Args: domain_id: ID домена

domain_zonesB

Доступные доменные зоны (.ru, .com и пр.).

domain_subdomainsA

Все поддомены аккаунта.

Beget не отдаёт здесь www-алиасы, которые сам создаёт к поддомену (www.sub.site.ru к sub.site.ru): их нет ни в этом списке, ни в dns/getData. Записи такого имени смотреть через dns_get — он уходит на фолбэк к родительской зоне.

domain_php_versionB

Текущая версия PHP на домене.

Args: full_fqdn: Полное имя домена (например: site.ru)

domain_change_phpB

Переключить версию PHP для домена.

Args: full_fqdn: Полное имя домена (например: site.ru) php_version: Версия PHP (например: 8.1, 8.2, 8.3)

domain_add_subdomainA

Создать поддомен на базе существующего домена.

subdomain — ТОЛЬКО префикс (blog), без родителя. Родитель задаётся через domain_id (см. domain_list). Полный FQDN (blog.site.ru) будет отклонён.

ВНИМАНИЕ: Beget не создаёт пустую сущность. Сразу после создания у поддомена появляются собственные записи — A на shared-хостинг Beget плюс MX и TXT(SPF) на beget.com. Имя начинает резолвиться на shared-хостинг ДО вашей A-записи, а MX и SPF переживают dns_set_a (тот мерджит зону) и остаются молча. Ответ тула показывает фактически созданные записи в поле records.

Args: subdomain: Имя поддомена (например: blog) domain_id: ID родительского домена

domain_delete_subdomainC

Убрать поддомен.

Args: subdomain_id: ID поддомена

domain_check_to_registerB

Проверка доступности домена для покупки.

Args: hostname: Имя домена (например: example) zone_id: ID доменной зоны period: Период регистрации в годах (по умолчанию 1)

domain_get_directivesC

Пользовательские PHP-директивы домена.

Args: full_fqdn: Полное имя домена (например: site.ru)

domain_add_directivesB

Задать PHP-директивы для домена.

Args: full_fqdn: Полное имя домена directives: JSON-массив директив, например: [{"name": "max_execution_time", "value": "60"}]

domain_remove_directivesB

Снять PHP-директивы с домена.

Args: full_fqdn: Полное имя домена directives: JSON-массив директив, например: [{"name": "max_execution_time", "value": "60"}]

ftp_listC

Все FTP-аккаунты на хостинге.

ftp_addB

Добавить FTP-аккаунт. Итоговый логин: login_suffix.

Args: suffix: Суффикс логина homedir: Домашняя директория (например: site.ru/public_html) password: Пароль FTP

ftp_deleteC

Убрать FTP-аккаунт.

Args: suffix: Суффикс логина FTP

ftp_change_passwordC

Сменить пароль FTP-аккаунта.

Args: suffix: Суффикс логина FTP password: Новый пароль

mail_listB

Почтовые ящики на указанном домене.

Args: domain: Домен (например: site.ru)

mail_createC

Добавить почтовый ящик.

Args: domain: Домен (например: site.ru) mailbox: Имя ящика (часть до @) password: Пароль

mail_change_passwordB

Сменить пароль почтового ящика.

Args: domain: Домен (например: site.ru) mailbox: Имя ящика (часть до @) password: Новый пароль

mail_deleteC

Убрать почтовый ящик.

Args: domain: Домен mailbox: Имя ящика (часть до @)

mail_change_settingsB

Настройки почтового ящика: спам-фильтр и пересылка.

Args: domain: Домен mailbox: Имя ящика spam_filter_status: 1 = включить спам-фильтр, 0 = выключить (-1 = не менять) spam_filter: Уровень фильтрации (-1 = не менять) forward_mail_status: no_forward / forward / forward_and_delete (пусто = не менять)

mail_forward_addB

Включить пересылку на указанный адрес.

Args: domain: Домен mailbox: Имя ящика forward_mailbox: Email для пересылки

mail_forward_deleteB

Снять пересылку на указанный адрес.

Args: domain: Домен mailbox: Имя ящика forward_mailbox: Email для удаления из пересылки

mail_forward_listC

Адреса пересылки для ящика.

Args: domain: Домен mailbox: Имя ящика

mail_set_domain_mailC

Назначить catch-all ящик для домена.

Args: domain: Домен domain_mailbox: Имя ящика, на который будет приходить вся почта домена

mail_clear_domain_mailC

Отключить catch-all для домена.

Args: domain: Домен

mail_setup_yandexA

Прописать MX и SPF для Яндекс 360 одним вызовом.

Ставит:

  • MX: mx.yandex.net, preference 10 (заменяет существующие MX)

  • TXT SPF: v=spf1 redirect=_spf.yandex.net (заменяет существующую SPF, прочие TXT — DKIM, верификации — сохраняются)

DKIM Яндекс настраивается отдельно (Я.Почта для домена → DKIM), там выдаётся ключ для mail._domainkey.<домен>. После получения ключа — dns_set_txt на соответствующий поддомен (либо сначала domain_add_subdomain).

Не трогает A-записи, NS и прочие TXT. Если в зоне есть CAA/SRV — потребует force=True (они будут удалены).

Args: fqdn: Имя домена (site.ru) force: Продолжить при наличии CAA/SRV

mail_setup_mailruA

Прописать MX и SPF для Mail.ru для бизнеса одним вызовом.

Ставит:

  • MX: emx.mail.ru, preference 10

  • TXT SPF: v=spf1 redirect=_spf.mail.ru (прочие TXT сохраняются)

DKIM настраивается в панели Mail.ru для бизнеса — ключ кладётся на mailru._domainkey.<домен>.

Не трогает A-записи, NS и прочие TXT. Если в зоне есть CAA/SRV — потребует force=True.

Args: fqdn: Имя домена force: Продолжить при наличии CAA/SRV

mysql_listC

Все базы данных MySQL на аккаунте.

mysql_addC

Добавить базу MySQL. Итоговое имя: login_suffix.

Args: suffix: Суффикс имени БД password: Пароль для доступа к БД

mysql_deleteC

Убрать базу данных MySQL.

Args: suffix: Суффикс имени БД

mysql_change_passwordB

Сменить пароль к базе MySQL.

Args: suffix: Суффикс имени БД password: Новый пароль access: Хост доступа (по умолчанию localhost)

mysql_add_accessB

Открыть доступ к базе MySQL с указанного хоста.

Args: suffix: Суффикс имени БД access: Откуда разрешить доступ (IP, домен, localhost или * для всех) password: Пароль (минимум 6 символов)

mysql_drop_accessB

Отозвать доступ к базе MySQL с указанного хоста.

Args: suffix: Суффикс имени БД access: Хост доступа для удаления (IP, домен, localhost или *)

site_listA

Все сайты аккаунта и связанные с ними домены.

site_addA

Зарегистрировать сайт. В файловой системе появится каталог name/public_html.

Args: name: Имя сайта (латиницей)

site_deleteB

Убрать сайт из аккаунта.

Args: site_id: ID сайта (получить через site_list)

site_link_domainC

Назначить домен для сайта.

Args: site_id: ID сайта domain_id: ID домена

site_unlink_domainC

Снять привязку домена от сайта.

Args: domain_id: ID домена

site_freezeB

Блокировка изменений файлов сайта. Активируется в течение 5-10 минут.

Args: site_id: ID сайта excluded_paths: Пути-исключения, где изменения останутся разрешены

site_unfreezeB

Снять блокировку изменений файлов сайта. Активируется в течение 5-10 минут.

Args: site_id: ID сайта

site_is_frozenC

Статус блокировки файлов сайта.

Args: site_id: ID сайта

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.9/5.0

Scored across 73 tools

Disambiguation3/5

Most resource areas are distinct, but backup tools have confusingly similar names (backup_files_list vs backup_file_list, backup_mysql_list vs backup_mysql_db_list) and DNS offers many overlapping set/patch variants. Descriptions help clarify boundaries, but an agent could still misselect among near-duplicates.

Naming Consistency3/5

All names use snake_case, but the pattern mixes resource_action (domain_delete), verb_resource (toggle_ssh), noun-only (account_info), and inconsistent verbs (add/create/set/change/remove/drop). It remains readable but not predictably uniform.

Tool Count1/5

73 tools far exceeds the typical 3-15 range and the 50+ threshold for extreme mismatch. While the hosting domain is broad, many granular operations could be consolidated without losing functionality.

Completeness4/5

Coverage spans domains, DNS, mail, FTP, MySQL, sites, cron, backups, stats, and account management, giving strong lifecycle support. Gaps include SSL certificate management and direct file-manager operations, but most core hosting workflows are present.

Maintenance

ActivityMaintained
ResponsivenessNo issues