Skip to main content
Glama
CharlieFng

CloudWatch MCP Server

by CharlieFng

MCP-сервер CloudWatch

Этот упрощенный сервер MCP обеспечивает оптимизированный способ взаимодействия с ресурсами AWS CloudWatch через протокол MCP. Он представляет группы журналов CloudWatch, запросы журналов и оповещения в качестве ресурсов и инструментов.

Функции

  • Перечислите все группы журналов CloudWatch с их метаданными.

  • Список всех оповещений CloudWatch с их текущими состояниями

  • Запрос журналов CloudWatch с помощью CloudWatch Insights по нескольким группам журналов

  • Откройте для себя доступные поля в нескольких группах журналов с общей схемой

  • Автоматический анализ JSON для поля @message в запросах журнала

  • Проверьте, существуют ли определенные группы журналов

  • Получите подробную информацию о конкретных группах журналов

  • Фильтрация сигналов тревоги по состоянию (все сигналы тревоги или только те, которые находятся в состоянии ТРЕВОГА)

  • Извлечь все сохраненные запросы CloudWatch Logs Insights

Related MCP server: CloudWatch Logs MCP Server

Предпосылки

  • Python 3.12 или выше

  • Настроенные учетные данные AWS (через переменные среды, AWS CLI или роль IAM)

  • MCP CLI (версия 0.1.1 или выше)

  • Boto3 (AWS SDK для Python)

Настраивать

  1. Убедитесь, что у вас установлен Python 3.12+.

  2. Создайте виртуальную среду (необязательно, но рекомендуется):

    python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. Установить зависимости:

    pip install -r requirements.txt
  4. Настройте учетные данные AWS, если вы еще этого не сделали:

    aws configure

    Или установите переменные среды:

    export AWS_ACCESS_KEY_ID="your-access-key" export AWS_SECRET_ACCESS_KEY="your-secret-key" export AWS_REGION="your-region"

Структура проекта

  • cloudwatch_server.py — реализация сервера MCP для интеграции CloudWatch

  • aws_cloudwatch.py — упрощенный модуль интеграции AWS CloudWatch

  • test_cloudwatch.py — утилита командной строки для тестирования интеграции CloudWatch

Запуск сервера

Запустите MCP-сервер:

python cloudwatch_server.py

Или с помощью MCP CLI:

mcp run cloudwatch_server.py

Использование сервера MCP

Ресурсы

Сервер предоставляет следующие ресурсы:

  • cloudwatch://log-groups — список всех групп журналов CloudWatch

  • cloudwatch://log-groups/{log_group_name} — Получает подробную информацию о конкретной группе журналов

  • cloudwatch://alarms — список всех оповещений CloudWatch

  • cloudwatch://alarms/in-alarm — выводит список только тех оповещений CloudWatch, которые в данный момент находятся в состоянии ALARM.

  • cloudwatch://saved-queries — список всех сохраненных запросов CloudWatch Logs Insights.

Инструменты

Сервер предоставляет следующие инструменты:

  • query_logs — запрос журналов CloudWatch с помощью CloudWatch Insights

    • Параметры:

      • log_group_names : Имя отдельной группы журналов или список имен групп журналов для запроса

      • query_string : строка запроса CloudWatch Insights

      • start_time : (Необязательно) Время начала запроса в миллисекундах метки времени Unix.

      • end_time : (Необязательно) Время окончания запроса в миллисекундах временной метки Unix.

    • Функции:

      • Автоматически анализирует JSON в поле @message

      • Возвращает структурированные данные для сообщений JSON

      • Обрабатывает несколько групп журналов в одном запросе

  • discover_log_fields — обнаружение доступных полей в нескольких группах журналов

    • Параметры:

      • log_group_names : Имя отдельной группы журналов или список имен групп журналов для анализа

    • Функции:

      • Эффективно обнаруживает поля в нескольких группах журналов

      • Предполагается общая схема для всех групп журналов

      • Обнаруживает вложенные поля JSON в @message

      • Определяет типы полей (число, логическое значение, строка, массив)

  • log_group_exists — проверка существования групп журналов CloudWatch

    • Параметры:

      • log_group_names : Имя отдельной группы журналов или список имен групп журналов для проверки

    • Возврат:

      • Словарь, сопоставляющий каждую группу журналов с ее статусом существования

  • get_saved_queries — извлечение всех сохраненных запросов CloudWatch Logs Insights

    • Параметры не требуются

Тестирование интеграции CloudWatch

Вы можете протестировать интеграцию CloudWatch напрямую, используя предоставленный тестовый скрипт:

# Make the test file executable chmod +x test_cloudwatch.py # List all log groups ./test_cloudwatch.py log-groups # List all alarms ./test_cloudwatch.py alarms # Use a specific AWS profile ./test_cloudwatch.py log-groups --profile my-profile # Enable verbose logging ./test_cloudwatch.py alarms -v

Примеры с MCP CLI

Использование интерфейса командной строки MCP:

# List all log groups mcp inspect cloudwatch://log-groups # Get details about a specific log group mcp inspect cloudwatch://log-groups/my-log-group-name # List all alarms mcp inspect cloudwatch://alarms # List alarms currently in ALARM state mcp inspect cloudwatch://alarms/in-alarm # List all saved CloudWatch Logs Insights queries mcp inspect cloudwatch://saved-queries # Query logs from multiple log groups using CloudWatch Insights mcp call query_logs --log_group_names '["log-group-1", "log-group-2"]' --query_string "fields @timestamp, @message | limit 10" # Query logs from a single log group (still supported) mcp call query_logs --log_group_names "my-log-group" --query_string "fields @timestamp, @message | limit 10" # Discover fields across multiple log groups mcp call discover_log_fields --log_group_names '["log-group-1", "log-group-2"]' # Check if multiple log groups exist mcp call log_group_exists --log_group_names '["log-group-1", "log-group-2"]' # Get all saved CloudWatch Logs Insights queries mcp call get_saved_queries

Лицензия

Массачусетский технологический институт

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CharlieFng/cloudwatch-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server