Redshift MCP Server
An MCP server for Amazon Redshift, allowing AI assistants to interact with Redshift databases.
Redshift MCP Server
A Model Context Protocol (MCP) server for Amazon Redshift that enables AI assistants to interact with Redshift databases.
Introduction
Redshift MCP Server is a Python-based implementation of the Model Context Protocol that provides tools and resources for interacting with Amazon Redshift databases. It allows AI assistants to:
- List schemas and tables in a Redshift database
- Retrieve table DDL (Data Definition Language) scripts
- Get table statistics
- Execute SQL queries
- Analyze tables to collect statistics information
- Get execution plans for SQL queries
Installation
Prerequisites
- Python 3.13 or higher
- Amazon Redshift cluster
- Redshift credentials (host, port, username, password, database)
Install from source
# Clone the repository
git clone https://github.com/Moonlight-CL/redshift-mcp-server.git
cd redshift-mcp-server
# Install dependencies
uv sync
Configuration
The server requires the following environment variables to connect to your Redshift cluster:
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"
You can set these environment variables directly or use a .env file.
Usage
Starting the server
# Start the server
uv run --with mcp python-dotenv redshift-connector mcp
mcp run src/redshift_mcp_server/server.py
Integrating with AI assistants
To use this server with an AI assistant that supports MCP, add the following configuration to your MCP settings:
{
"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"
}
}
}
}
Features
Resources
The server provides the following resources:
rs:///schemas- Lists all schemas in the databasers:///{schema}/tables- Lists all tables in a specific schemars:///{schema}/{table}/ddl- Gets the DDL script for a specific tablers:///{schema}/{table}/statistic- Gets statistics for a specific table
Tools
The server provides the following tools:
execute_sql- Executes a SQL query on the Redshift clusteranalyze_table- Analyzes a table to collect statistics informationget_execution_plan- Gets the execution plan with runtime statistics for a SQL query
Examples
Listing schemas
access_mcp_resource("redshift-mcp-server", "rs:///schemas")
Listing tables in a schema
access_mcp_resource("redshift-mcp-server", "rs:///public/tables")
Getting table DDL
access_mcp_resource("redshift-mcp-server", "rs:///public/users/ddl")
Executing SQL
use_mcp_tool("redshift-mcp-server", "execute_sql", {"sql": "SELECT * FROM public.users LIMIT 10"})
Analyzing a table
use_mcp_tool("redshift-mcp-server", "analyze_table", {"schema": "public", "table": "users"})
Getting execution plan
use_mcp_tool("redshift-mcp-server", "get_execution_plan", {"sql": "SELECT * FROM public.users WHERE user_id = 123"})
Development
Project structure
redshift-mcp-server/
├── src/
│ └── redshift_mcp_server/
│ ├── __init__.py
│ └── server.py
├── pyproject.toml
└── README.md
Dependencies
mcp[cli]>=1.5.0- Model Context Protocol SDKpython-dotenv>=1.1.0- For loading environment variables from .env filesredshift-connector>=2.1.5- Python connector for Amazon Redshift
Related Servers
InfluxDB
A server for integrating with InfluxDB, a time-series database.
Memory
Knowledge graph-based persistent memory system
Lerian MCP Memory Server
A server providing persistent memory for AI assistants, with support for multiple AI providers.
Database
Universal database MCP server supporting multiple database types including PostgreSQL, Redshift, CockroachDB, MySQL, RDS MySQL, Microsoft SQL Server, BigQuery, Oracle DB, and SQLite
Grist
Integrate with the Grist API to manage relational spreadsheets and data. Requires a Grist API key.
Knowledge Graph Memory Server
Enables project memory using a Kuzu-powered knowledge graph.
DICOM MCP Server
Enables AI assistants to query, read, and move data on DICOM servers such as PACS and VNA for medical imaging.
Blackbaud FE NXT by CData
A read-only MCP server for Blackbaud FE NXT by CData, enabling LLMs to query live data. Requires a separate CData JDBC Driver.
MCP Snowflake Reader
Read-only access to Snowflake databases. Requires Snowflake connection information provided via MCP client configuration.
Snowflake MCP Service
An MCP server for interacting with Snowflake databases.