Skip to main content
Glama
kartik-augusta

Redshift MCP Server

Redshift MCP Server

Dieser MCP-Server (Model Context Protocol) stellt einen sicheren, schreibgeschützten Zugriff auf Amazon-Redshift-Datenbanken für die Verwendung mit Claude Desktop und anderen MCP-kompatiblen Clients bereit. Als intelligente Brücke ermöglicht er KI-Assistenten, eigenständig Daten zu durchsuchen, zu verstehen und Erkenntnisse direkt aus Ihrem Data Warehouse zu gewinnen.

✨ Hauptfunktionen

  • 10 spezialisierte Tools: Eine umfassende Suite für Datenermittlung, Metadaten-Extraktion, Abfragen und Export.

  • Dynamische Konfiguration: Vollständig konfigurierbar über .env (Zulassungslisten, Zeilenlimits, Verbindungsparameter).

  • Transportmodi: Unterstützt sowohl stdio (für lokale Clients wie Claude Desktop) als auch sse (Server-Sent Events über HTTP für Remote-Verbindungen).

  • Verbindungs-Caching: Effizientes Verbindungsmanagement mit einer einzelnen langlebigen, auf Erreichbarkeit geprüften Verbindung zu Redshift.

  • Enterprise Security:

    • Strenge schreibgeschützte SQL-Validierung.

    • Schema-Zulassungsliste (schränkt die KI auf vorab freigegebene Schemata ein).

    • Harte Obergrenzen für Abfrage- und Export-Zeilenanzahlen zum Schutz der Datenbankleistung.

  • SSH-Tunnel-Support: Nahtlose Verbindung zu privaten Redshift-Clustern in einer VPC über einen integrierten sshtunnel.

Related MCP server: safedb-mcp

🛠️ Verfügbare MCP-Tools

Datenabruf & Navigation

  1. get_allowed_schemas: Gibt die Schema-Zugriffskonfiguration des Servers zurück (Zulassungsliste, Standard-Schema, Limits).

  2. list_schemas: Ermittelt zugängliche Schemata in der Datenbank (gefiltert nach der konfigurierten Zulassungsliste).

  3. list_tables: Listet alle Tabellen in einem Schema auf. Zugänglich sind nur Schemata der Zulassungsliste.

  4. describe_table: Liefert Spaltennamen, Datentypen, Nullability und Standardwerte einer Tabelle.

  5. search_columns: Durchsucht alle Tabellen zugelassener Schemata nach Spalten, deren Name einem Suchbegriff entspricht (ohne Beachtung der Groß-/Kleinschreibung).

Datenanalyse & Extraktion

  1. sample_data: Gibt schnell eine Stichprobe von Zeilen aus einer Tabelle zur Datenexploration zurück.

  2. table_row_count: Liefert die exakte Zeilenanzahl einer Tabelle über COUNT(*).

  3. query_data: Führt eine schreibgeschützte SELECT-Abfrage aus. Umschließt und begrenzt die Ergebnisse automatisch auf Basis der Serverkonfiguration.

  4. explain_query: Zeigt den EXPLAIN-Plan einer Abfrage an, um die Ausführungsleistung vorab zu verstehen.

  5. export_to_csv: Exportiert Abfrageergebnisse im CSV-Format mit einem höheren eigenen Zeilenlimit (MAX_EXPORT_ROWS).

🚀 Setup & Installation

1. Abhängigkeiten installieren

# Clone the repository
git clone <repository-url>
cd redshift-mcp-server

# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -r requirements.txt

2. Umgebung konfigurieren

Kopieren Sie die Beispiel-Umgebungsdatei und passen Sie sie mit Ihren Zugangsdaten an:

cp .env.example .env

Bearbeiten Sie die Datei .env, um Ihre Redshift-Verbindung und Server-Limits zu konfigurieren:

# --- Redshift Connection ---
RS_HOST=your-cluster.region.redshift.amazonaws.com
RS_DB=your_database_name
RS_USER=your_readonly_user
RS_PASS=your_password
RS_PORT=5439

# --- Security & Limits ---
ALLOWED_SCHEMAS=gold_capsaai,report_capsaai
DEFAULT_SCHEMA=gold_capsaai
MAX_ROWS=500
MAX_EXPORT_ROWS=5000

