LabscoMCP early access ↗
vinodismynameMCP SERVER

Redshift Utils MCP Server

Diagnose an Amazon Redshift cluster in conversation — table health, lock contention, WLM workload, query plans — over the Data API, with credentials that stay in Secrets Manager.

by vinodismyname ↗Relational SQL DatabasesCommunity

LABSCO 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 optional level and time_window_days
  • handle_diagnose_locks — current lock contention and which session is blocking which, filtered by min_wait_seconds
  • handle_diagnose_query_performance — for one query_id, the execution plan, its metrics and its history
  • handle_monitor_workload — workload patterns over a window, covering WLM, top queries and resource usage
  • handle_inspect_table — one table's design, storage, health and usage, including size, row counts, skew and how stale its statistics are
  • handle_get_table_definition — the SHOW TABLE DDL for a table
  • handle_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