MCP4Acumatica
MCP4Acumatica
Отказ от ответственности: Этот проект является независимой интеграцией, созданной сообществом, и не связан с Acumatica, Inc., не одобрен и не поддерживается ею. «Acumatica» является зарегистрированной торговой маркой Acumatica, Inc. Использование названия и API Acumatica осуществляется только в целях совместимости.
Удаленный сервер Model Context Protocol (MCP), который подключает Claude к Acumatica ERP 2025 R2. Работает на Cloudflare Workers с аутентификацией OAuth для каждого пользователя, направленной на ваш экземпляр Acumatica.
Каждый пользователь аутентифицируется со своими собственными учетными данными Acumatica. Его роль в Acumatica определяет, к каким записям он имеет доступ. Сервер MCP дополнительно требует определенную роль Acumatica для доступа, показывает экран согласия и автоматически скрывает конфиденциальные поля, прежде чем данные попадут к модели ИИ.
Возможности
49 инструментов — 38 для просмотра (только чтение) + 6 утилит/обнаружения + 4 для работы со схемой + 1 для записи (создание/обновление клиентов, отключено по умолчанию) (см. Доступные инструменты)
Индивидуальный OAuth — пользователи входят со своими учетными данными Acumatica (или SSO)
Контроль доступа на основе ролей — модель безопасности Acumatica определяет, что видит каждый пользователь
Шлюз доступа — к серверу могут подключиться только те пользователи, которые могут прочитать специально предназначенный для проверки универсальный запрос Generic Inquiry (ограничьте его по своему усмотрению; рекомендуемый способ — роль-маркер, например
MCP Access)Экран согласия — пользователи должны подтвердить обработку данных ИИ перед доступом к инструментам
Скрытие конфиденциальных полей — номера социального страхования, банковские счета, зарплата и другие персональные данные (PII) автоматически скрываются перед отправкой данных с сервера
Ограничение частоты запросов — по умолчанию 3 одновременных запроса и 40 запросов в минуту на пользователя; оба значения можно настроить из консоли администратора. Запрос, который обнаруживает, что все слоты заняты, коротко ждет, пока один не освободится, вместо того чтобы сразу отказать; отказ возвращает структурированный конверт
{ error: "rate_limited", retryAfterSeconds, actionRequired }, сообщающий ИИ точное время ожидания, чтобы не повторять запрос в цикле.Отказ от пагинации — инструменты списков/запросов возвращают структурированный конверт
{ truncated, paginationSupported: false, actionRequired }, когда результаты достигают лимита записей, давая ИИ указание попросить пользователя задать более узкий фильтр, а не вызывать инструмент снова.Структурированный аудит — все вызовы инструментов, события аутентификации и скрытие полей логируются.
Консоль администратора — веб-интерфейс администратора по адресу
/docs/adminдля просмотра логов и управления настройками среды выполнения без повторного развертывания.Долгосрочное хранение логов — хранение логов на базе R2 через Cloudflare Logpush с просмотрщиком логов с возможностью поиска.
Related MCP server: MCP4Acumatica
Архитектура
Claude (claude.ai / Desktop / API)
|
v MCP over streamable-http
+----------------------------------+
| Cloudflare Worker |
| OAuth 2.1 Provider |
| /authorize -> Acumatica login |
| /callback <- Acumatica |
| (access gate + OIDC userinfo) |
| /consent -> AI data consent |
| /token, /register (DCR) |
| /mcp -> McpAgent DO (49 tools)|
+---------------+------------------+
| Bearer token (per-user)
v
Acumatica 25R2 SaaS
Contract-Based REST API
Default/25.200.001Предварительные требования
Node.js >= 18
Аккаунт Cloudflare (тарифный план Workers с поддержкой Durable Objects)
Экземпляр Acumatica 2025 R2 со следующим:
Подключенное приложение (Connected Application), настроенное в SM303010 с потоком OAuth 2.0 Authorization Code (области передаются сервером в запросе, не настраиваются в приложении)
URI перенаправления, указывающий на конечную точку вашего worker'а
/callbackУниверсальный запрос
MCPAccess(SM208000) — тривиальный проверочный GI с включенным Expose via OData; шлюз входа проверяет, может ли пользователь читать его (см. Документацию по архитектуре для подробностей). Имя GI настраивается черезACUMATICA_CANARY_GI.Способ ограничить, кто может читать этот GI — рекомендуется назначать только разрешенным пользователям роль-маркер
MCP Access(SM201005).
Настройка
Существует три пути установки. Все они зависят одних и тех же предварительных требований на стороне Acumatica — сначала выполните их (см. раздел «Настройка Acumatica» ниже), независимо от выбранного пути.
Путь | Лучше всего подходит для | Требуется терминал? |
A. Кнопка «Развернуть в Cloudflare» | Те, кто хочет полностью GUI-установку | Нет |
B. Однострочный установщик | Разработчики, у которых уже есть | Да (одна команда) |
C. Ручная настройка | Те, кто хочет просмотреть каждый шаг | Да |
Путь A — Кнопка «Развернуть в Cloudflare» (без терминала)
Кнопка форкает этот репозиторий в ваш аккаунт GitHub, читает wrangler.jsonc, автоматически создает пространство имен KV и корзину R2, запрашивает секреты и развертывает. Пошагово:
Нажмите кнопку. Cloudflare попросит вас войти (или создать аккаунт) и авторизовать форк GitHub.
Подтвердите привязки. Вас попросят создать пространства имен KV дважды — один раз для привязки
TOKEN_STORE(данные приложения: токены, состояние OAuth, кэш, конфигурация, сессии администратора) и один раз дляOAUTH_KV(используется библиотекой OAuth внутренне). Это ожидаемо: это две разные привязки, которые никогда не обмениваются ключами.⚠️ Дайте двум пространствам имен разные имена (например,
mcp4acumatica-appдляTOKEN_STOREиmcp4acumatica-oauthдляOAUTH_KV). Автоматическое предоставление Cloudflare выводит заголовок по умолчанию из имени Worker'а, поэтому оба поля по умолчанию имеют значениеmcp4acumatica— и создание двух пространств имен с одинаковым названием завершается ошибкой «Cannot provision a KV Namespace with the title … because it already exists.» Если вы уже столкнулись с этой ошибкой, осталось наполовину созданное пространство имен: перейдите в Storage & Databases → KV и удалите осиротевшее пространство именmcp4acumatica, затем повторите попытку с двумя разными именами. (Автоматическое предоставление Cloudflare не может указать обе привязки на одно пространство имен, а конфигурация не может предустановить разные заголовки — поэтому два отдельных пространства имен с разными именами — это правильный путь. Если графический интерфейс продолжает выдавать ошибку, используйте путь установки через терминал ниже:setup.shсоздает одно пространство имен и привязывает к нему обе привязки.)Корзины R2 (
mcp4acumatica-logs,mcp4acumatica-index) создаются таким же образом, но их имена фиксированы вwrangler.jsonc, поэтому они не конфликтуют.Установите секреты. При запросе вставьте:
ACUMATICA_CLIENT_ID— из вашего Подключенного приложения (SM303010)ACUMATICA_CLIENT_SECRET— с того же экранаCOOKIE_ENCRYPTION_KEY— откройте консоль браузера на любой странице и выполните:[...crypto.getRandomValues(new Uint8Array(32))].map(b => b.toString(16).padStart(2,'0')).join('')Скопируйте полученную 64-символьную шестнадцатеричную строку.
ADMIN_SECRET— любой пароль, который вы запомните (защищает консоль/docs/admin). Сгенерируйте его с помощью[...crypto.getRandomValues(new Uint8Array(24))].map(b => b.toString(16).padStart(2,'0')).join(''), если у вас нет предпочтений.
Разверните. Cloudflare подключает форк к Workers Builds и отправляет первое развертывание.
Обновите переменные Acumatica. После завершения развертывания откройте
Workers & Pages → mcp4acumatica → Settings → Variables and Secretsв панели управления Cloudflare и отредактируйте:ACUMATICA_URL(например,https://yourcompany.acumatica.com)ACUMATICA_TENANT(компания для входа)По желанию:
ACUMATICA_MAX_RECORDS,ACUMATICA_CANARY_GI,REDACT_PATTERNS,REDACT_SKIPНажмите Save and Deploy — Cloudflare переразвернет с новыми значениями.
Добавьте URI перенаправления в ваше Подключенное приложение. Теперь ваш worker доступен по адресу
https://mcp4acumatica.<your-account>.workers.dev. Добавьтеhttps://<that-host>/callbackв URI перенаправления на экране SM303010 в Acumatica. (Чтобы использовать собственный домен, см. раздел «Собственный домен» ниже.)Проверьте развертывание. Перейдите по адресу
https://<your-host>/docs/admin/preflight, войдите с помощьюADMIN_SECRETи запустите диагностику предварительной проверки. Она проверяет подключение к Acumatica, конечную точку обнаружения OIDC, учетные данные Подключенного приложения, путь к арендатору и версию API контракта — любая неправильная конфигурация называется по имени.
После этого Claude может подключиться (см. раздел «Подключение Claude» ниже).
Путь B — Однострочный установщик (терминал)
Если у вас уже есть git, node и npm, выполните:
curl -fsSL https://mcp4acumatica.hallboys.com/install.sh | bashЭто клонирует репозиторий, устанавливает зависимости и запускает ./setup.sh. Сценарий установки запросит значения Acumatica, которые вы должны предоставить (URL, арендатор, идентификатор клиента и секрет Подключенного приложения), автоматически сгенерирует криптографические секреты, создаст пространство имен KV и корзину R2, загрузит секреты, развернет и запустит предварительную проверку.
Если вы предпочитаете сначала просмотреть сценарий:
curl -fsSL https://mcp4acumatica.hallboys.com/install.sh -o install.sh
less install.sh # read it
bash install.sh # then runПуть C — Ручная настройка (терминал)
1. Клонирование и установка
git clone https://github.com/hallboys/MCP4Acumatica.git
cd MCP4Acumatica
npm install2. Создание пространства имен KV
npx wrangler kv namespace create TOKEN_STOREЗапомните ID пространства имен из вывода — вы вставите его в wrangler.jsonc на следующем шаге. Тот же ID используется для обеих привязок TOKEN_STORE и OAUTH_KV.
3. Настройка wrangler
wrangler.jsonc отслеживается в репозитории как шаблон развертывания. Отредактируйте его и заполните:
ID пространства имен KV из шага 2 (обе привязки
TOKEN_STOREиOAUTH_KV— один и тот же id)ACUMATICA_URL— URL вашего экземпляра Acumatica (например,https://yourcompany.acumatica.com)ACUMATICA_TENANT— ваша компания/арендатор Acumatica
Чтобы ваши локальные значения не отображались в git status (чтобы вы по-прежнему могли без конфликтов получать обновления):
git update-index --skip-worktree wrangler.jsonc4. Установка секретов
npx wrangler secret put ACUMATICA_CLIENT_ID
npx wrangler secret put ACUMATICA_CLIENT_SECRET
npx wrangler secret put COOKIE_ENCRYPTION_KEY # use `openssl rand -hex 32`
npx wrangler secret put ADMIN_SECRET # any password — protects /docs/admin5. Развертывание
npx wrangler deploy6. Локальная разработка (опционально)
cp .dev.vars.example .dev.vars
# Edit .dev.vars with your Acumatica credentials
npx wrangler devНастройка Acumatica
Эти шаги необходимы независимо от выбранного пути установки. Их нельзя автоматизировать — API Acumatica не предоставляет к ним доступа.
Подключенное приложение (SM303010)
В Acumatica: System > Integration > Connected Applications (SM303010).
Создайте новое Подключенное приложение.
Установите OAuth 2.0 Flow в Authorization Code.
Добавьте URI перенаправления:
https://<your-worker-url>/callback(используйте имя хоста*.workers.devили ваш собственный домен).Запомните Client ID и Client Secret — вы предоставите их как секреты при развертывании.
Здесь нет поля для настройки областей. Области OAuth (
api openid profile email offline_access, включаяoffline_access, который позволяет Acumatica выдавать токены обновления) отправляются сервером MCP в запросе авторизации — они не устанавливаются на Подключенном приложении.
Шлюз доступа: проверочный универсальный запрос (SM208000, SM201005)
Прежде чем пользователь сможет получить доступ к инструментам ИИ, процесс входа выполняет шлюз доступа: он запрашивает тривиальный проверочный Generic Inquiry через OData и проверяет, может ли токен пользователя читать его (200 → разрешено, 403 → запрещено). Сервер никогда не проверяет членство в ролях Acumatica — он только спрашивает «видите ли вы этот один GI?». Вы ограничиваете, кто может читать проверочный GI, как предпочитает ваша модель безопасности; роль-маркер — рекомендованный, самый чистый способ.
Создайте проверочный GI: System > Customization > Generic Inquiry (SM208000) → создайте GI с именем
MCPAccessс любым тривиальным запросом (один столбец из любой таблицы подойдет). Включите Expose via OData.Ограничьте, кто может читать его (рекомендуется: роль-маркер): System > Access Rights > User Roles (SM201005) → создайте роль с именем
MCP Accessбез прав на экраны, назначьте GIMCPAccessтолько этой роли, затем назначьте роль каждому пользователю, который должен иметь доступ к ИИ-ассистенту. Любой другой механизм, контролирующий доступ на чтение OData к GI, также работает.
Имя проверочного GI настраивается через переменную
ACUMATICA_CANARY_GI(по умолчаниюMCPAccess). Отредактируйте ее в панели управления Cloudflare (Variables and Secrets) или вwrangler.jsonc.
Предоставление Generic Inquiry доступа к ИИ (настоятельно рекомендуется)
В зрелом инстансе Acumatica могут быть сотни Generic Inquiries, большинство из которых создано для человеческих экранов (широкие отчётные таблицы, дашборды, разовые запросы). Предоставление всех их ассистенту перегружает его контекст и заставляет выбирать неправильный запрос — и, что хуже, параметризованный GI, доступный через OData, возвращает незаметно неверные данные: при запросе без параметров Acumatica возвращает строки по умолчанию/без фильтрации без ошибки, которую модель не может обнаружить. Шлюз доступа к GI превращает это в opt-in: вы помечаете те GI, которые действительно полезны и корректны для запроса AI-агентом (ExposedToMCP), и модель видит только их.
Шлюз неактивен, пока вы его не настроите — сервер работает, но без реестра ассистент не может обнаруживать GI (acumatica_list_generic_inquiries ничего не возвращает; пользователь всё ещё может запустить GI по точному имени). Настройка даёт ассистенту курируемый набор, который он может безопасно обнаруживать. Включение — это разовый проект настройки Acumatica: включённый в acumatica/, он добавляет пользовательские поля UsrExposedToMCP / UsrAIDescription (GIDesign) и UsrResAIDescription (GIResult), а также изменения формы SM208000; далее следуют фиды GI MCPGIs / MCPGIFields, доступ на чтение фидов для роли MCP Access и пометка GI, которые вы хотите раскрыть. См. docs/generic-inquiries.md.
См. Generic Inquiries для полного обоснования, как решить, какие GI раскрывать, и пошаговой настройки.
Пользовательский домен (необязательно)
Развёртывание даёт вам имя хоста *.workers.dev из коробки. Чтобы подключить фирменное имя хоста:
Через панель Cloudflare:
Workers & Pages → mcp4acumatica → Settings → Domains & Routes → Add. Зона домена должна находиться в вашем аккаунте Cloudflare.Через
wrangler.jsonc: раскомментируйте блокroutesв начале файла, изменитеpatternиzone_name, повторно разверните.
Если вы меняете имена хостов, не забудьте добавить новый https://<host>/callback в URI перенаправления вашего Connected Application в SM303010.
Подключение Claude
Claude.ai / Claude Desktop
Перейдите в Settings > Connectors
Нажмите Add Connector и введите URL:
https://<your-worker-url>/mcpПри первом использовании вы будете перенаправлены на страницу входа в Acumatica
Если ваш аккаунт может читать canary GI (т.е. вам предоставлен доступ), вы увидите страницу согласия с объяснением обработки данных ИИ
После подтверждения согласия Claude получит доступ ко всем 49 инструментам
Claude Code (CLI)
claude mcp add acumatica-erp --transport streamable-http https://<your-worker-url>/mcpAPI (через Anthropic SDK)
При использовании Anthropic API с MCP укажите MCP-клиенту адрес https://<your-worker-url>/mcp. Сервер поддерживает OAuth 2.1 с динамической регистрацией клиентов на /register.
Доступные инструменты
Основные
Инструмент | Описание |
| Запись клиента с контактами, кредитными правилами, балансом |
| Запись поставщика с контактами, условиями, налоговой информацией |
| Заказ на продажу с позициями, итогами, доставкой |
Финансы / Бухгалтерия
Инструмент | Описание |
| AR-счёт с позициями и налоговыми деталями |
| AP-счёт с позициями и связью с PO |
| Пакет журнала GL с деталями по дебету/кредиту |
| AR-платёж с применёнными документами и заказами |
| Поиск по плану счетов GL |
| AP-чек/платёж поставщику с историей |
Запасы и склад
Инструмент | Описание |
| Складская позиция с ценами, количеством на складе, поставщиками |
| Нескладская позиция (услуга, работа, расход) |
| Доступное количество в реальном времени по складам |
| Агрегированные остатки запасов по складам |
| Склад с местами хранения и настройками |
| Значения по умолчанию классификации позиций |
Закупки
Инструмент | Описание |
| PO с позициями, поставщиком, итогами |
| Поступление с полученным количеством и связью с PO |
Проекты
Инструмент | Описание |
| Заголовок проекта, статус, финансы |
| Задача в рамках проекта |
| Строка бюджета с фактом против плана |
| Детали транзакции затрат/доходов проекта |
Обслуживание и выездная работа
Инструмент | Описание |
| Обращение в поддержку с SLA, приоритетом, учётом времени |
| Заказ на выездное обслуживание с деталями и назначениями |
| Запланированное/фактическое время, персонал, затраты/прибыль |
Продажи и CRM
Инструмент | Описание |
| CRM-контакт с адресом, телефоном, владельцем |
| Единая запись потенциального клиента/клиента/поставщика |
| Сделка в воронке продаж с товарами и суммами |
| Маркетинговый лид со статусом и источником |
| Торговый представитель с настройками комиссий |
Отгрузка и выполнение заказов
Инструмент | Описание |
| Отгрузка с упаковками, отслеживанием, фрахтом |
| Счёт-фактура со связью с SO/отгрузкой |
HR и расчёт зарплаты
Инструмент | Описание |
| Сотрудник с контактными и финансовыми настройками |
| Отчёт о расходах с позициями и утверждением |
| Учёт времени с проектом, оплачиваемым/сверхурочным временем |
CRM-активности
Инструмент | Описание |
| Активность электронной почты с от/кому/телом |
| Событие календаря с участниками |
| Общая CRM-активность |
| CRM-задача со связанными активностями |
Утилиты / Обнаружение
Инструмент | Описание |
| Выполнить любую настроенную Generic Inquiry (GI) с фильтрацией |
| Список/поиск любой сущности с OData-фильтрацией, сортировкой, выбором полей |
| Обнаружение полей, типов и под-сущностей для любой сущности |
| Список доступных GI, доступных через OData |
| Вывод схемы полей для GI перед его запуском |
| Очистить кэшированные метаданные при изменении схем |
Совет: Сначала используйте
acumatica_describe_entityдля обнаружения доступных полей, затемacumatica_list_entitiesдля поиска/фильтрации. Для Generic Inquiries используйтеacumatica_list_generic_inquiriesдля поиска имён GI иacumatica_describe_inquiryдля просмотра доступных полей. См. docs/example-prompts.md для примеров использования.
Документация
Подробная документация доступна в папке docs/:
Справочник по инструментам -- Полная спецификация всех 49 инструментов с параметрами и конечными точками
Примеры запросов -- Примеры запросов для Claude и других MCP-клиентов, сгруппированные по сценариям использования
Руководство по OData-фильтрации -- Руководство по параметрам запроса
$filter,$orderby,$select,$expandи$topGeneric Inquiries -- Почему GI ограничены для использования ИИ, какие GI раскрывать и как включить реестр на основе opt-in
Знание схем -- Офлайн-инструменты обнаружения схем для создания интеграций/настроек и как строится индекс схем
Архитектура -- Подробная архитектура, поток OAuth, модель безопасности и проектные решения
Руководство по самостоятельному размещению -- Как запустить MCP-сервер на Node.js или других платформах вне Cloudflare
Обновление Acumatica -- Шаги, которые необходимо предпринять при изменении или обновлении подключённой версии Acumatica
Навыки
Переиспользуемые навыки Claude, поставляемые с этим репозиторием, в skills/:
acumatica-gi-descriptions -- Полный процесс написания ориентированных на ИИ описаний для Generic Inquiries и их результирующих колонок, основанный на собственных метаданных дизайна GI (таблицы, соединения, условия WHERE, колонки), а не на предположениях по именам. Включает платформенные ловушки, из-за которых массовая работа с метаданными GI незаметно идёт неправильно, чек-лист сигналов дизайна, которые стоит искать, и три скрипта для аудита усечений, подготовки брифов по дизайну и валидации черновиков.
Чтобы использовать его, укажите Claude на каталог навыка или скопируйте его в свой собственный .claude/skills/.
Безопасность
Отсутствие сохранённых учётных данных. MCP-сервер не хранит пароли Acumatica. Он использует поток авторизации OAuth 2.0 — пользователи проходят аутентификацию напрямую в Acumatica.
Персональные токены. Токен доступа Acumatica для каждого пользователя хранится в хранилище ключ-значение платформы (Cloudflare KV при развёртывании по умолчанию) и привязан к его имени пользователя. Токены автоматически обновляются по истечении срока действия. Если срок действия токена обновления истёк, соединение переаутентифицируется автоматически, без необходимости ручного переподключения.
Шлюз доступа. Подключаться могут только те пользователи, которые могут читать назначенный канареечный Generic Inquiry. Сервер проверяет возможность чтения GI через OData во время входа (не по членству в ролях); пользователи без доступа видят страницу отказа в доступе. Вы можете ограничить GI любым способом — рекомендуется использовать роль-маркер
MCP Access. Имя GI настраивается черезACUMATICA_CANARY_GI.Экран согласия. После прохождения проверки доступа пользователи должны подтвердить, что их данные будут обработаны внешней AI-моделью, прежде чем сессия MCP активируется.
Редактирование конфиденциальных полей. Ответы инструментов автоматически сканируются на наличие имён конфиденциальных полей (SSN, банковские счета, зарплата, кредитные карты и т.д.), и найденные значения заменяются на
[REDACTED]. Шаблоны настраиваются через переменные окруженияREDACT_PATTERNSиREDACT_SKIP.Доступ на основе ролей. Роль пользователя в Acumatica определяет, какие записи он может читать. Если у пользователя нет доступа к записи в Acumatica, он не сможет получить к ней доступ и через MCP-сервер.
Только чтение. Все текущие инструменты предназначены только для чтения. Никакие данные не создаются, не изменяются и не удаляются.
Ограничение скорости. 3 одновременных запроса, 40 запросов в минуту и ограничение в 1000 записей на запрос по умолчанию — все параметры настраиваются из консоли администратора по адресу
/docs/admin/settingsбез повторного развёртывания. Ограничения применяются к каждому пользователю и учитывают HTTP-вызовы к Acumatica (а не вызовы инструментов). Отклонения возвращают структурированный конверт с точным значениемretryAfterSecondsи регистрируются как событияrate_limit_hit, чтобы вы могли определить, не слишком ли жёсткие лимиты.Отказ от пагинации. Инструменты списка/запроса (
acumatica_list_entities,acumatica_run_inquiry,acumatica_list_generic_inquiries) не поддерживают пагинацию. Когда ответ достигаетACUMATICA_MAX_RECORDS, инструмент возвращает структурированный конверт (truncated: true,paginationSupported: false,actionRequired: "..."), предписывающий AI остановиться и попросить пользователя указать более узкий фильтр, а не извлекать больше записей.Журнал аудита. Все вызовы инструментов, события аутентификации (успешный вход/отказ, принятие согласия) и события редактирования полей регистрируются в виде структурированного JSON. Просмотр с помощью
npx wrangler tail.
Переносимость платформы
Хотя развёртывание по умолчанию нацелено на Cloudflare Workers, обработчики инструментов и основные библиотеки не зависят от платформы. Абстракция хранилища (интерфейс IKeyValueStore + тип AppEnv) отделяет логику инструментов от специфичных для Cloudflare API, что позволяет самостоятельно развёртывать сервер на Node.js с Redis, SQLite или другими бэкендами. Подробнее см. в Руководстве по самостоятельному развёртыванию.
Технологический стек
Среда выполнения: Cloudflare Workers + Durable Objects
MCP:
agentsSDK (McpAgent),@modelcontextprotocol/sdkАутентификация:
@cloudflare/workers-oauth-providerHTTP-маршрутизация: Hono
Язык: TypeScript
Валидация: Zod
Разработка
npx wrangler dev # Start local dev server
npx tsc --noEmit # Type check
npx wrangler tail # Stream live logs from deployed workerЛицензия
Apache 2.0 — Copyright 2026 Hall Boys, Inc.
This server cannot be installed
Maintenance
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
- AlicenseNot gradedqualityAmaintenanceEnables Claude to interact with Acumatica ERP through a remote MCP server with per-user OAuth, role-based access, and 44 tools for querying and managing ERP data.17Apache 2.0
- AlicenseNot gradedqualityCmaintenanceA remote MCP server that connects Claude to Acumatica ERP 2025 R2 with per-user OAuth, role-based access, and sensitive field redaction.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceA remote MCP server that connects Claude to Acumatica ERP with per-user OAuth, role-based access, and sensitive field redaction.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceA remote MCP server that connects Claude to Acumatica ERP 2025 R2 with per-user OAuth authentication, role-based access control, and sensitive field redaction.Apache 2.0
Related MCP Connectors
Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.
Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/NologyAcu/mcp4nologyacu'
If you have feedback or need assistance with the MCP directory API, please join our Discord server