AWS Aurora DSQL MCP Server

AWS Aurora DSQL MCP Server

AWS Aurora DSQL MCP сервер — это специализированный MCP сервер, который предоставляет распределенный SQL (DSQL) доступ к базам данных, совместимым с Aurora PostgreSQL. Он позволяет приложениям, работающим на базе LLM, и ИИ-ассистентам безопасно запрашивать и управлять большими объемами распределенных реляционных данных в кластерах Amazon Aurora.

Author: awslabs


Просмотреть протокол

Что такое AWS Aurora DSQL MCP сервер?

AWS Aurora DSQL MCP сервер является точкой интеграции между распределенным SQL движком Aurora, совместимым с PostgreSQL, и протоколом Model Context Protocol (MCP). Он позволяет приложениям, работающим на LLM, нативно получать доступ, запрашивать и обрабатывать распределенные реляционные данные в кластерах Aurora через стандартизированные точки MCP. Объединяя распределенный SQL с экосистемой MCP, он позволяет ИИ-ассистентам и рабочим процессам поддерживать сложные, масштабируемые аналитические задачи непосредственно на Aurora, используя расширенные функции SQL, одновременность и высокую доступность.

Как настроить

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

    • Активный кластер Amazon Aurora, совместимый с PostgreSQL, с включенным распределенным SQL.
    • Доступ к ARN ресурса кластера и необходимые AWS учетные данные.
    • Python среда с установленным uv.
  2. Аргументы сервера (настройте в конфигурационном файле вашего MCP клиента, например, mcp.json):

    {
      "awslabs.aurora-dsql-mcp-server": {
        "command": "uvx",
        "args": ["awslabs.aurora-dsql-mcp-server@latest"],
        "env": {
          "AWS_PROFILE": "ваш-aws-профиль",
          "AWS_REGION": "us-east-1",
          "AURORA_RESOURCE_ARN": "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-cluster",
          "AURORA_SECRET_ARN": "arn:aws:secretsmanager:us-east-1:123456789012:secret:mysecret",
          "AURORA_DATABASE": "ваша_база_данных"
        }
      }
    }
    
  3. Переменные окружения:

    • AURORA_RESOURCE_ARN: ARN кластера Aurora.
    • AURORA_SECRET_ARN: ARN секрета, содержащего учетные данные базы данных.
    • AURORA_DATABASE: Имя целевой базы данных.
    • AWS_PROFILE: Профиль AWS CLI (или аналогичные учетные данные через окружение).
  4. Развертывание:

    • Добавьте конфигурацию в соответствующий MCP клиент (~/.aws/amazonq/mcp.json, .cursor/mcp.json и т.д.).
    • Убедитесь, что IAM разрешения позволяют доступ к Data API кластеру Aurora и получение секретов из Manager.
    • Запустите вашего MCP клиента или ИИ-ассистента для инициации подключения к серверу.

Как использовать

  1. Откройте ваш ИИ-ассистент или инструмент, совместимый с MCP (например, Amazon Q, Cursor, Cline).
  2. Убедитесь, что AWS Aurora DSQL MCP сервер включен в списке MCP серверов.
  3. Используйте естественный язык или явные подсказки (например, "С использованием Aurora DSQL MCP сервера выполните аналитический запрос на...") для запроса данных или выполнения операций.
  4. MCP клиент вызовет серверные инструменты (например, sql_query, list_tables) по мере необходимости, возвращая результаты или действия в ваш рабочий процесс.
  5. При желании одобрите или проверьте каждый вызов серверного инструмента в соответствии с вашими настройками клиента.
  6. Результаты (записи, метаданные, диагностика) появляются в беседе или панелях вывода вашего ИИ-ассистента.

Ключевые особенности

  • Выполнение распределенных SQL запросов с совместимостью PostgreSQL на Aurora
  • Безопасный доступ на основе ролей с использованием AWS учетных данных и Secrets Manager
  • Полная интеграция с экосистемой MCP и агентами, работающими на LLM
  • Инструменты для обнаружения схем базы данных, исследования данных и аналитики
  • Масштабируемость операций, транзакций и чтения (преимущества Aurora DSQL)
  • Поддержка параметризованных SQL входных данных для снижения рисков инъекций
  • Бесшовная интеграция в рамках разговорных, автономных или фоновый ИИ рабочих процессов

Примеры использования

  • Разговорная аналитика данных: Позвольте ИИ-чатботам отвечать на бизнес вопросы с помощью живых распределенных SQL запросов.
  • Автоматизированные ETL пайплайны: Запускайте распределенные преобразования и агрегации как часть рабочих процессов данных на базе LLM.
  • Облачное исследование данных: Позвольте разработчикам и дата-сайентистам исследовать распределенные базы данных Aurora через запросы на естественном языке в IDE.
  • Аудит и соблюдение норм: Используйте LLM для автоматического получения отчетов о соблюдении норм или проведения проверок безопасности по распределенным наборам данных.
  • Панели и отчетность: Интегрируйтесь с инструментами панелей или BI агентами для извлечения живых данных в визуализации и инструменты принятия решений.

Часто задаваемые вопросы

Вопрос 1: Поддерживает ли этот сервер обычные PostgreSQL кластеры или только Aurora Distributed SQL?
Ответ 1: Этот сервер специально разработан для кластеров, совместимых с PostgreSQL, Aurora с включенным распределенным SQL. Используйте Aurora PostgreSQL MCP сервер для стандартной Aurora или локальных PostgreSQL.

Вопрос 2: Какой уровень синтаксиса SQL поддерживается?
Ответ 2: Сервер поддерживает полный диалект PostgreSQL, реализованный в Aurora DSQL, включая расширенные аналитические и распределенные функции запросов. Некоторые физические или системные команды могут быть ограничены по соображениям безопасности.

Вопрос 3: Как работает аутентификация и авторизация?
Ответ 3: Сервер полагается на аутентификацию AWS IAM с доступом как к Aurora Data API, так и к секрету Secrets Manager, содержащему учетные данные базы данных. Все операции авторизуются на основе вашей настроенной IAM роли и разрешений на базу данных.

Вопрос 4: Может ли MCP сервер изменять состояние базы данных или только выполнять запросы для чтения?
Ответ 4: По умолчанию поддерживаются как операции чтения, так и записи (INSERT, UPDATE, DELETE), в зависимости от настройки. Для повышения безопасности вы можете настроить сервер на доступ только для чтения через настройки окружения.

Вопрос 5: Как можно выявить и устранить проблемы с производительностью запросов?
Ответ 5: Сервер возвращает диагностическую информацию о выполнении (время, ошибки, статус) для каждого вызова инструмента. Для продвинутой настройки должны использоваться стандартные средства мониторинга Aurora/PostgreSQL (CloudWatch, Performance Insights) напрямую.