Integrations
Supports environment variable configuration for authentication and server settings through .env files, allowing secure storage of Azure credentials and server configuration.
Enables access to source control information for Sentinel resources, including listing and viewing repository details for security content managed through source control.
Referenced as the repository hosting location for the MCP server, allowing users to clone and install the server from GitHub.
Сервер Microsoft Sentinel MCP
Сервер Model Context Protocol (MCP) для Microsoft Sentinel. Этот сервер обеспечивает доступ только для чтения к экземпляру Microsoft Sentinel, включая расширенные запросы, просмотр инцидентов и исследование ресурсов для сред Azure Sentinel. Он предоставляет модульную и расширяемую платформу для операций безопасности и анализа только для наблюдения.
⚠️ ВАЖНОЕ УВЕДОМЛЕНИЕ О БЕЗОПАСНОСТИ ⚠️
ТОЛЬКО ДЛЯ ТЕСТОВЫХ СРЕД : Этот сервер Microsoft Sentinel MCP поддерживает только операции только для чтения и предназначен исключительно для ТЕСТОВЫХ сред. Он не предназначен для подключения к производственным экземплярам Sentinel.
ПРЕДУПРЕЖДЕНИЕ О КОНФИДЕНЦИАЛЬНОСТИ : подключение этого сервера к производственной среде Microsoft Entra ID (Azure AD) или Sentinel может раскрыть конфиденциальные данные пользователя и каталога операторам LLM или публичным LLM. Используйте только с непроизводственными/тестовыми арендаторами или частным LLM с поддержкой MCP.
ПРЕДУПРЕЖДЕНИЕ О БЕЗОПАСНОСТИ : Подключение производственного экземпляра Microsoft Sentinel к публичному LLM представляет значительные риски конфиденциальности и безопасности. Используйте только частные, защищенные среды для производственных операций по безопасности.
✨ Особенности
- Выполнение запросов KQL : запуск и проверка запросов KQL, тестирование с использованием фиктивных данных.
- Управление аналитикой журналов : информация о рабочем пространстве, списки таблиц и схемы
- Инциденты безопасности : список и просмотр подробной информации об инцидентах
- Правила аналитики : список, просмотр и анализ по тактикам/методам MITRE
- Шаблоны правил : доступ к шаблонам и их анализ с помощью фреймворка MITRE
- Запросы на охоту : список, просмотр деталей и анализ по тактике
- Коннекторы данных : список и просмотр сведений о коннекторах
- Списки наблюдения : управление списками наблюдения и их элементами.
- Threat Intelligence : поиск по домену WHOIS и геолокации IP
- Метаданные и контроль исходного кода : список и просмотр сведений о репозитории
- Аналитика ML : доступ к настройкам аналитики ML
- Авторизация : Просмотр назначений ролей RBAC
- Пользователи и группы Entra ID : просмотр сведений о пользователях и группах из Microsoft Entra ID
🚀 Быстрый старт
1. Аутентификация с помощью Azure CLI
Перед использованием сервера MCP необходимо пройти аутентификацию в Azure с учетной записью, имеющей доступ к рабочей области Microsoft Sentinel:
2. Клонировать репозиторий
3. Установка с помощью скрипта PowerShell (рекомендуется)
Используйте предоставленный скрипт установки PowerShell для настройки сервера MCP:
Сценарий будет:
- Проверьте установку Python
- Создать виртуальную среду и установить зависимости
- Создайте файл конфигурации Claude Desktop
- Скопируйте конфигурацию в буфер обмена.
После запуска скрипта вы можете вставить конфигурацию непосредственно в ваш клиент MCP (Claude Desktop, Cursor и т. д.).
4. Используйте MCP-сервер
Сервер MCP будет готов к использованию после того, как вы настроите конфигурацию клиента MCP с соответствующей информацией о рабочем пространстве.
Просто помните, что если вы используете аутентификацию Azure CLI, вам необходимо удалить AZURE_CLIENT_ID
и AZURE_CLIENT_SECRET
из конфигурации клиента MCP.
🧰 Справочник инструментов
Ниже приведены доступные инструменты. Полную документацию см. в каталоге resources/tool_docs/
. Названия и описания инструментов синхронизируются с реестром инструментов сервера MCP, чтобы клиент MCP мог их извлечь.
Инструмент | Категория | Описание |
---|---|---|
entra_id_list_users | Входной идентификатор | Список всех пользователей в Microsoft Entra ID (Azure AD) |
entra_id_get_user | Входной идентификатор | Получить пользователя по UPN или идентификатору объекта из Entra ID |
entra_id_list_groups | Входной идентификатор | Список всех групп в Microsoft Entra ID (Azure AD) |
entra_id_get_group | Входной идентификатор | Получить группу по идентификатору объекта из Entra ID |
sentinel_logs_search | ККЛ | Выполнить запрос KQL к журналам Azure Monitor |
sentinel_query_validate | ККЛ | Локальная проверка синтаксиса запроса KQL |
sentinel_logs_search_with_dummy_data | ККЛ | Тестирование KQL-запроса с фиктивными данными |
sentinel_logs_tables_list | Аналитика журналов | Список доступных таблиц в рабочей области Log Analytics |
sentinel_logs_table_details_get | Аналитика журналов | Получить сведения о таблице Log Analytics |
sentinel_logs_table_schema_get | Аналитика журналов | Получить схему для таблицы Log Analytics |
sentinel_workspace_get | Аналитика журналов | Получить информацию о рабочем пространстве |
sentinel_incident_details_get | Инциденты | Получите подробную информацию о конкретном инциденте Sentinel |
sentinel_incident_list | Инциденты | Список инцидентов безопасности в Microsoft Sentinel |
sentinel_analytics_rule_list | Правила аналитики | Перечислите все правила аналитики с ключевыми полями |
sentinel_analytics_rule_get | Правила аналитики | Получите подробную информацию о конкретном правиле аналитики |
sentinel_analytics_rules_count_by_tactic | Правила аналитики | Подсчет правил аналитики Sentinel по тактике |
sentinel_analytics_rules_count_by_technique | Правила аналитики | Правила аналитики Count Sentinel по методике MITRE |
sentinel_analytics_rule_templates_list | Шаблоны правил | Список всех шаблонов правил аналитики Sentinel |
sentinel_analytics_rule_template_get | Шаблоны правил | Получите конкретный шаблон правила аналитики Sentinel |
sentinel_analytics_rule_templates_count_by_tactic | Шаблоны правил | Шаблоны правил аналитики Count Sentinel по тактике |
sentinel_analytics_rule_templates_count_by_technique | Шаблоны правил | Шаблоны правил аналитики Count Sentinel по методике MITRE |
sentinel_hunting_queries_list | Охота | Список всех запросов Sentinel Hunting с дополнительной фильтрацией |
sentinel_hunting_query_get | Охота | Получите полную информацию о запросе Sentinel по имени или идентификатору |
sentinel_hunting_queries_count_by_tactic | Охота | Количество запросов на охоту Sentinel по тактике |
sentinel_connectors_list | Коннекторы данных | Список соединителей данных |
sentinel_connectors_get | Коннекторы данных | Получить конкретный коннектор данных по идентификатору |
sentinel_watchlists_list | Списки наблюдения | Список всех списков наблюдения Sentinel |
sentinel_watchlist_get | Списки наблюдения | Получить конкретный список наблюдения Sentinel |
sentinel_watchlist_items_list | Списки наблюдения | Перечислите все элементы в списке наблюдения Sentinel |
sentinel_watchlist_item_get | Списки наблюдения | Получить определенный элемент из списка наблюдения Sentinel |
sentinel_domain_whois_get | Угрозы разведки | Получить информацию WHOIS для домена |
sentinel_ip_geodata_get | Угрозы разведки | Получить данные геолокации для IP-адреса |
sentinel_metadata_list | Метаданные | Список всех метаданных Sentinel в текущей рабочей области |
sentinel_metadata_get | Метаданные | Получить сведения о конкретных метаданных Sentinel по идентификатору |
sentinel_source_controls_list | Контроль исходного кода | Список всех элементов управления исходным кодом Sentinel в текущей рабочей области |
sentinel_source_control_get | Контроль исходного кода | Получить сведения о конкретном элементе управления источником Sentinel по идентификатору |
sentinel_ml_analytics_settings_list | Аналитика МО | Список всех настроек аналитики Sentinel ML |
sentinel_ml_analytics_setting_get | Аналитика МО | Получить конкретную настройку аналитики Sentinel ML по имени |
sentinel_authorization_summary | Авторизация | Обобщите назначения ролей Azure RBAC для доступа Sentinel |
log_analytics_saved_searches_list | Сохраненные поиски | Список всех сохраненных поисков в рабочей области Log Analytics |
log_analytics_saved_search_get | Сохраненные поиски | Получите определенный сохраненный поиск из рабочей области Log Analytics |
🛠️ Использование
Установка в Claude Desktop или аналогичные среды
Используйте предоставленный скрипт установки PowerShell для настройки сервера MCP для Claude Desktop или других клиентов, совместимых с MCP:
Сценарий будет:
- Проверьте установку Python
- Создать виртуальную среду и установить зависимости
- Выполнить шаги после установки
- Создайте файл конфигурации Claude Desktop
- Скопируйте конфигурацию в буфер обмена.
После запуска скрипта вы можете вставить конфигурацию непосредственно в ваш клиент MCP (Claude Desktop, Cursor и т. д.). Скрипт генерирует конфигурацию сервера MCP, совместимую с Claude. Помните об этом, если собираетесь использовать другой клиент MCP.
Расширенные параметры установки
Ручная настройка среды
Если вы предпочитаете настроить среду вручную:
- Настроить переменные средыСкопируйте предоставленный шаблон и заполните свои учетные данные Azure:Copy
- Установить зависимости (с uv)Copy
- Альтернативные варианты запуска сервераИспользование интерфейса командной строки MCP:Разработка и горячая перезагрузка:CopyРежим SSE (для IDE):CopyCopy
Пользовательский интерфейс инспектора
Пользовательский интерфейс MCP Inspector доступен по адресу http://127.0.0.1:6274 при работе в режиме разработки ( mcp dev wrapper.py
).
🧩 Развитие
- Ресурсы: Добавьте файлы Python в
resources/
и реализуйте функциюregister_resources(mcp)
. - Инструменты: Добавьте файлы Python в
tools/
и реализуйте функциюregister_tools(mcp)
. Инструменты должны следовать структуре, определенной вdocs/tool-architecture-and-implementation-requirements.md
. - Подсказки: добавьте шаблоны подсказок в
prompts/
для рабочих процессов, управляемых LLM.
Все компоненты в каталогах resources/
, tools/
и prompts/
автоматически обнаруживаются и регистрируются при запуске сервера. Ручной импорт не требуется.
🔐 Аутентификация и переменные среды
Сервер MCP поддерживает любой метод аутентификации, поддерживаемый DefaultAzureCredential
из Azure Python SDK.
Аутентификация субъекта-службы вместо Azure CLI
Настройте регистрацию приложения в Azure и назначьте следующие роли:
Log Analytics Reader
Microsoft Sentinel Reader
Если вы чувствуете себя смелым, вы также можете предоставить регистрации приложения следующие разрешения Microsoft Graph:
User.Read.All
Group.Read.All
Затем используйте следующие переменные среды в файле .env
или конфигурации сервера MCP:
AZURE_TENANT_ID
AZURE_CLIENT_ID
AZURE_CLIENT_SECRET
AZURE_SUBSCRIPTION_ID
AZURE_RESOURCE_GROUP
AZURE_WORKSPACE_NAME
AZURE_WORKSPACE_ID
Шаблон см. в .env.example
.
Аутентификация Azure CLI
Если вы используете аутентификацию Azure CLI, вы можете исключить AZURE_CLIENT_SECRET
и AZURE_CLIENT_ID
из конфигурации.
🐛 Отладка
Включите режим отладки, установив переменную среды MCP_DEBUG_LOG
в true
в файле .env
:
Журналы записываются во временный каталог как sentinel_mcp_server.log
.
📄 Лицензия
Данный проект лицензирован в соответствии с лицензией MIT .
Related MCP Servers
- Python
- Python
- JavaScriptMIT License
- PythonMIT License