Skip to main content

.NET / C#

Embed the StackQL MCP server in a .NET application, either as a downloaded sidecar or vendored into your build as a self-contained executable. The client is the official C# MCP SDK.

info

The embedded binary is downloaded and sha256-verified on first run, or vendored into your app. See the common contract.


Install​

dotnet add package StackQL.Mcp

An optional StackQL.Mcp.AgentFramework package adds Agent Framework integration. Requires .NET 8 or later.


Quick start​

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 });

The API is StackqlMcp.CreateBuilder() with .WithMode(), .WithAuth(), .WithBinary(), .WithBundlePath(), .WithApproot(), and .WithCommand(), then .StartAsync(), .ListToolsAsync(), and .CallToolAsync().


Modes​

The builder defaults to StackqlMode.ReadOnly. Call .WithMode() with StackqlMode.Safe, StackqlMode.DeleteSafe, or StackqlMode.FullAccess to escalate. Escalation is explicit - the server will not enable mutation or lifecycle tools unless you opt in.


Vendoring / embedding​

Two ways to source the binary:

  • Sidecar (default) - the platform bundle is downloaded on first run, sha256-verified, cached at ~/.stackql/mcp-server-bin/<version>/<platform-key>/, and spawned over stdio.
  • Vendored - embed the bundle as a build resource to produce a self-contained executable:
dotnet build -p:StackqlVendorBundle=/path/to/stackql-mcp-windows-x64.mcpb

You can also override the binary or bundle at runtime with the STACKQL_MCP_BIN or STACKQL_MCP_BUNDLE environment variables.


Demo app​

driftwatch is a .NET Worker Service that embeds the read-only StackQL server and, on a schedule, runs a suite of SQL drift checks (public exposure, missing tags or licenses, baseline drift) and posts the findings to a Teams Adaptive Card.


github.com/stackql/stackql-mcp-dotnet