Zum Hauptinhalt springen
Übersetzte Seite

Diese Seite wurde mit KI-Unterstützung aus dem Englischen übersetzt. Bei Abweichungen ist die englische Version maßgeblich.

Installation

Hier finden Sie Anleitungen zur Installation von StackQL auf verschiedenen Plattformen.

macOS​

StackQL ist auf macOS über Homebrew und den pkg-Installer verfügbar; sowohl ARM- (M1/Apple Silicon) als auch AMD-Architekturen werden mit einem einzigen Multi-Arch-Installer unterstützt.

Führen Sie zur Installation über Homebrew den folgenden Befehl in Ihrem Terminal aus:

brew install stackql

Verwendung mit MCP-Clients​

Der StackQL MCP-Server läuft lokal über stdio, sodass die Provider-Anmeldedaten unabhängig vom verwendeten Client auf Ihrem Rechner bleiben. Wählen Sie unten Ihren Client: Jeder Tab nennt zuerst den Weg über das Verzeichnis oder die Ein-Klick-Installation und als Ausweichlösung die manuelle Konfiguration. Alle Vertriebskanäle, einschließlich npx, Python, Docker und CI, finden Sie unter MCP-Server installieren.

Claude Desktop​

Der empfohlene Weg, den StackQL MCP-Server in Claude Desktop zu installieren, führt über das Anthropic Connector Directory (Einstellungen -> Connectors -> Hinzufügen -> Connectors durchsuchen, nach StackQL suchen) - Claude Desktop wählt automatisch die passende signierte Binärdatei für Ihre Plattform. Alternativ sind vorgefertigte MCP-Bundles (.mcpb) an jedes StackQL-Release angehängt, um aus einer heruntergeladenen Datei zu installieren - in beiden Fällen ist keine separate StackQL-Installation erforderlich. Bundles sind für macOS, Windows und Linux verfügbar.

Die MCPB-Downloads für Linux und Windows verwenden standardmäßig amd64 (x64). Über die Dropdown-Menüs wählen Sie amd64 oder arm64.


info

Der StackQL MCP-Server ist außerdem in der Official MCP Registry als io.github.stackql/stackql-mcp gelistet.

tipp

Das Bundle ist eine von mehreren Möglichkeiten, den StackQL MCP-Server auszuführen. Die vollständige Anleitung für Claude Desktop finden Sie unter StackQL mit Claude Desktop verwenden, die Optionen npx, Docker, Python, CI und manuelle Konfiguration unter MCP-Server installieren.

MCP-Server installieren​

Mit dem StackQL MCP-Server können KI-Agenten Cloud-Ressourcen mit StackQL abfragen und bereitstellen. Er wird über mehrere Kanäle ausgeliefert - alle führen denselben Server aus, wählen Sie also den Kanal, der zu Ihrem Client und Ihren Anforderungen an die Vertrauenswürdigkeit passt. Die folgenden Optionen sind ungefähr nach Vertrauenswürdigkeit und Einfachheit geordnet.

Marketplaces und Verzeichnisse​

Der Server ist in der Official MCP Registry als io.github.stackql/stackql-mcp veröffentlicht; die unten aufgeführten Paket-Registries enthalten die verteilbaren Artefakte, und nachgelagerte Verzeichnisse übernehmen den Eintrag von dort.

RegistryTypVeröffentlicht überEintragHinweise
Official MCP RegistryKanonische Metadaten-Registrymcp-publisher CLI + server.jsonmodelcontextprotocol.io/search
modelcontextprotocol.io/direct
führt alle 8 Pakete auf (mcpb x5, oci, npm, pypi)
npmPaket-Registrynpm publish@stackql/mcp-servernpx-Launcher
PyPIPaket-Registrytwine uploadstackql-mcp-serveruvx-/pip-Launcher
Docker HubContainer-Registrydocker buildx --pushstackql/stackql-mcpMulti-Arch amd64 + arm64
GitHub Actions MarketplaceCI-Marketplace (setup-stackql-mcp-Action)Öffentliches Repository + Release + Marketplace-Eintragsetup-stackql-mcp-serverVerifizierter Publisher; stackql/setup-stackql-mcp

Vorgefertigtes .mcpb-Bundle​

Wann verwenden: Claude Desktop ohne Zugang zum Connector Directory, oder wenn Sie eine bestimmte Version festlegen oder Prüfsummen vor der Installation selbst prüfen möchten. Für die meisten Claude Desktop-Benutzer ist das Anthropic Connector Directory die empfohlene Installationsmethode.

