Zum Hauptinhalt springen
Übersetzte Seite

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

.NET / C#

Betten Sie den StackQL-MCP-Server in eine .NET-Anwendung ein, entweder als heruntergeladenes Sidecar oder per Vendoring in Ihren Build eingebunden als eigenständige ausführbare Datei. Der Client ist das offizielle C# MCP SDK.

info

Die eingebettete Binärdatei wird beim ersten Start heruntergeladen und per sha256 verifiziert oder per Vendoring in Ihre App eingebunden. Siehe den gemeinsamen Vertrag.


Installation​

dotnet add package StackQL.Mcp

Ein optionales Paket StackQL.Mcp.AgentFramework ergänzt die Integration mit dem Agent Framework. Erfordert .NET 8 oder höher.


Schnellstart​

using StackQL.Mcp;

await using var server = await StackqlMcp.CreateBuilder()
.WithMode(StackqlMode.ReadOnly)
.WithAuth("github", "null_auth")
.StartAsync();

var tools = await server.ListToolsAsync();
var result = await server.CallToolAsync("list_services",
new() { ["provider"] = "github", ["row_limit"] = 5 });

Die API besteht aus StackqlMcp.CreateBuilder() mit .WithMode(), .WithAuth(), .WithBinary(), .WithBundlePath(), .WithApproot() und .WithCommand(), gefolgt von .StartAsync(), .ListToolsAsync() und .CallToolAsync().


Modi​

Der Builder verwendet standardmäßig StackqlMode.ReadOnly. Rufen Sie .WithMode() mit StackqlMode.Safe, StackqlMode.DeleteSafe oder StackqlMode.FullAccess auf, um zu eskalieren. Die Eskalation ist explizit - der Server aktiviert keine Mutations- oder Lifecycle-Tools, sofern Sie sich nicht ausdrücklich dafür entscheiden.


Vendoring / Einbetten​

Es gibt zwei Wege, die Binärdatei zu beziehen:

  • Sidecar (Standard) - das Plattform-Bundle wird beim ersten Start heruntergeladen, per sha256 verifiziert, unter ~/.stackql/mcp-server-bin/<version>/<platform-key>/ zwischengespeichert und über stdio gestartet.
  • Vendored - betten Sie das Bundle als Build-Ressource ein, um eine eigenständige ausführbare Datei zu erzeugen:
dotnet build -p:StackqlVendorBundle=/path/to/stackql-mcp-windows-x64.mcpb

Sie können die Binärdatei oder das Bundle zur Laufzeit auch mit den Umgebungsvariablen STACKQL_MCP_BIN oder STACKQL_MCP_BUNDLE überschreiben.


Demo-App​

driftwatch ist ein .NET Worker Service, der den schreibgeschützten StackQL-Server einbettet, nach Zeitplan eine Suite von SQL-Drift-Prüfungen ausführt (öffentliche Erreichbarkeit, fehlende Tags oder Lizenzen, Baseline-Drift) und die Ergebnisse als Teams Adaptive Card sendet.


github.com/stackql/stackql-mcp-dotnet