Esta página se tradujo del inglés con ayuda de IA. Si hay diferencias entre ambas, la versión en inglés es la referencia.
Rust
Integre el servidor MCP de StackQL en una aplicación Rust, ya sea como un sidecar descargado o incorporado a su binario mediante vendoring con include_bytes!. El cliente es rmcp.
El binario integrado se descarga y se verifica con sha256 en la primera ejecución, o se incorpora a su aplicación mediante vendoring. Consulte el contrato común.
Instalación
Agregue el crate stackql-mcp:
stackql-mcp = "0.1"
Inicio rápido
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(())
}
La API es StackqlMcp::builder() con .mode(), .auth(), .binary(), .bundle_path(), .approot(), .command(), .start() y .shutdown(), además de .list_all_tools(). La MSRV es Rust 1.88.
Modos
El builder usa Mode::ReadOnly de forma predeterminada. Llame a .mode() con Mode::Safe, Mode::DeleteSafe o Mode::FullAccess para elevar el modo. La elevación de modo es explícita - el servidor no habilita las herramientas de mutación ni las de ciclo de vida a menos que usted las active explícitamente.
Vendoring / integración
Dos opciones de funcionalidad controlan cómo se obtiene el binario:
sidecar(predeterminada) - descargar, verificar y almacenar en caché el binario firmado en la primera ejecución.vendored- integrar el binario coninclude_bytes!para obtener un único ejecutable autónomo.
El binario incorporado mediante vendoring añade unos 80 MB al build.
Aplicación de demostración
auditron es un copiloto de cumplimiento para terminal: una TUI que transmite resultados de éxito o fallo con el SQL visible y explicaciones de Claude, distribuida como un único binario vendored de ~80 MB.