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

Лицензия

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

F
license - not found
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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