Für jede Plattform ist an jedes StackQL-Release ein vorgefertigtes MCP-Bundle angehängt:

https://releases.stackql.io/stackql/latest/stackql-mcp-<platform>.mcpb

wobei <platform> einer der Werte darwin-universal, windows-x64 (AMD64), windows-arm64, linux-x64 oder linux-arm64 ist. Download-Buttons für jede Plattform finden Sie im Tab Claude Desktop unter Verwendung mit MCP-Clients. Zu jedem Bundle gibt es eine passende .sha256-Prüfsumme auf der Release-Seite. Prüfen Sie diese und installieren Sie dann über Einstellungen -> Erweiterungen in Claude Desktop:

shasum -a 256 -c stackql-mcp-darwin-universal.mcpb.sha256

Die vollständige Anleitung finden Sie unter StackQL mit Claude Desktop verwenden.

Manuelle claude_desktop_config.json​

Wann verwenden: Sie haben die stackql-Binärdatei bereits in Ihrem PATH und verwenden Claude Desktop oder einen anderen stdio-MCP-Client.

{
"mcpServers": {
"stackql": {
"command": "stackql",
"args": [
"mcp",
"--mcp.server.type=stdio",
"--approot", "/Users/you/.stackql",
"--mcp.config", "{\"server\": {\"audit\": {\"disabled\": true}}}"
]
}
}
}

Alle drei Argumente sind erforderlich:

  • --mcp.server.type=stdio wählt den stdio-Transport, den in Editoren eingebettete Clients sprechen.
  • --approot verweist den Provider-Cache auf ein beschreibbares Verzeichnis. MCP-Clients starten den Server unter Umständen mit / als Arbeitsverzeichnis, das nicht beschreibbar ist.
  • --mcp.config '{"server": {"audit": {"disabled": true}}}' deaktiviert das Audit-Log, das sein Verzeichnis sonst standardmäßig in das (möglicherweise nicht beschreibbare) Arbeitsverzeichnis legt.

Fügen Sie Provider-Anmeldedaten mit einem "env"-Block hinzu und passen Sie den Sicherheitsvertrag mit "mode" an - siehe Server-Modi.

npx (ohne Installation)​

Wann verwenden: jede Node-Umgebung, wenn Sie keine globale StackQL-Installation möchten.

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

Der Launcher @stackql/mcp-server lädt die signierte stackql-Binärdatei beim ersten Start herunter, prüft deren SHA-256 und legt sie für spätere Starts im Cache ab.

uvx / pip (Python)​

Wann verwenden: eine Python-Umgebung - derselbe Launcher, für Python paketiert, der den Binärdatei-Cache des npx-Launchers mitbenutzt.

{ "mcpServers": { "stackql": { "command": "uvx", "args": ["stackql-mcp-server"] } } }

Oder installieren Sie ihn mit pip install stackql-mcp-server (Python 3.9+) in die aktuelle Umgebung. Das Paket heißt stackql-mcp-server auf PyPI.

Docker​

Wann verwenden: eine containerisierte oder anderweitig isolierte Laufzeitumgebung. Das Image ist Multi-Arch (amd64 und arm64).

docker run -i --rm stackql/stackql-mcp

Als Client-Konfiguration:

{ "mcpServers": { "stackql": { "command": "docker", "args": ["run", "-i", "--rm", "stackql/stackql-mcp"] } } }

Das Image heißt stackql/stackql-mcp auf Docker Hub.

CI und agentische Workflows (GitHub Actions)​

Wann verwenden: Sie führen den Server in einem GitHub Actions-Job aus, damit ein Agent Ihre Cloud im Rahmen von CI abfragen - und, wenn Sie es erlauben, verändern - kann.

stackql/setup-stackql-mcp@v1 installiert die Binärdatei und schreibt eine MCP-Konfiguration (standardmäßig im Modus read_only). Übergeben Sie diese Konfiguration über claude_args an anthropics/claude-code-action:

- id: stackql
uses: stackql/setup-stackql-mcp@v1
with:
auth: '{"github":{"type":"null_auth"}}'

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
Using stackql, list the public repositories in the stackql org and
summarise them as a markdown table.
claude_args: |
--mcp-config ${{ steps.stackql.outputs.mcp-config-file }}
--allowedTools 'mcp__stackql__*'

Weitere agentische Rezepte (Cloud-Audits, Kostenschätzungen und so weiter) finden Sie in der README der Action.

Eingebettetes MCP​

