API VEGA

almxppmcp

npx launcher для ALM XPP Cloud MCP — агент AI для Dynamics 365 Finance & Operations, exposing 90 инструментов через MCP.

Опубликован в официальном реестре MCP как

io.github.alimbenhelal-pro/alm-xpp-mcp.

Сервер отвечает из заранее построенного индекса стандартной кодовой базы D365 F&O:

200K+ объектов AOT, 1.3M+ фрагментов кода, 25M+ перекрестных ссылок и

24M+ переводов лейблов — 392K идентификаторов лейблов отрисованы на 74 языках.

Почему индекс, а не универсальная модель

Общая модель отвечает на вопросы по X++ из того, что она запомнила во время обучения. Этот сервер отвечает

из конкретной, версионной копии стандартного кода D365:

Что это означает на практике
Известный релизОблачный MCP отвечает из релиза, который сервер индексировал, а не из вашего. Текущая загрузка сообщается через GET /mcp — проверьте её перед тем, как полагаться на версию ответа.
Ваша собственная версияИндексирование точной сборки вашей платформы — задача Local MCP: он запускается рядом с вашим D365 SDK и индексирует PackagesLocalDirectory на той машине. Облачный MCP не может сделать это — он никогда не видит бинарники вашей платформы.
ПрослеживаемостьКаждый результат содержит AOT-объект и модель, из которой он взят, чтобы вы могли открыть её в Visual Studio и проверить.
Ваши расширенияУкажите D365-Custom-Model-Path на ваши метаданные или позвольте индексации вашего репозитория в Azure DevOps — ваш собственный код будет искаться наряду со стандартным.
Нет обучения на вашем кодеВаши метаданные индексируются на сессию и используются для ответов на ваши вызовы. Они не используются для обучения чего-либо.

Три сервера, три роли

По D365 F&O встречаются три разных MCP-сервера. В этом_README их называют так:

ИмяЧто это такоеКак получить
Cloud MCPХостированный сервер ALM XPP: 90 инструментов поверх индексированного кода D365этот пакет — npx almxppmcp
Local MCPРаботает на вашем локальном ПК, рядом с D365 SDK: 121 инструмент, 36 из которых записывают AOT-файлы, компилируют X++, синхронизируют базу данных. Это единственный сервер, который может индексировать точную сборку вашей платформы, читая PackagesLocalDirectory на той машинеотдельно лицензируемый компонент, свяжитесь с alim@almxpp.com
Environment MCPMCP-сервер Microsoft Dynamics 365 ERP, доступный самой средой F&O, обслуживает данные в реальном временивключён внутри D365FO, затем подключается напрямую из VS Code

Этот npm-пакет охватывает только Cloud MCP. Local MCP лицензируется отдельно, а Environment MCP — это Microsoft's — ваш клиент подключается к нему самостоятельно.

Требования

  • API-токен — получите на панели управления

  • Node.js >= 18, только если вы используете запускатель npx, описанный далее


Конфигурация клиента MCP

Облачный MCP — это потоковый HTTP MCP-сервер по адресу https://api.almxpp.com/mcp, аутентификация осуществляется через заголовок

X-API-Key. Любой клиент, который работает по HTTP, подключается напрямую — без Node.js, без launcher.

Вызовы инструментов обслуживаются только на api.almxpp.com. almxpp.com и www.almxpp.com хостят сайт;

на отправленный туда JSON-RPC POST возвращается отказ с указанием верного URL. Только хост меняется —

ваш API-токен и заголовки остаются теми же.

VS Code / GitHub Copilot — .vscode/mcp.json

{
  "servers": {
    "almxppmcp": {
      "type": "http",
      "url": "https://api.almxpp.com/mcp",
      "headers": {
        "X-API-Key": "YOUR_TOKEN"
      }
    }
  }
}

Заголовки

X-API-Key — единственный обязательный заголовок. Остальные открывают доступ к инструментам, которым нужен ваш контекст —

без них эти инструменты просто сообщат, что они не сконфигурированы.