# --- SSH Tunnel (For Private VPCs) ---
SSH_TUNNEL=false
# If true, provide SSH_HOST, SSH_USER, SSH_KEY_FILE, etc.

3. Server starten

Modus 1: stdio (Standard)

Am besten geeignet, wenn der MCP-Client (z. B. Claude Desktop) auf derselben Maschine läuft.

python server.py

Modus 2: sse (HTTP)

Am besten für den Fernzugriff auf den Server über HTTP oder Tunnel.

# Start SSE on port 8000
python server.py --sse --host 0.0.0.0 --port 8000

🔌 Verbindung mit dem Server herstellen

Option A: Lokaler Claude Desktop (stdio)

Wenn Ihr Claude Desktop auf derselben Maschine läuft wie der Server, bearbeiten Sie Ihre Claude-Desktop-Konfigurationsdatei:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "redshift": {
      "command": "/absolute/path/to/redshift-mcp-server/.venv/bin/python",
      "args": ["/absolute/path/to/redshift-mcp-server/server.py"]
    }
  }
}

Option B: Remote-Verbindung (SSE + IDE)

Wenn der Server auf einer entfernten EC2-Instanz läuft, starten Sie den Server im --sse-Modus.

Für IDEs, die direkte SSE-Verbindungen unterstützen (z. B. VS Code mit Cline):

  1. Fügen Sie einen neuen MCP-Server hinzu.

  2. Stellen Sie den Transporttyp auf SSE.

  3. Verwenden Sie die URL: http://<EC2-IP>:8000/sse (oder Ihre Tunnel-URL).

🧪 Testen & Validierung

Das Repository enthält eine umfassende Testsuite und Diagnosetools:

  • client.py: Ein CLI-Client, der einen End-to-End-Smoke-Test über alle 10 Tools ausführt.

  • test_connection.py: Basisvalidierung der Konnektivität.

  • test_restricted_access.py: Stellt sicher, dass die Schema-Sicherheitsbeschränkungen einwandfrei funktionieren.

  • monitor_mcp.sh: Produktionsreifes Monitoring mit automatischem Neustart, Health-Checks und Logging.

🏗️ Architektur

graph TB
    subgraph "Client Layer"
        CD["Claude Desktop / MCP Client"]
    end
    
    subgraph "MCP Server Layer"
        MCP["FastMCP Server"]
        CONFIG["config.py / .env"]
        VALIDATION["SQL & Schema Validation"]
    end
    
    subgraph "Network Layer"  
        SSH["SSH Tunnel<br/>(Optional)"]
        CONN["Connection Cache"]
    end
    
    subgraph "Database Layer"
        RS["Amazon Redshift"]
        SCHEMA["Allowed Schemas"]
    end
    
    CD -->|"JSON-RPC (stdio/sse)"| MCP
    MCP --> CONFIG
    MCP --> VALIDATION
    VALIDATION --> CONN
    CONN --> SSH
    SSH --> RS
    RS --> SCHEMA

🔐 Sicherheitshinweise

  • Read-only: Der _validate_read_only_sql-Wrapper schränkt Abfragen strikt auf SELECT- und EXPLAIN-Anweisungen ein.

  • Limits-Engine: Doppelte LIMIT-Syntaxfehler werden durch RegEx-Parsing in _apply_limit verhindert, wodurch große Tabellenscans zuverlässig auf Ihre .env-Schwelle begrenzt bleiben.

  • Schema-Isolierung: Die KI kann Tabellen außerhalb der durch Kommata getrennten ALLOWED_SCHEMAS-Liste weder einsehen noch abfragen.

  • Zugangsdaten schützen: Committen Sie Ihre .env- oder .json-Konfigurationsdateien niemals in die Versionsverwaltung. Sie werden standardmäßig in .gitignore ausgeschlossen.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A production-ready server that connects LLMs and AI agents (Claude, ChatGPT) to Amazon Redshift databases with configurable access controls and zero code changes.
    4
  • A
    license
    A
    quality
    C
    maintenance
    Secure MCP server for safe, read-only DB access by AI agents, with SQL guardrails, table allowlists, PII masking, and audit logs
    6
    34
    7
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    A read-only MCP server for Amazon Redshift that leverages column comments for guided data discovery, with slash commands for profiling, exploration, and lineage.
    13
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.

  • Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.

  • Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kartik-augusta/redshift-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server