AJEMS MCP Connector
OfficialAJEMS MCP Connector
Позволяет Claude и ChatGPT отвечать на вопросы о рабочем пространстве AJEMS — и при желании создавать приложения, формы и записи — без входа в AJEMS.
Одно развёртывание обслуживает всех тенантов. Пользователи входят, указывая название своей организации и секретный ключ AJEMS.
Файлы
Файл | Роль |
| Конфигурация, аутентификация, HTTP-транспорт, проверка здоровья, завершение работы |
| Каждый инструмент, который может вызвать ИИ |
| Единственный модуль, который общается с AJEMS API |
| OAuth-рукопожатие, необходимое для Claude и ChatGPT |
| Кэширование для каждого тенанта и ограничение параллелизма восходящих запросов |
| Небольшие общие помощники |
| Пошаговая проверка из 11 шагов |
| Фейковый AJEMS с примерами данных для тестирования без живого рабочего пространства |
Related MCP server: Synapse
Быстрый старт
npm install
cp .env.example .env # set PUBLIC_URL and AJEMS_HOST_TEMPLATE
npm startПроверьте на реальном рабочем пространстве:
node diagnose.js https://mcp.ajems.com <organisation> <secret-key>Или попробуйте вообще без AJEMS:
npm run mock # terminal 1
# set AJEMS_HOST_TEMPLATE=http://localhost:9090/{org}/json_builder
npm start # terminal 2
node diagnose.js http://localhost:8080 testco test-secret-keyСмотрите DEPLOY.md для nginx, TLS, pm2 и настройки.
Инструменты
По умолчанию только чтение. Установите ALLOW_WRITES=true для четырёх инструментов записи.
Инструмент | Назначение |
| Обнаружение — каждое приложение и форма, с флагами чтения/записи |
| Ключи полей, человеческие метки, типы, параметры выпадающих списков |
| Записи с фильтрами, диапазоном дат, выбором полей |
| count / sum / avg / min / max, опционально с группировкой |
| Новое приложение |
| Новая форма; ключи полей генерируются автоматически |
| Одна или несколько записей, вставка с ограниченным параллелизмом |
| Изменение полей существующей записи |
| Поиск по ключевым словам в формах и записях (ChatGPT) |
| Полная информация об одном результате поиска (ChatGPT) |
aggregate_responses вычисляет на сервере. Без него «итог по городам» пришлось бы тянуть тысячи строк в контекст модели и считать вручную — медленно, дорого и неверно после определённого размера.
search и fetch существуют потому, что вне режима разработчика ChatGPT вызывает только инструменты с этими двумя именами и игнорирует всё остальное.
Как обрабатывается вопрос
Claude спрашивает «сколько записей за июль по городам?»:
list_apps_and_forms→ находит формуdescribe_form→ узнаёт, чтоdate_1750943312417— это поле даты, аdropdown_1750943301432содержит городаaggregate_responsesс диапазоном дат иgroup_by→ получает три числаПишет ответ на простом английском
Ключи полей генерируются автоматически (date_1750943312417), поэтому шаг 2 не является необязательным. Описания инструментов сообщают это модели, и она сама выстраивает цепочку вызовов.
Изоляция тенантов
Тенант берётся из сессии и определяется на сервере по bearer-токену
Ни одна схема инструмента не имеет параметра
tenant,orgилиurl— не существует ничего, что модель можно было бы уговорить изменитьajems.js— единственный модуль, отправляющий исходящие запросы, и только на базовый URL этого тенантаКлючи кэша разделены по тенанту и хешу секретного ключа, поэтому тенанты не могут читать чужие кэшированные записи, а ротированный ключ сам истекает
Названия организаций урезаются до символов, безопасных для поддоменов, поэтому запись вида
evil.com/xне может перенаправить сервер куда-либо ещёКаждый вызов инструмента логируется как JSON с тенантом и пользователем
При добавлении инструмента перепроверьте второй пункт.
Тестирование
46 проверок проходят против мока: аутентификация, все 10 инструментов, фильтры, диапазоны дат, запасной вариант created_at, группированная агрегация, массовая вставка, инвалидация кэша после записи, сообщения об ошибках, изоляция тенантов, 20 одновременных пользователей и ограничение скорости.
This server cannot be deployed
Maintenance
Related MCP Connectors
- mcpOAuthcom.formester
Give AI agents access to form submissions — read, search, update, and process file attachments.
- OpenOakOAuthorg.openoak
Secure AI access to OpenOak tasks, notes, and Kanban boards.
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Jurisly workspaces for tasks like drafting invoices, finding hearing dates, and editing documents through natural language.Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables LLM clients to securely read and write Frappe/ERPNext data under a real user's permissions, with audited calls and granular access control.1AGPL 3.0
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to connect to a Flow Master workspace and perform project, task, ticket, board, relationship, tag, and comment operations under the user's own account and permissions.3 npmISC
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to securely connect to a vybeflow tenant for multi-channel messaging operations such as reading inbox tickets, looking up contacts, checking campaign progress, and sending messages under scoped permissions.MIT