API VEGA

falcon-mcp

falcon-mcp — сервер Model Context Protocol (MCP), который соединяет AI-агентов с платформой CrowdStrike Falcon, обеспечивая интеллектуальный анализ безопасности в ваших агентских рабочих процессах. Он предоставляет программный доступ к ключевым возможностям безопасности — включая обнаружения, информацию об угрозах и управление хостами — закладывая основы для продвинутых операций безопасности и автоматизации.

Важно

🚧 Публичный предпросмотр: Этот проект в настоящее время находится в публичном предпросмотре и активно разрабатывается. Возможности и функциональность могут измениться до стабильного выпуска 1.0. Мы призываем к исследованию и тестированию, но просим воздержаться от продакшн-развертываний. Ваши отзывы через GitHub Issues помогут сформировать финальный релиз.

Документация

Полная документация доступна на developer.crowdstrike.com/falcon-mcp.

Модули

ModuleDescription
CoreБазовая связность и информация о системе
Case ManagementУправление жизненным циклом кейсов, прикрепление доказательств, теги и шаблоны
Cloud SecurityКонтейнеры Kubernetes, уязвимости образов, инвентарь активов CSPM, выводы IOM, правила подавления, риски облака и группы облака
Correlation RulesПоиск, создание, обновление и управление NG-SIEM корреляционными правилами
Custom IOAСоздание и управление пользовательскими IOA поведенческими правилами обнаружения и группами правил
Data ProtectionПоиск классификаций Data Protection, политик и образцов контента
DetectionsПоиск, агрегация и анализ обнаружений для понимания вредоносной активности
DiscoverПоиск инвентаря приложений и обнаружение неуправляемых активов
ExclusionsПоиск, создание, обновление и удаление IOA, исключений на основе машинного обучения, видимости сенсора и исключений на основе сертификатов
Firewall ManagementПоиск и управление правилами файервола и группами правил
Host GroupsПоиск, создание, обновление и удаление групп хостов; управление участием в группах
HostsУправление и запрос информации о хостах/устройствах
Identity ProtectionРасследование объектов и анализ защиты идентичности
IntelИсследование акторов угроз, IOC и разведданных
IOCПоиск, создание и удаление пользовательских индикаторов компрометации
NGSIEMВыполнение CQL-запросов к Next-Gen SIEM
PoliciesПоиск, создание, обновление и удаление политик предотвращения, обновления сенсора, файервола, управления устройствами, реагирования и обновления контента; управление назначением в группы хостов, включение/выключение и приоритет
QuarantineПоиск записей карантина, предпросмотр количества действий и выпуск, отмена выпуска или удаление quarantined файлов
Real Time ResponseАудит, сводка и запуск рабочих процессов triage RTR только для чтения
ReconПоиск уведомлений Falcon Intelligence Recon (recon alerts), правила мониторинга и записи exposed-data для dark web, утечек учетных данных и typosquatting
Scheduled ReportsУправление запланированными отчетами и загрузка файлов отчетов
Sensor UsageДоступ к данным об использовании сенсоров и их анализ
ServerlessПоиск уязвимостей в serverless-функциях
ShieldПостроение безопасности SaaS, проверки, уведомления и инвентаризация приложений
SpotlightУправление и анализ данных об уязвимостях и оценках безопасности

См. обзор модулей (Module Overview) для необходимого API-профиля, доступных инструментов и ресурсов FQL.

Быстрый старт

Установка

Используя uv (рекомендовано)
uv tool install falcon-mcp
Используя pip
pip install falcon-mcp

Конфигурация

Установите необходимые переменные окружения (или используйте файл .env — см. Руководство по конфигурации):

export FALCON_CLIENT_ID="your-client-id"
export FALCON_CLIENT_SECRET="your-client-secret"
export FALCON_BASE_URL="https://api.crowdstrike.com"

Запуск

falcon-mcp

См. руководство Getting Started по полной установке и конфигурации.

Интеграция с редактором

Использование uvx (рекомендуется)

{
  "mcpServers": {
    "falcon-mcp": {
      "command": "uvx",
      "args": [
        "--env-file",
        "/path/to/.env",
        "falcon-mcp"
      ]
    }
  }
}

С выбором модулей

{
  "mcpServers": {
    "falcon-mcp": {
      "command": "uvx",
      "args": [
        "--env-file",
        "/path/to/.env",
        "falcon-mcp",
        "--modules",
        "detections,hosts,intel"
      ]
    }
  }
}

Docker

{
  "mcpServers": {
    "falcon-mcp-docker": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--env-file",
        "/full/path/to/.env",
        "quay.io/crowdstrike/falcon-mcp:latest"
      ]
    }
  }
}

См. руководство Usage guide для всех опций командной строки, конфигурации модулей и использования библиотеки.

Контейнерное использование

# Скачать последнюю версию образа
docker pull quay.io/crowdstrike/falcon-mcp:latest

# Запуск с использованием .env файла (stdio транспорт)
docker run -i --rm --env-file /path/to/.env quay.io/crowdstrike/falcon-mcp:latest

# Запуск с потоковым-http транспортом (добавьте --api-key, когда порт доступен вне localhost)
docker run --rm -p 8000:8000 --env-file /path/to/.env \
  quay.io/crowdstrike/falcon-mcp:latest \
  --transport streamable-http --host 0.0.0.0 --api-key your-secret-key

Предупреждение

HTTP-транспorts по умолчанию не требуют аутентификации. Привязка к не-циклому адресу (--host 0.0.0.0) открывает неаутентифицированный сервер, которым может управлять любой, кто может обратиться к порту, используя ваши учетные данные CrowdStrike. Держите привязку по умолчанию к локальному адресу и указывайте --api-key всякий раз, когда вы привязываетесь шире.

