AWS CloudTrail MCP Server

официальный

Этот MCP-сервер AWS Labs для CloudTrail позволяет вашим ИИ-агентам запрашивать активность учетной записи AWS для расследований безопасности, аудита соответствия и оперативного устранения неполадок.

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

AWS Labs CloudTrail MCP-сервер

Этот MCP-сервер (Model Context Protocol) для CloudTrail от AWS Labs позволяет вашим AI-агентам запрашивать информацию об активности в аккаунте AWS для расследований безопасности, аудита соответствия и оперативного устранения неполадок. Он предоставляет всесторонний доступ к событиям CloudTrail и аналитике CloudTrail Lake, позволяя агентам отслеживать вызовы API, анализировать активность пользователей и выполнять расширенный анализ безопасности. Сервер обеспечивает AI-агентам бесшовный доступ к данным CloudTrail через стандартизированные интерфейсы MCP, устраняя необходимость в пользовательских интеграциях API и предоставляя мощные возможности для получения инсайтов безопасности и аудита.

Инструкции

MCP-сервер CloudTrail предоставляет специализированные инструменты для решения распространенных сценариев безопасности и эксплуатации, включая поиск событий, анализ активности пользователей, отслеживание вызовов API и расширенную аналитику CloudTrail Lake. Каждый инструмент объединяет один или несколько API CloudTrail в операции, ориентированные на выполнение задач.

Возможности

Поиск событий — поиск событий CloudTrail по различным атрибутам, включая имя пользователя, название события, имя ресурса и другие. Предоставляет доступ к событиям управления за последние 90 дней для расследований безопасности и устранения неполадок.

Аналитика CloudTrail Lake — выполнение расширенных SQL-запросов к CloudTrail Lake для сложной аналитики, фильтрации и агрегации. Поддерживает SQL-синтаксис, совместимый с Trino, для всестороннего анализа событий.

Анализ активности пользователей — отслеживание и анализ действий пользователей в сервисах AWS путем фильтрации событий по имени пользователя, ключу доступа или другим атрибутам, связанным с пользователем.

Отслеживание вызовов API — мониторинг конкретных вызовов API и их шаблонов в вашей среде AWS для целей безопасности и соответствия.

Управление хранилищами данных событий — просмотр и исследование доступных хранилищ данных событий CloudTrail Lake для понимания источников данных и возможностей.

Предварительные требования

  1. Аккаунт AWS с включенным CloudTrail. История событий CloudTrail включена по умолчанию. Для расширенных SQL-запросов необходимо включить CloudTrail Lake.
  2. Этот MCP-сервер можно запускать только локально на том же хосте, что и ваш LLM-клиент.
  3. Настройте учетные данные AWS с доступом к сервисам AWS
    • Вам нужен аккаунт AWS с соответствующими разрешениями (см. необходимые разрешения ниже)
    • Настройте учетные данные AWS с помощью aws configure или переменных окружения

Доступные инструменты

Инструменты для событий CloudTrail

  • lookup_events — поиск событий CloudTrail по различным критериям, таким как имя пользователя, название события, имя ресурса и т. д. Предоставляет доступ к событиям управления за последние 90 дней с поддержкой постраничного вывода

Инструменты для аналитики CloudTrail Lake

  • lake_query — выполнение SQL-запросов к CloudTrail Lake для сложной аналитики и фильтрации. Поддерживает SQL-синтаксис, совместимый с Trino, для расширенного анализа
  • list_event_data_stores — просмотр доступных хранилищ данных событий CloudTrail Lake с их возможностями и селекторами событий
  • get_query_status — получение статуса запроса CloudTrail Lake для мониторинга длительных запросов
  • get_query_results — получение результатов завершенного запроса CloudTrail Lake с поддержкой постраничного вывода для больших наборов результатов

Необходимые разрешения IAM

  • cloudtrail:LookupEvents
  • cloudtrail:ListEventDataStores
  • cloudtrail:GetEventDataStore
  • cloudtrail:StartQuery
  • cloudtrail:DescribeQuery
  • cloudtrail:GetQueryResults

Установка

Вариант 1: Python (UVX)

Предварительные требования

  1. Установите uv с Astral или из README на GitHub
  2. Установите Python с помощью uv python install 3.10

Установка в один клик

KiroCursorVS Code
Add to KiroInstall MCP ServerInstall on VS Code

Конфигурация MCP (Kiro, Cline)

  • Для Kiro обновите конфигурацию MCP Kiro MCP (~/.kiro/settings/mcp.json)
  • Для Cline нажмите на опцию «Configure MCP Servers» на вкладке MCP
{
  "mcpServers": {
    "awslabs.cloudtrail-mcp-server": {
      "autoApprove": [],
      "disabled": false,
      "command": "uvx",
      "args": [
        "awslabs.cloudtrail-mcp-server@latest"
      ],
      "env": {
        "AWS_PROFILE": "[The AWS Profile Name to use for AWS access]",
        "FASTMCP_LOG_LEVEL": "ERROR"
      },
      "transportType": "stdio"
    }
  }
}

Обратитесь к документации AWS для создания и управления профилем учетных данных

Вариант 2: Образ Docker

Предварительные требования

Соберите и установите образ Docker локально на том же хосте, что и ваш LLM-клиент

  1. Установите Docker
  2. git clone https://github.com/awslabs/mcp.git
  3. Перейдите в подкаталог cd src/cloudtrail-mcp-server/
  4. Выполните docker build -t awslabs/cloudtrail-mcp-server:latest .

Установка Cursor в один клик

Install CloudTrail MCP Server

Конфигурация MCP с использованием образа Docker (Kiro, Cline)

  {
    "mcpServers": {
      "awslabs.cloudtrail-mcp-server": {
        "command": "docker",
        "args": [
          "run",
          "--rm",
          "--interactive",
          "-v ~/.aws:/root/.aws",
          "-e AWS_PROFILE=[The AWS Profile Name to use for AWS access]",
          "awslabs/cloudtrail-mcp-server:latest"
        ],
        "env": {},
        "disabled": false,
        "autoApprove": []
      }
    }
  }

Обратитесь к документации AWS для создания и управления профилем учетных данных

Участие в разработке

Приветствуется участие в разработке! См. CONTRIBUTING.md в корне монорепозитория для получения руководящих указаний.

Отзывы и проблемы

Мы ценим ваши отзывы! Отправляйте свои отзывы, запросы на функции и сообщения об ошибках через GitHub issues с префиксом cloudtrail-mcp-server в заголовке.