ЗаголовокРазблокирует
X-API-KeyОбязателен. Ваш API-токен. Authorization: Bearer тоже работает.
D365-Custom-Model-PathАбсолютный путь к вашим метаданным расширения / ISV на вызывающей машине. Аналитические инструменты читают отсюда
D365-Standard-Model-PathАбсолютный путь к PackagesLocalDirectory, используется как справка только для стандартных объектов
DEVOPS_ORG_URLAzure DevOps организация, например https://dev.azure.com/MyOrg
DEVOPS_PROJECTИмя проекта в Azure DevOps. Требуется вместе с DEVOPS_ORG_URL.
DEVOPS_PATТокен Azure DevOps. Индексирует ваши X++-метаданные из репозитория и читает рабочие элементы.
DEVOPS_REPOРепозиторий, который хранит метаданные, когда в проекте несколько
DEVOPS_BRANCHВетка для индексирования, по умолчанию main
DEVOPS_METADATA_PATHПапка внутри репозитория с AOT XML, по умолчанию Metadata
D365FO-UrlБазовый URL живой среды, для инструментов odata_* и dmf_*
D365FO-Tenant-IdДомен Entra этой среды
D365FO-Client-IdПриложение Entra, зарегистрированное в D365FO в разделе Microsoft Entra applications
D365FO-Client-SecretСекрет этого приложения
AppInsights-Workspace-IdРабочая область Log Analytics, для инструментов appinsights_*
AppInsights-Tenant-IdДомен Entra этой рабочей области
AppInsights-Client-IdПриложение Entra с правами Log Analytics Reader в рабочей области
AppInsights-Client-SecretСекрет этого приложения

Кредиты для живой среды и телеметрии можно также задать на сессию командой

d365fo_set_connection и appinsights_set_connection, чтобы они никогда не попадали в конфигурационный файл.

examples/vscode-mcp.full-headers.json сводит всё воедино

и держит секреты вне файла, запрашивая их через VS Code inputs.


Запускатель npx

Некоторые клиенты работают только через stdio. Команда almxppmcp охватывает этот случай: она считывает ваш токен, отправляет его как

заголовок X-API-Key и передает трафик на Cloud MCP через stdio. У него нет зависимостей

только один файл поверх того, что уже предоставляет Node 18.

npx almxppmcp --api-key YOUR_TOKEN

или задайте переменную окружения:

export ALMXPPMCP_API_KEY=YOUR_TOKEN
npx almxppmcp

--api-key и ALMXPPMCP_API_KEY — два способа передачи токена ** Launcher**.

В любом случае он попадет на сетевой слой как HTTP- заголовок X-API-Key — тот же токен, на другом уровне.

VS Code, если вам больше по душе запускатель — .vscode/mcp.json

{
  "servers": {
    "almxppmcp": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "almxppmcp", "--api-key", "YOUR_TOKEN"]
    }
  }
}

Cursor — .cursor/mcp.json

{
  "mcpServers": {
    "almxppmcp": {
      "command": "npx",
      "args": ["-y", "almxppmcp", "--api-key", "YOUR_TOKEN"]
    }
  }
}

Claude Desktop — claude_desktop_config.json

{
  "mcpServers": {
    "almxppmcp": {
      "command": "npx",
      "args": ["-y", "almxppmcp", "--api-key", "YOUR_TOKEN"]
    }
  }
}

Подсказка: замените YOUR_TOKEN на токен, показанный на вашей панели управления. Установите его как переменную окружения, чтобы не хранить его в коде

(ключ верхнего уровня — mcpServers для Cursor и Claude Desktop, servers — для VS Code):

"mcpServers": {

"almxppmcp": { "command": "npx", "args": ["-y", "almxppmcp"], "env": { "ALMXPPMCP_API_KEY": "YOUR_TOKEN" } } } }


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

