Skip to main content
Glama

steampipe-mcp

by turbot

Steampipe Model Context Protocol (MCP)-Server

Entfesseln Sie das Potenzial der KI-gesteuerten Infrastrukturanalyse mit Steampipe ! Dieser Model Context Protocol-Server verbindet KI-Assistenten wie Claude nahtlos mit Ihren Cloud-Infrastrukturdaten und ermöglicht so die Erkundung und Analyse Ihres gesamten Cloud-Bestands in natürlicher Sprache.

Steampipe MCP verbindet KI-Assistenten und Ihre Infrastrukturdaten und ermöglicht natürliche Sprache:

  • Abfragen über AWS, Azure, GCP und über 100 Cloud-Dienste

  • Sicherheits- und Compliance-Analyse

  • Kosten- und Ressourcenoptimierung

  • Unterstützung bei der Abfrageentwicklung

Funktioniert sowohl mit lokalen Steampipe- Installationen als auch mit Turbot Pipes -Arbeitsbereichen und bietet sicheren, schreibgeschützten Zugriff auf alle Ihre Cloud- und SaaS-Daten.

Installation

Voraussetzungen

  • Node.js v16 oder höher (einschließlich npx )

  • Für die lokale Verwendung: Steampipe installiert und ausgeführt ( steampipe service start )

  • Für Turbot Pipes: Ein Turbot Pipes -Arbeitsbereich und eine Verbindungszeichenfolge

Konfiguration

Fügen Sie Steampipe MCP zur Konfigurationsdatei Ihres KI-Assistenten hinzu:

{ "mcpServers": { "steampipe": { "command": "npx", "args": [ "-y", "@turbot/steampipe-mcp" ] } } }

Standardmäßig wird eine Verbindung zu Ihrer lokalen Steampipe-Installation unter postgresql://steampipe@localhost:9193/steampipe hergestellt. Führen Sie zuerst steampipe service start aus.

Um stattdessen eine Verbindung zu einem Turbot Pipes -Arbeitsbereich herzustellen, fügen Sie den Argumenten Ihre Verbindungszeichenfolge hinzu:

{ "mcpServers": { "steampipe": { "command": "npx", "args": [ "-y", "@turbot/steampipe-mcp", "postgresql://my_name:my_pw@workspace-name.usea1.db.pipes.turbot.com:9193/abc123" ] } } }

Einrichtung des KI-Assistenten

Assistent

Speicherort der Konfigurationsdatei

Installationshandbuch

Claude Desktop

claude_desktop_config.json

Claude Desktop MCP-Anleitung →

Cursor

~/.cursor/mcp.json

Cursor MCP-Anleitung →

Speichern Sie die Konfigurationsdatei und starten Sie Ihren KI-Assistenten neu, damit die Änderungen wirksam werden.

Anleitung zur Eingabeaufforderung

Führen Sie zunächst die im MCP-Server enthaltene Eingabeaufforderung best_practices aus, um Ihrem LLM die optimale Arbeit mit Steampipe beizubringen. Stellen Sie anschließend Ihre Fragen!

Erkunden Sie Ihre Cloud-Infrastruktur:

What AWS accounts can you see?

Einfache, spezifische Fragen funktionieren gut:

Show me all S3 buckets that were created in the last week

Infrastrukturberichte erstellen:

List my EC2 instances with their attached EBS volumes

Tauchen Sie ein in die Sicherheitsanalyse:

Find any IAM users with access keys that haven't been rotated in the last 90 days

Erhalten Sie Compliance-Einblicke:

Show me all EC2 instances that don't comply with our tagging standards

Informieren Sie sich über mögliche Risiken:

Analyze my S3 buckets for security risks including public access, logging, and encryption

Denken Sie daran:

  • Geben Sie genau an, welche Cloud-Ressourcen Sie analysieren möchten (EC2, S3, IAM usw.).

  • Erwähnen Sie Regionen oder Konten, wenn Sie an bestimmten interessiert sind

  • Beginnen Sie mit einfachen Abfragen, bevor Sie komplexe Bedingungen hinzufügen

  • Verwenden Sie natürliche Sprache – das LLM übernimmt die SQL-Übersetzung

  • Seien Sie mutig und experimentierfreudig – der LLM kann Ihnen dabei helfen, Erkenntnisse über Ihre gesamte Infrastruktur hinweg zu gewinnen!

Funktionen