Wann verwenden: Sie entwickeln eine agentische App und möchten den MCP-Server in Ihre eigene Binärdatei einbetten - kein npx, keine separate Installation, keine Laufzeitabhängigkeit.

Native Bibliotheken starten die signierte stackql-Binärdatei über stdio hinter dem offiziellen MCP-SDK-Client der jeweiligen Sprache, sodass Ihre App dieselbe kontrollierte SQL-Schnittstelle zu jedem Provider in der Registry erhält. Jede Bibliothek verwendet standardmäßig read_only - der Wechsel in einen schreibenden Modus ist immer explizit - und kann die Binärdatei entweder beim ersten Start herunterladen und prüfen oder sie für eine einzelne eigenständige ausführbare Datei in Ihren Build einbetten. Die vollständige API je Sprache finden Sie in der Referenz zum eingebetteten MCP.

Das Crate stackql-mcp startet die Binärdatei hinter einem rmcp-Client. Das Standard-Feature sidecar lädt die Binärdatei beim ersten Start herunter und prüft sie; das Feature vendored bettet sie mit include_bytes! für eine einzelne eigenständige Binärdatei ein. MSRV Rust 1.88.

# Cargo.toml
stackql-mcp = "0.1"
use stackql_mcp::{Mode, StackqlMcp};

let server = StackqlMcp::builder()
.mode(Mode::ReadOnly)
.start()
.await?;
let tools = server.list_all_tools().await?;

Vollständige Referenz: Eingebettetes MCP: Rust.

Vertrauensmodell​

Für jeden Kanal gelten dieselben Sicherheitseigenschaften:

  • Die eingebettete stackql-Binärdatei ist mit Authenticode signiert (Windows) und von Apple notarisiert (macOS).
  • Jedes .mcpb-Bundle wird mit einer veröffentlichten SHA-256-Prüfsumme auf der Release-Seite ausgeliefert.
  • Die Launcher npx und uvx prüfen den SHA-256 der heruntergeladenen Binärdatei vor der ersten Verwendung.
  • Der Eintrag in der MCP Registry bestätigt die Hashes je Plattform.

GitHub Actions verwenden​

StackQL GitHub Actions stehen für Ihre GitHub Actions-Workflows zur Verfügung. Die folgenden Actions sind verfügbar:

stackql-deploy​

Stellen Sie Infrastruktur-Stacks mit StackQL direkt aus Ihren GitHub-Workflows bereit oder testen Sie sie. Diese Action ermöglicht Infrastructure as Code (IaC)-Workflows mit SQL-ähnlicher Syntax, sodass Sie Cloud-Ressourcen über mehrere Provider hinweg in einem einzigen Workflow definieren, bereitstellen und verwalten können.


Anwendungsbeispiel

...
jobs:
stackql-actions-test:
name: StackQL Actions Test
runs-on: ubuntu-latest
env:
GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }} # add additional cloud provider creds here as needed

steps:
- name: Checkout
uses: actions/checkout@v6

- name: Deploy a Stack
uses: stackql/stackql-deploy-action@v2
with:
command: 'build'
stack_dir: 'examples/k8s-the-hard-way'
stack_env: 'dev'
env_vars: |
GOOGLE_PROJECT=stackql-k8s-the-hard-way-demo
GOOGLE_REGION=australia-southeast1

Weitere Bibliotheken​

StackQL bietet mehrere Integrationsmöglichkeiten für die Verwendung in verschiedenen Programmiersprachen und Umgebungen. Diese Bibliotheken erweitern die Funktionalität von StackQL und erleichtern es, die Abfrage und Verwaltung von Cloud-Ressourcen in Ihre bestehenden Anwendungen und Workflows einzubinden.

pystackql-Python-Paket​

Python-Wrapper zur Verwendung von StackQL in Ihren Python-Programmen. Das Paket pystackql ist auf PyPi verfügbar, die Dokumentation zum Paket pystackql finden Sie auf Read the Docs. Um das Paket pystackql zu installieren, führen Sie den folgenden Befehl aus:

pip install pystackql

Das folgende Beispiel zeigt das Paket pystackql zusammen mit pandas, um StackQL-Abfragen auszuführen und die Ergebnisse in einen pandas.DataFrame zu übernehmen:

from pystackql import StackQL
import pandas as pd
region = "ap-southeast-2"
stackql = StackQL()

query = """
SELECT instance_type, COUNT(*) as num_instances
FROM aws.ec2.instances
WHERE region = '%s'
GROUP BY instance_type
""" % (region)

res = stackql.execute(query)
df = pd.read_json(res)
print(df)