handle_check_cluster_healthLABSCO SUMMARY
Built around the queries an experienced Redshift admin already runs.
The diagnostic SQL is adapted from awslabs/amazon-redshift-utils, which is why the health and workload tools ask useful questions rather than generic ones — stats staleness and skew are the things that actually explain a slow table. Scope the Redshift user in the secret to what you want reachable; the ad-hoc query tool will run whatever that user can run.
What it is
An MCP server for Amazon Redshift that connects through the AWS Redshift Data API rather than a database driver, so there is no password in your config — the credentials live in a Secrets Manager secret and the server holds only its ARN. Its focus is operational: most of the tools answer why the warehouse is slow, not just what is in it.
What you get
handle_check_cluster_health— a basic or full assessment across a set of diagnostic queries, with optionallevelandtime_window_dayshandle_diagnose_locks— current lock contention and which session is blocking which, filtered bymin_wait_secondshandle_diagnose_query_performance— for onequery_id, the execution plan, its metrics and its historyhandle_monitor_workload— workload patterns over a window, covering WLM, top queries and resource usagehandle_inspect_table— one table's design, storage, health and usage, including size, row counts, skew and how stale its statistics arehandle_get_table_definition— theSHOW TABLEDDL for a tablehandle_execute_ad_hoc_query— an escape hatch for a SELECT the other tools do not cover- Resources for browsing without a tool call:
redshift://schemas,redshift://schema/{schema_name}/tables,redshift://wlm/configuration, and/scripts/{script_path}for the raw diagnostic SQL
Requirements
An AWS account whose credentials can call the Redshift Data API and read your secret — redshift-data:* and secretsmanager:GetSecretValue. Four environment variables: REDSHIFT_CLUSTER_ID, REDSHIFT_DATABASE, REDSHIFT_SECRET_ARN and AWS_REGION, with AWS_PROFILE optional if you are not on default credentials. The Redshift user behind that secret needs SELECT on the tables you care about and on the system views the diagnostics read, including svv_table_info. Python 3.10+; run it with uvx redshift-utils-mcp. Package redshift-utils-mcp, MIT.
Setup effort
One command plus credentials — pip install redshift-utils-mcp, then supply credentials
USE CASES
Explaining why a query got slower this week
Pull the plan, the metrics and the history for that query id in one call instead of assembling them from system views.
Finding out what is blocking a stuck session
List current lock contention and the blocking sessions, filtered to waits long enough to matter.
Checking whether a table needs maintenance
Inspect it for skew, size, row counts and stale statistics before reaching for VACUUM or ANALYZE.
Understanding where the cluster's time goes
Analyze the workload over a window and read WLM behaviour and top queries together.
Finding your way around an unfamiliar warehouse
Browse schemas and their tables as resources, then pull the DDL for the one you need.
7 tools
Listed in project docs. Your client may show a different list.
handle_diagnose_lockshandle_diagnose_query_performancehandle_execute_ad_hoc_queryhandle_get_table_definitionhandle_inspect_tablehandle_monitor_workloadBEFORE YOU INSTALL
What to know first
Tools you get
7 tools named in the project's documentation.
Requires
- pip on PATH
- Python 3.10+
- REDSHIFT_SECRET_ARN in your environment
INSTALLATION
Connect your client
Server setup
pip install redshift-utils-mcpMCP Clients
Claude Code
claude mcp add redshift-utils-mcp \
-e REDSHIFT_CLUSTER_ID="<YOUR_REDSHIFT_CLUSTER_ID>" \
-e REDSHIFT_DATABASE="<YOUR_REDSHIFT_DATABASE>" \
-e REDSHIFT_SECRET_ARN="arn:aws:secretsmanager:..." \
-e AWS_REGION="us-east-1" \
-- uvx redshift-utils-mcp