Skip to main content
Glama
hiimnit
by hiimnit

alrm-mcp

Servidor MCP para AL ID Range Manager.

Permite que un agente de codificación de IA reserve IDs de objetos AL de la misma manera que lo hace la extensión ALRM de VS Code. Cuando el agente está a punto de crear un nuevo objeto AL, llama a new_object, y la base de datos ALRM compartida en Business Central valida el nombre y devuelve el siguiente ID de objeto libre, de modo que los IDs se mantienen únicos entre todos los que trabajan en la misma extensión.

Herramientas

new_object

Registra un nuevo objeto AL y devuelve su ID asignado.

Parámetro

Tipo

Descripción

appId

UUID

El id de tu extensión app.json

objectType

ver más abajo

Tipo de objeto AL

objectName

cadena, ≤ 30 caracteres

Nombre del objeto, p. ej. ART CU Demo Data

Devuelve el ID del objeto como texto, p. ej. 50061. Si se vuelve a llamar con el mismo nombre, devuelve el mismo ID en lugar de asignar uno nuevo.

Related MCP server: Dynamics 365 Business Central Admin MCP Server

Requisitos

  • Node.js 20 o superior

  • Un entorno de Business Central con la extensión ALRM instalada

  • Permiso para iniciar sesión en ese entorno (consulta Autenticación)

Configuración

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

Para Claude Code puedes añadirlo con un solo comando:

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

Variables de entorno

Las tres son obligatorias — el servidor se cierra inmediatamente con un mensaje que indica cuál falta.

Variable

Descripción

BC_TENANT

Tu inquilino de Microsoft Entra — ya sea el dominio (contoso.com) o el GUID del inquilino.

BC_ENVIRONMENT

El nombre del entorno de Business Central tal como se muestra en el centro de administración de BC, p. ej. Production o Sandbox.

BC_COMPANY

El id de la empresa (un GUID, no el nombre para mostrar). Puedes listarlos en https://api.businesscentral.dynamics.com/v2.0/{BC_TENANT}/{BC_ENVIRONMENT}/api/v2.0/companies.

Estas variables se leen únicamente del bloque env del cliente MCP — no hay soporte para el archivo .env, ya que el servidor normalmente lo lanza el cliente, no un shell.

Dos variables opcionales te permiten apuntar el servidor a tu propio registro de aplicación de Entra en lugar del cliente público predeterminado:

Variable

Predeterminado

Descripción

ALRM_CLIENT_ID

integrado

ID de aplicación (cliente) de un registro de aplicación de cliente público.

ALRM_TENANT

common

Inquilino de autoridad utilizado para el inicio de sesión. Establécelo para restringir el inicio de sesión a un único inquilino.

Autenticación

La primera llamada a una herramienta te inicia sesión mediante el flujo de código de dispositivo OAuth 2.0:

  1. Se abre una pestaña del navegador en https://microsoft.com/devicelogin.

  2. El código de dispositivo se copia al portapapeles y también se imprime en el stderr del servidor por si el portapapeles o el navegador no están disponibles.

  3. Pega el código, completa el inicio de sesión y la llamada a la herramienta continúa.

Después, la caché de tokens se almacena en el almacén de credenciales de tu sistema operativo — Keychain en macOS, DPAPI en Windows, Secret Service/libsecret en Linux — junto con un pequeño archivo de índice en .alrm-cache.json en tu directorio personal. Las sesiones posteriores la reutilizan silenciosamente, incluso al reiniciar el servidor y el editor, por lo que no deberías volver a ver el navegador hasta que expire el token de actualización (aproximadamente 90 días de inactividad).

Para cerrar sesión, elimina .alrm-cache.json y quita la entrada alrm-mcp de tu almacén de credenciales. En macOS:

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

Todavía no existe un comando logout.

Notas de plataforma

En Linux, el servidor se niega a recurrir a almacenar tokens en texto plano. En una máquina sin interfaz gráfica sin Secret Service disponible, el inicio de sesión fallará en lugar de escribir silenciosamente una caché de tokens sin cifrar.

Solución de problemas

El servidor no arranca / el cliente informa de CONNECTION_CLOSED. Casi siempre se debe a una variable de entorno ausente o mal escrita. Ejecútalo directamente para ver el error real, que el cliente MCP oculta:

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

Un servidor sano imprime MCP server running on stdio y espera.

Extension {id} not found! El appId de tu app.json no está registrado en la base de datos ALRM para esta empresa. Registra primero la extensión, usando la extensión de VS Code o directamente en Business Central.

Se abrió un navegador inesperadamente. Ese es el inicio de sesión descrito anteriormente. Debería ocurrir una vez, no en cada llamada — si se repite, la caché de tokens no se está persistiendo; revisa la salida de stderr para ver un mensaje sobre la reutilización del inicio de sesión almacenado.

Desarrollo

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

Luego apunta tu cliente MCP a la compilación local en lugar del paquete publicado:

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

npm run typecheck comprueba los tipos sin emitir. npm run build limpia primero dist/ y también se ejecuta automáticamente en npm pack y 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