Werkzeuge

  • Steampipe_Abfrage

    • Fragen Sie Cloud- und Sicherheitsprotokolle mit SQL ab.

    • Für optimale Leistung: Verwenden Sie CTEs anstelle von Verknüpfungen und begrenzen Sie die Anzahl der angeforderten Spalten.

    • Alle Abfragen sind schreibgeschützt und verwenden die PostgreSQL-Syntax.

    • Eingabe: sql (Zeichenfolge): Die auszuführende SQL-Abfrage mit der PostgreSQL-Syntax

  • Steampipe_Tabellenliste

    • Listet alle verfügbaren Steampipe-Tabellen auf.

    • Optionale Eingabe: schema (Zeichenfolge): Tabellen nach einem bestimmten Schema filtern

    • Optionale Eingabe: filter (Zeichenfolge): Filtern Sie Tabellen nach ILIKE-Muster (z. B. „%ec2%“)

  • Steampipe_Tabelle_Show

    • Erhalten Sie detaillierte Informationen zu einer bestimmten Tabelle, einschließlich Spaltendefinitionen, Datentypen und Beschreibungen.

    • Eingabe: name (Zeichenfolge): Der Name der Tabelle, für die Details angezeigt werden sollen (kann schemaqualifiziert sein, z. B. „aws_account“ oder „aws.aws_account“)

    • Optionale Eingabe: schema (Zeichenfolge): Das Schema, das die Tabelle enthält

  • Steampipe_Plugin_Liste

    • Listet alle auf dem System installierten Steampipe-Plugins auf. Plugins ermöglichen den Zugriff auf verschiedene Datenquellen wie AWS, GCP oder Azure.

    • Keine Eingabeparameter erforderlich

  • Steampipe_Plugin_Show

    • Erhalten Sie Details zu einer bestimmten Steampipe-Plugin-Installation, einschließlich Version, Speichergrenzen und Konfiguration.

    • Eingabe: name (Zeichenfolge): Name des Plugins, für das Details angezeigt werden sollen

Eingabeaufforderungen

  • bewährte Verfahren

    • Best Practices für die Arbeit mit Steampipe-Daten

    • Bietet detaillierte Anleitungen zu:

      • Antwortstil und Formatierungskonventionen

      • Verwenden von CTEs (WITH-Klauseln) im Vergleich zu Joins

      • SQL-Syntax und Stilkonventionen

      • Spaltenauswahl und -optimierung

      • Schemaerkundung und -verständnis

      • Abfragestruktur und -organisation

      • Leistungsüberlegungen und Caching

      • Fehlerbehandlung und Fehlerbehebung

Ressourcen

  • Status

    • Stellt den aktuellen Status der Steampipe-Verbindung dar

    • Zu den Eigenschaften gehören:

      • connection_string: Die aktuelle Datenbankverbindungszeichenfolge

      • Status: Der Verbindungsstatus (verbunden/getrennt)

Diese Ressource ermöglicht es KI-Tools, den Verbindungsstatus zu Ihrer Steampipe-Instanz zu prüfen und zu verifizieren.

Entwicklung

Klonen und Einrichten

  1. Klonen Sie das Repository und navigieren Sie zum Verzeichnis:

git clone https://github.com/turbot/steampipe-mcp.git cd steampipe-mcp
  1. Installieren Sie Abhängigkeiten:

npm install
  1. Erstellen Sie das Projekt:

npm run build

Testen

Um Ihren lokalen Entwicklungs-Build mit KI-Tools zu testen, die MCP unterstützen, aktualisieren Sie Ihre MCP-Konfiguration, um die lokale dist/index.js anstelle des npm-Pakets zu verwenden. Beispiel:

{ "mcpServers": { "steampipe": { "command": "node", "args": [ "/absolute/path/to/steampipe-mcp/dist/index.js", "postgresql://steampipe@localhost:9193/steampipe" ] } } }

Oder verwenden Sie den MCP Inspector, um die Serverimplementierung zu validieren:

npx @modelcontextprotocol/inspector dist/index.js

Umgebungsvariablen

Die folgenden Umgebungsvariablen können zum Konfigurieren des MCP-Servers verwendet werden:

  • STEAMPIPE_MCP_LOG_LEVEL : Ausführlichkeit der Serverprotokollierung steuern (Standard: info )

  • STEAMPIPE_MCP_WORKSPACE_DATABASE : Überschreibt die standardmäßige Steampipe-Verbindungszeichenfolge (Standard: postgresql://steampipe@localhost:9193/steampipe )

Open Source und Mitwirken

Dieses Repository wird unter der Apache 2.0-Lizenz veröffentlicht. Bitte beachten Sie unseren Verhaltenskodex . Wir freuen uns auf die Zusammenarbeit mit Ihnen!

Steampipe ist ein Produkt dieser Open-Source-Software, das exklusiv von Turbot HQ, Inc. entwickelt wurde. Der Vertrieb erfolgt unter unseren kommerziellen Bedingungen. Andere dürfen die Software selbst vertreiben, dürfen jedoch keine Marken, Cloud-Dienste usw. von Turbot verwenden. Weitere Informationen finden Sie in unseren Open-Source-FAQs .

Machen Sie mit

Treten Sie #steampipe auf Slack bei →

Sie möchten helfen, wissen aber nicht, wo Sie anfangen sollen? Suchen Sie sich eine der help wanted aus:

Related MCP Servers

View all related MCP servers

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/turbot/steampipe-mcp'

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