Diese Seite wurde mit KI-Unterstützung aus dem Englischen übersetzt. Bei Abweichungen ist die englische Version maßgeblich.
Rust
Betten Sie den StackQL-MCP-Server in eine Rust-Anwendung ein, entweder als heruntergeladenes Sidecar oder per Vendoring mit include_bytes! in Ihre Binärdatei eingebunden. Der Client ist rmcp.
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
Fügen Sie das Crate stackql-mcp hinzu:
stackql-mcp = "0.1"
Schnellstart
use stackql_mcp::{Mode, StackqlMcp};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let server = StackqlMcp::builder()
.mode(Mode::ReadOnly)
.auth(serde_json::json!({"github": {"type": "null_auth"}}))
.start()
.await?;
let tools = server.list_all_tools().await?;
println!("{} tools available", tools.len());
server.shutdown().await?;
Ok(())
}
Die API besteht aus StackqlMcp::builder() mit .mode(), .auth(), .binary(), .bundle_path(), .approot(), .command(), .start() und .shutdown() sowie .list_all_tools(). Die MSRV ist Rust 1.88.
Modi
Der Builder verwendet standardmäßig Mode::ReadOnly. Rufen Sie .mode() mit Mode::Safe, Mode::DeleteSafe oder Mode::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
Zwei Feature-Flags steuern, woher die Binärdatei bezogen wird:
sidecar(Standard) - lädt die signierte Binärdatei beim ersten Start herunter, verifiziert sie und legt sie im Cache ab.vendored- bettet die Binärdatei mitinclude_bytes!ein und erzeugt eine einzelne eigenständige ausführbare Datei.
Die per Vendoring eingebundene Binärdatei vergrößert den Build um etwa 80 MB.
Demo-App
auditron ist ein Compliance-Copilot für das Terminal: eine TUI, die Pass/Fail-Ergebnisse mit dem zugehörigen SQL und Erklärungen von Claude streamt, ausgeliefert als einzelne, per Vendoring gebaute Binärdatei von ~80 MB.