MCP-инструменты
На этой странице представлен список всех инструментов, доступных агентам искусственного интеллекта на сервере MCP в Axelix Master.
В каждой записи указано название инструмента, теги аннотаций, которые он поддерживает, состояние активации, роли, которым разрешён доступ к инструменту, а также краткое описание его функций. Тот же каталог доступен в браузере на экране MCP. Эта страница является основным источником информации для операторов, которые планируют, кому и что можно разрешить.
В списке предполагается, что сервер MCP включён (axelix.master.mcp-server.enabled=true, по умолчанию). Если для этого
свойства установлено значение false, сервер вообще не регистрируется, ни один из перечисленных ниже инструментов
недоступен, а ссылка MCP скрыта в пользовательском интерфейсе. См. Конфигурация сервера
MCP.
Состояние инструмента
Все перечисленные ниже инструменты входят в состав Master и регистрируются на сервере MCP при запуске. Для каждого инструмента нет переключателя, позволяющего включать или отключать его, — каталог фиксирован в сборке. Инструмент становится недоступным только в том случае, если отключён сам сервер MCP или не запущен основной процесс. В каталоге пользовательского интерфейса точка состояния на каждой карточке отражает текущее состояние регистрации: зелёная — если сервер зарегистрировал инструмент, красная — если в данный момент он недоступен.
Аннотационные теги инструмента
Каждый инструмент объявляет четыре логических аннотационных тега, которые сообщают MCP-клиентам, каких побочных эффектов следует ожидать. Теги ниже — это значения, которые объявляют сами инструменты Axelix, это подсказки для вызывающего агента, а не проверки авторизации, которые применяет Master.
- только для чтения — инструмент не изменяет состояние целевого сервиса Spring Boot.
- идемпотентный — многократный вызов инструмента с одними и теми же аргументами даёт тот же эффект, что и однократный вызов.
- разрушительный — инструмент может удалить данные или внести изменения, которые нельзя отменить из интерфейса.
- открытый мир — инструмент обращается за пределы Master и зарегистрированных сервисов Spring Boot.
Доступ по ролям
MCP-фильтр (McpAuthorizationFilter) аутентифицирует агента так же, как интерфейс аутентифицирует сеанс в браузере.
Схемы учётных данных см. в разделе Аутентификация на
MCP-сервере.
Каталог
Приведенный ниже каталог содержит актуальный набор инструментов MCP, поставляемых с Master. Мы активно разрабатываем новые инструменты, и с выходом новых версий список будет пополняться — следите за обновлениями.
Сервисы
Единственный инструмент в этой группе возвращает полный реестр Master по управляемым сервисам Spring Boot. Это отправная
точка для любой задачи, начинающейся с «найди сервис по имени и получи его instanceId» — instanceId нужен каждому
другому инструменту.
См. также: Панель — UI-гайд.
| Название | Имя инструмента | Теги | Разрешённые роли | Описание |
|---|---|---|---|---|
| Список сервисов | getWallboard | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Снимок каждого управляемого сервиса: человекочитаемые имена сервисов с привязкой к instanceId, статус в реальном времени (UP/DOWN), версии Spring Boot/Java, длительность развёртывания, Git commit SHA. |
Инспекция сервиса
Представления только для чтения по одному сервису Spring Boot: его Spring-бины, свойства окружения, бины
@ConfigurationProperties, отчёт об автоконфигурации и зарегистрированные запланированные задачи. Каждый инструмент в
этой группе принимает instanceId, полученный через getWallboard.
См. также: Бины, Окружение, Свойства конфигурации, Условия, Запланированные задачи, Профиль сервиса — UI-гайд.
| Название | Имя инструмента | Теги | Разрешённые роли | Описание |
|---|---|---|---|---|
| Список бинов | getInstanceBeans | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Перечисляет каждый Spring-бин в сервисе с его типом и зависимостями. |
| Свойства | getInstanceEnvironment | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Возвращает полное окружение: свойства приложения, системные свойства и переменные окружения — полезно для вопросов о @Value и @ConditionalOnProperty. |
| Бины @ConfigurationProperties | getInstanceConfigProps | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Возвращает каждый бин @ConfigurationProperties в сервисе с его привязанными значениями. |
@Conditional список | getInstanceConditions | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Отчёт об конфигурации: какие конфигурации Spring Boot и пользовательские конфигурации были применены или пропущены и причина каждого решения. |
| Запланированные задачи | getInstanceScheduledTasks | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Перечисляет cron, fixed-rate, fixed-delay и пользовательские задачи @Scheduled, зарегистрированные в сервисе. |
Кэши
Инспекция каждого кэш менеджера и каждого кэша внутри сервиса Spring Boot, а также удаление записей — либо во всех кэшах всех кэш менеджеров сразу, либо в конкретном именованном кэше внутри выбранного кэш менеджера.
См. также: Кэши.
| Название | Имя инструмента | Теги | Разрешённые роли | Описание |
|---|---|---|---|---|
| Список кэшей | getAllCaches | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Перечисляет каждый кэш менеджер в сервисе и кэши, которыми он владеет, вместе с флагом enabled по каждому кэшу. Отправная точка для любой задачи, связанной с кэшами — сопоставление имени и кэш менеджера, проверки статуса, разрешение неоднозначности. |
| Очистить все кэши | clearAllCaches | только для чтения: false идемпотентный: true разрушительный: true открытый мир: false | EDITORADMINSUPER_ADMIN | Удаляет каждую запись из каждого кэша во всех кэш менеджерах указанного сервиса. Широкая деструктивная операция — предназначена только для явного запроса «очистить все кэши». |
| Очистить конкретный кэш | clearSpecificCacheEntity | только для чтения: false идемпотентный: true разрушительный: true открытый мир: false | EDITORADMINSUPER_ADMIN | Удаляет одну запись кэша, идентифицированную по имени кэша внутри конкретного кэш менеджера. Другие записи не затрагиваются. |
Логгеры
Прочитать дерево логгеров сервиса Spring Boot — отдельные логгеры, группы логгеров и набор доступных уровней логирования — и менять уровни во время работы: для одного логгера, для целой группы логгеров или сбросить логгер на значение по умолчанию, заданное приложением.
См. также: Логгеры.
| Название | Имя инструмента | Теги | Разрешённые роли | Описание |
|---|---|---|---|---|
| Доступные уровни логирования | getAvailableLoggingLevels | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Возвращает список уровней логирования, принимаемых сервисом (например, TRACE, DEBUG, INFO, WARN, ERROR, OFF). Используется, чтобы валидировать входные данные перед сменой уровня. |
| Список групп логгеров | getLoggerGroupsFeed | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Перечисляет каждую настроенную группу логгеров с её членами и уровнем, который сейчас установлен на группе. |
| Список логгеров | getLoggersFeed | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Перечисляет каждый отдельный логгер, настроенный в сервисе, вместе с его действующим на данный момент уровнем логирования. |
| Найти логгер | findLoggersByName | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Ищет один или несколько отдельных логгеров по точному или частичному имени. Возвращает сконфигурированный и действующий уровни для каждого совпадения. |
| Найти группу логгеров | findGroupsByName | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Ищет одну или несколько групп логгеров по точному или частичному имени. Возвращает имя группы, уровень и членов-логгеров. |
| Сменить уровень логгера | changeLoggingLevelByLoggerName | только для чтения: false идемпотентный: true разрушительный: true открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Устанавливает уровень логирования у конкретного отдельного логгера. Если не уверены в имени логгера, сначала воспользуйтесь Найти логгер. |
| Сменить уровень логгеров группы | changeLoggingLevelByGroupName | только для чтения: false идемпотентный: true разрушительный: true открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Устанавливает уровень логирования каждому логгеру внутри группы логгеров. Если не уверены в имени группы, сначала воспользуйтесь Найти группу логгеров. |
| Сбросить уровень логгера | resetLoggingLevelByLoggerName | только для чтения: false идемпотентный: true разрушительный: true открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Сбрасывает уровень отдельного логгера на значение по умолчанию, объявленное в конфигурации приложения. Сброс на уровне группы недоступен. |
Инсайты по персистентности
Проблемы персистентности, обнаруженные Axelix в слое доступа к данным приложения. В отличие от всех инструментов выше,
они идентифицируются по координатам сборки приложения — groupId и artifactId (G и A из координаты GAV), оба из
которых обязательны, — а не по instanceId, и читают данные из записанного снимка приложения, а не опрашивают живой
сервис.
См. также: Мониторинг транзакций.
| Название | Имя инструмента | Теги | Разрешённые роли | Описание |
|---|---|---|---|---|
| Профиль транзакций | getApplicationTransactionsProfile | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | Проблемы N+1 ленивой загрузки и in-memory pagination, обнаруженные внутри транзакционных методов приложения (@Transactional, TransactionTemplate и т. д.). При необходимости можно сузить до одного класса (className) или одного метода (className + methodName). |
| Профиль сущностей | getApplicationEntitiesProfile | только для чтения: true идемпотентный: true разрушительный: false открытый мир: false | VIEWEREDITORADMINSUPER_ADMIN | JPA-сущности, которые Axelix сопоставил в приложении, и проблемы маппинга ассоциаций, обнаруженные в каждой из них (eager-загрузка, @ManyToMany на основе списка, cascade REMOVE/ALL, однонаправленный @OneToMany). При необходимости можно сузить до одной сущности через entityName. |
См. также
- Экран каталога MCP — представление того же каталога в браузере только для чтения, с индикаторами состояния по каждому инструменту и всплывающим окном аннотаций.
- Аутентификация на MCP-сервере — как принимаются
учётные данные MCP (
Basic,Bearer) и как личность сопоставляется с ролью. - Роли и полномочия — что защищает каждое полномочие и какая встроенная роль им владеет.
- Настройка MCP-сервера — ключи свойств
axelix.master.mcp-server.*.
Аутентификация
На этой странице объясняется, как на самом деле происходит вход в Axelix Master: какие существуют варианты аутентификации, как устанавливается и проверяется сеанс работы в браузере при каждом запросе, как работает модель ролей и полномочий, ограничивающая доступ к пользовательскому интерфейсу, и как сервер MCP выполняет аутентификацию агентов ИИ.
Что такое Axelix Spring Boot Starter?
Axelix Starter (также известный как ASBS — Axelix Spring Boot Starter) — это Spring Boot starter-зависимость, которая позволяет вашим Spring Boot-сервисам бесшовно интегрироваться с платформой Axelix. Это мост между вашими сервисами и консолью управления Axelix Master.