Управляемые рантаймы, такие как AWS Bedrock AgentCore и Google Cloud Run, размещаются за своим собственным уровнем сетевой защиты, поэтому это не относится к ним. См. Руководство по конфигурации.

См. Руководство по развёртыванию в Docker для сборки локально, пользовательских портов и продвинутых конфигураций.

Динамический режим

Запуск большого числа модулей одновременно увеличивает размер контекстного окна, которое должен держать каждый AI-клиент. Динамический режим заменяет полный набор инструментов на три инструмента — falcon_list_enabled_tools, чтобы увидеть каждый инструмент, который обслуживает сервер, falcon_search_tools для поиска параметров инструмента по требованию и falcon_execute_tool для его выполнения — поэтому агенты загружают только те схемы, которые им действительно необходимы.

falcon-mcp --dynamic
# или: FALCON_MCP_DYNAMIC=true

См. руководство Dynamic Mode для полного цикла discover → execute и связанных с ним компромиссов.

Ограничение того, что сервер может делать

--modules — это режим «всё или ничего» для каждого модуля: включение одного модуля, чтобы получить его инструменты поиска, также открывает все инструменты, которыми обладает модуль, для которого он не включён. Три настройки инструментов позволяют сузить поверхность.

# Сервер только для расследований: регистрируются только инструменты для чтения
falcon-mcp --read-only

# Сделать доступными ровно два инструмента, ничего больше
falcon-mcp --tools falcon_search_detections,falcon_search_hosts

# Сохранить модуль, удалить один инструмент
falcon-mcp --modules hostgroups --exclude-tools falcon_delete_host_groups

# Все инструменты из detections плюс один инструмент из модуля, который не включён
falcon-mcp --modules detections --tools falcon_search_applications
ФлагПеременная окруженияЭффект
--read-onlyFALCON_MCP_READ_ONLYРегистрирует только инструменты для чтения
--toolsFALCON_MCP_TOOLSРазрешённый список имён инструментов, добавляемых к включённым модулям
--exclude-toolsFALCON_MCP_EXCLUDE_TOOLSДозволенный список запретённых инструментов

Имена инструментов — это имена с префиксом falcon_, которые отображает ваш клиент. Не распознаваемое имя вызывает прекращение запуска, вместо того чтобы быть проигнорированным, поэтому опечатка в deny-list не может незаметно оставить инструмент доступным.

Составление опций

--tools является добавочным, а не фильтром сужения. Он предоставляет отдельные инструменты поверх того, что уже включено через

--modules:

  • --tools X сам по себе регистрирует только X — модули по умолчанию не загружируются.

  • --modules detections --tools X регистрирует все инструменты из detections плюс X, даже если X принадлежит модулю, который не включён. Этот модуль вносит только X, а не всю поверхность, и falcon_list_enabled_modules не перечисляет его. falcon_list_enabled_tools перечисляет X — он сообщает о доступных инструментах, поэтому это надёжный ответ на вопрос «доступна ли эта функциональность здесь?»

Чтобы вычесть инструмент, используйте --exclude-tools или --read-only. Все четыре параметра работают вместе и разрешаются в фиксированном порядке:

  • --exclude-tools удаляет инструмент безусловно, даже если он назван в --tools.

  • --read-only удаляет все инструменты для записи безусловно, даже если они названы в --tools.

  • --tools добавляет названные инструменты, обходя модульную защиту.

  • --modules определяет, какие инструменты являются кандидатами по умолчанию.

Поскольку первые две правила всегда побеждают, безопасно устанавливать как база: --read-only и --exclude-tools. Комбинация их с добавочным --tools не может расширить доступ сверх них. Пример:

falcon-mcp --read-only --exclude-tools falcon_execute_rtr_read_only_command

Фильтрация относится и к динамическому режиму — скрытый инструмент отсутствует в результатах falcon_search_tools и отклонён falcon_execute_tool. Поскольку динамический режим распределяет по имени, а не регистрирует инструменты по отдельности, такое отклонение формулирует факт существования инструмента, но конфигурация сервера скрывает его и указывает единственное ответственное правило, чтобы агент сообщал об отключённом инструменте как отключённом, а не как несуществующем.

falcon_list_enabled_tools содержит поле filters_active в любом режиме, когда правило активно. Журнал запуска сообщает, какие правила активны и сколько инструментов было удержано --read-only и --exclude-tools, чтобы вы могли подтвердить применённое развертывание. Запускайте с --debug, чтобы увидеть удержанные инструменты по именам.

Эти опции фильтруют инструменты, а не ресурсы. Руководство по FQL для скрытого инструмента остаётся доступным — руководства являются статической документацией по полям и не содержат данные арендатора.

Варианты развертывания

Внесение вклада

# Клонирование и установка
git clone https://github.com/CrowdStrike/falcon-mcp.git
cd falcon-mcp
uv sync --all-extras

# Запуск тестов
uv run pytest

Важно

Этот проект использует Conventional Commits для автоматизированных релизов. Пожалуйста, соблюдайте формат сообщений коммитов, указанный в нашем Guide for Contributions.

Разработка документации

Реестры

falcon-mcp публикуется в публичных MCP-каталогах для обнаружения и быстрой настройки в совместимых клиентах:

Лицензия

Этот проект распространяется по лицензии MIT — смотрите файл LICENSE для подробностей.

Поддержка

Это сообщество-ориентированный проект с открытым исходным кодом. Хотя он не является официальным продуктом CrowdStrike, он активно поддерживается CrowdStrike и совместно с сообществом разработчиков с открытым исходным кодом.

Для получения дополнительной информации смотрите наш файл SUPPORT.