Сервер Redshift MCP
Сервер протокола контекста модели (MCP) для Amazon Redshift, позволяющий помощникам на основе искусственного интеллекта взаимодействовать с базами данных Redshift.
Введение
Redshift MCP Server — это реализация Model Context Protocol на Python, которая предоставляет инструменты и ресурсы для взаимодействия с базами данных Amazon Redshift. Она позволяет помощникам ИИ:
Список схем и таблиц в базе данных Redshift
Скрипты DDL (язык определения данных) для извлечения таблиц
Получить статистику таблицы
Выполнение SQL-запросов
Анализ таблиц для сбора статистической информации
Получите планы выполнения для SQL-запросов
Related MCP server: MongoDB MCP Server
Установка
Предпосылки
Python 3.13 или выше
Кластер Amazon Redshift
Учетные данные Redshift (хост, порт, имя пользователя, пароль, база данных)
Установить из источника
# Clone the repository
git clone https://github.com/Moonlight-CL/redshift-mcp-server.git
cd redshift-mcp-server
# Install dependencies
uv syncКонфигурация
Для подключения к кластеру Redshift серверу требуются следующие переменные среды:
RS_HOST=your-redshift-cluster.region.redshift.amazonaws.com
RS_PORT=5439
RS_USER=your_username
RS_PASSWORD=your_password
RS_DATABASE=your_database
RS_SCHEMA=your_schema # Optional, defaults to "public"Вы можете задать эти переменные среды напрямую или использовать файл .env .
Использование
Запуск сервера
# Start the server
uv run --with mcp python-dotenv redshift-connector mcp
mcp run src/redshift_mcp_server/server.pyИнтеграция с помощниками на основе искусственного интеллекта
Чтобы использовать этот сервер с помощником на основе искусственного интеллекта, поддерживающим MCP, добавьте следующую конфигурацию в настройки MCP:
{
"mcpServers": {
"redshift": {
"command": "uv",
"args": ["--directory", "src/redshift_mcp_server", "run", "server.py"],
"env": {
"RS_HOST": "your-redshift-cluster.region.redshift.amazonaws.com",
"RS_PORT": "5439",
"RS_USER": "your_username",
"RS_PASSWORD": "your_password",
"RS_DATABASE": "your_database",
"RS_SCHEMA": "your_schema"
}
}
}
}Функции
Ресурсы
Сервер предоставляет следующие ресурсы:
rs:///schemas— список всех схем в базе данныхrs:///{schema}/tables— выводит список всех таблиц в определенной схеме.rs:///{schema}/{table}/ddl— Получает скрипт DDL для определенной таблицыrs:///{schema}/{table}/statistic— Получает статистику для определенной таблицы
Инструменты
Сервер предоставляет следующие инструменты:
execute_sql— выполняет SQL-запрос на кластере Redshift.analyze_table— Анализирует таблицу для сбора статистической информации.get_execution_plan— получает план выполнения со статистикой времени выполнения для SQL-запроса
Примеры
Схемы листинга
access_mcp_resource("redshift-mcp-server", "rs:///schemas")Перечисление таблиц в схеме
access_mcp_resource("redshift-mcp-server", "rs:///public/tables")Получение таблицы DDL
access_mcp_resource("redshift-mcp-server", "rs:///public/users/ddl")Выполнение SQL
use_mcp_tool("redshift-mcp-server", "execute_sql", {"sql": "SELECT * FROM public.users LIMIT 10"})Анализ таблицы
use_mcp_tool("redshift-mcp-server", "analyze_table", {"schema": "public", "table": "users"})Получение плана выполнения
use_mcp_tool("redshift-mcp-server", "get_execution_plan", {"sql": "SELECT * FROM public.users WHERE user_id = 123"})Разработка
Структура проекта
redshift-mcp-server/
├── src/
│ └── redshift_mcp_server/
│ ├── __init__.py
│ └── server.py
├── pyproject.toml
└── README.mdЗависимости
mcp[cli]>=1.5.0- SDK протокола контекста моделиpython-dotenv>=1.1.0— для загрузки переменных среды из файлов .envredshift-connector>=2.1.5— соединитель Python для Amazon Redshift