ПеременнаяОписание
ALMXPPMCP_API_KEYВаш API-токен (альтернатива --api-key)
ALMXPPMCP_SERVER_URLПереопределение точки входа MCP (по умолчанию: https://api.almxpp.com/mcp)

Какие инструменты доступны?

Облачный MCP открывает 90 инструментов в 14 категориях, перечисленных ниже.

Локальный MCP содержит 85 из них, не зависящих от облачного индекса, плюс 36 дополнительных, которые должны

работать рядом с вашей средой D365 (построение, развёртывание, синхронизация базы данных, запись в рабочие области) — всего 121 инструмент на той стороне.

Вместе оба сервера образуют 126 различных инструментов.

КатегорияИнструментовНазвания
Поиск5search_d365_code, search_labels, batch_search, federated_search, search_context_docs
Получение6get_object_details, list_objects, list_custom_model_objects, get_object_context, compare_objects, get_menu_item_info
Отношения & Влияние11find_related_objects, find_references, find_extensions, get_relation_graph, find_entity_for_table, find_callers, find_change_impact, find_event_handlers, find_relation_path, find_similar_implementations, trace_field_lineage
Качество & Аналитика7validate_best_practices, detect_performance_issues, find_error_patterns, fix_best_practice_violations, recommend_extension_strategy, suggest_edt, validate_object_naming
Безопасность & Лицензирование4trace_security_chain, trace_role_license_tree, get_security_coverage_for_object, generate_security_report
Генерация кода8generate_unit_test, suggest_refactoring, generate_diagram, generate_query, create_aot_object, generate_data_entity, generate_xpp_form, generate_xpp_template
Функциональная область2generate_fdd, explain_workflow
Дифференциаторы2analyze_upgrade_impact, map_business_process
Обновления & Примечания к релизам6resolve_client_profile, save_client_profile, list_release_note_inputs, prepare_release_note_context, generate_release_note_document, diff_model_versions
Живые окружения5d365fo_set_connection, d365fo_clear_connection, odata_export_entity, odata_upsert_rows, get_data_entity_info
Миграция данных7dmf, dmf_create_data_project, dmf_apply_entity_filter, dmf_import_file, dmf_export_package, dmf_get_job_status, dmf_transform_excel
Диагностика производительности4appinsights_set_connection, appinsights_clear_connection, appinsights_query, appinsights_diagnose_slowness
Оркестрация & Отчётность6plan_and_execute, summarize_for_stakeholder, resolve_workspace_roots, resync_devops_index, healthcheck, get_output_page
Azure DevOps17ado_query_workitems, ado_analyze_workitem, ado_list_prs, ado_analyze_pr_impact, ado_gap_fit_analysis, ado_estimate_effort, ado_post_comment, ado_post_pr_comment, ado_create_task, ado_read_attachment, ado_update_workitem, ado_review_xpp_pr, ado_pr_dependency_map, ado_wiki_list, ado_wiki_get_page, ado_wiki_create_or_update_page, ado_wiki_delete_page

Помимо кода поиска значимыми возможностями являются:

  • Влияние обновления — сравнение двух версий D365 относительно ваших собственных изменений и формирование отчета регрессий в Word и PowerPoint.

  • Живые окружения — подключение к работающей среде, чтение и запись реальных записей

по OData, выполнение проектов Data Management.

  • Диагностика производительности — запрос телеметрии Application Insights и получение ранжированного диагноза того, что действительно медленно.

  • Azure DevOps — работа с элементами работы, пул-реквестами, wiki — от анализа до обзора.

Полная ссылка на справочник с параметрами и примерами подсказок: https://www.almxpp.com/docs


Что внутри этого репозитория

Этот репозиторий хранит только клиентскую сторону — запускатель npx, опубликованный в

npm как almxppmcp:

ПутьНазначение
bin/almxppmcp.jsРазрешает API-токен и URL сервера, затем мостит STDIO клиента к Cloud MCP через HTTP — без сторонних пакетов
server.jsonманифест реестра MCP

Сам Cloud MCP — индекс, получение, 90 инструментов и уровень лицензирования — является

закрытым исходным кодом и работает по адресу https://api.almxpp.com/mcp. Запускатель никогда не видит

ваш код: он пересылает запросы по HTTPS с использованием предоставленного вами токена.


Лицензия

MIT