Skip to main content
Glama
hiimnit
by hiimnit

alrm-mcp

MCP-сервер для AL ID Range Manager.

Позволяет ИИ-агенту для написания кода резервировать идентификаторы объектов AL так же, как это делает расширение ALRM для VS Code. Когда агент собирается создать новый объект AL, он вызывает new_object, и общая база данных ALRM в Business Central проверяет имя и возвращает следующий свободный идентификатор объекта — так идентификаторы остаются уникальными для всех, кто работает над одним расширением.

Инструменты

new_object

Регистрирует новый объект AL и возвращает назначенный идентификатор.

Параметр

Тип

Описание

appId

UUID

id из app.json вашего расширения

objectType

см. ниже

тип объекта AL

objectName

string, ≤ 30 символов

Имя объекта, например ART CU Demo Data

Возвращает идентификатор объекта в виде текста, например 50061. При повторном вызове с тем же именем возвращается тот же идентификатор, а не выделяется новый.

Related MCP server: Dynamics 365 Business Central Admin MCP Server

Требования

  • Node.js 20 или новее

  • Среда Business Central с установленным расширением ALRM

  • Разрешение на вход в эту среду (см. Аутентификация)

Конфигурация

{
  "mcpServers": {
    "alrm-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "alrm-mcp@latest"],
      "env": {
        "BC_TENANT": "{tenant}",
        "BC_ENVIRONMENT": "{environment}",
        "BC_COMPANY": "{company}"
      }
    }
  }
}

Для Claude Code вы можете добавить его одной командой:

claude mcp add alrm-mcp \
  --env BC_TENANT=contoso.com \
  --env BC_ENVIRONMENT=Production \
  --env BC_COMPANY=00000000-0000-0000-0000-000000000000 \
  -- npx -y alrm-mcp@latest

Переменные окружения

Все три переменные обязательны — сервер немедленно завершает работу с сообщением, указывающим, какой из них отсутствует.

Переменная

Описание

BC_TENANT

Ваш тенант Microsoft Entra — либо домен (contoso.com), либо GUID тенанта.

BC_ENVIRONMENT

Имя среды Business Central, как показано в центре администрирования BC, например Production или Sandbox.

BC_COMPANY

id компании (GUID, а не отображаемое имя). Список доступен по адресу https://api.businesscentral.dynamics.com/v2.0/{BC_TENANT}/{BC_ENVIRONMENT}/api/v2.0/companies.

Они считываются только из блока env клиента MCP — поддержки файла .env нет, поскольку сервер обычно запускается клиентом, а не из оболочки.

Две необязательные переменные позволяют указать серверу на собственную регистрацию приложения Entra вместо стандартного общедоступного клиента:

Переменная

По умолчанию

Описание

ALRM_CLIENT_ID

built-in

Идентификатор приложения (клиента) для регистрации общедоступного клиентского приложения.

ALRM_TENANT

common

Тенант authority, используемый для входа. Установите его, чтобы ограничить вход одним тенантом.

Аутентификация

Первый вызов инструмента выполняет вход с использованием потока кода устройства OAuth 2.0:

  1. Открывается вкладка браузера на https://microsoft.com/devicelogin.

  2. Код устройства копируется в буфер обмена, а также выводится в stderr сервера на случай, если буфер обмена или браузер недоступны.

  3. Вставьте код, завершите вход, и вызов инструмента продолжится.

После этого кэш токенов сохраняется в хранилище учетных данных операционной системы — Keychain в macOS, DPAPI в Windows, Secret Service/libsecret в Linux — вместе с небольшим файлом индекса .alrm-cache.json в вашем домашнем каталоге. Последующие сеансы используют его молча, в том числе при перезапусках сервера и редактора, поэтому вам не придется снова видеть браузер, пока не истечет срок действия токена обновления (примерно 90 дней бездействия).

Чтобы выйти, удалите .alrm-cache.json и удалите запись alrm-mcp из хранилища учетных данных. В macOS:

rm ~/.alrm-cache.json
security delete-generic-password -s alrm-mcp -a alrm-mcp

Команды logout пока нет.

Примечания по платформам

В Linux сервер отказывается переходить на хранение токенов в открытом виде. На машине без графического интерфейса, где нет Secret Service, вход завершится ошибкой, а не молча запишет незашифрованный кэш токенов.

Устранение неполадок

Сервер не запускается / клиент сообщает CONNECTION_CLOSED. Почти всегда это отсутствующая или неправильно написанная переменная окружения. Запустите его напрямую, чтобы увидеть фактическую ошибку, которую клиент MCP проглатывает:

BC_TENANT=contoso.com BC_ENVIRONMENT=Production BC_COMPANY=... npx -y alrm-mcp@latest

Исправный сервер выводит MCP server running on stdio и ожидает.

Extension {id} not found! appId из вашего app.json не зарегистрирован в базе данных ALRM для этой компании. Сначала зарегистрируйте расширение с помощью расширения VS Code или непосредственно в Business Central.

Браузер открылся неожиданно. Это тот самый вход, описанный выше. Он должен происходить один раз, а не при каждом вызове — если повторяется, значит, кэш токенов не сохраняется; проверьте вывод stderr на наличие сообщения о повторном использовании сохраненного входа.

Разработка

git clone https://github.com/hiimnit/alrm-mcp.git
cd alrm-mcp
npm install
npm run build

Затем укажите вашему клиенту MCP на локальную сборку вместо опубликованного пакета:

{
  "mcpServers": {
    "alrm-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/alrm-mcp/dist/index.js"],
      "env": {
        "BC_TENANT": "...",
        "BC_ENVIRONMENT": "...",
        "BC_COMPANY": "..."
      }
    }
  }
}

npm run typecheck проверяет типы без генерации кода. npm run build сначала очищает dist/, а также автоматически запускается при npm pack и npm publish.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables AI assistants to perform Business Central AL development tasks including language server operations, container management, Git version control, and file system operations for professional BC development workflows.
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to manage Dynamics 365 Business Central environments through natural language commands, including environment, app, session, and extension management.
    45
    9
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Generates AL code for Business Central directly from your IDE, enhancing developer efficiency by providing tools, prompts, and resources for code generation.
    1
  • A
    license
    A
    quality
    C
    maintenance
    Provides AI assistants with complete visibility into AL dependencies and symbols by exposing compiled .app files through the Model Context Protocol, enabling smart object discovery, deep code analysis, and reference tracking for Business Central development.
    6
    447
    80
    MIT

View all related MCP servers

Related MCP Connectors

  • Debug, build, and manage Power Automate cloud flows with AI agents

  • Persistent memory and cross-session learning for AI coding assistants (hosted remote MCP).

  • Odoo ERP for AI agents: hosted OAuth endpoint, gated writes, one endpoint for every instance.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hiimnit/alrm-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server