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.
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.