Aller au contenu
hs-sql-agent
2.0.3
Documentation 2.0.3
Documentation Prise en main

Démarrage rapide

Choisir Docker, HsSqlAgent.Hosting ou HsSqlAgent.Server puis connecter un premier client MCP.

Choisissez le mode d’utilisation selon l’entité qui doit garder la maîtrise du Host.

ModeÀ utiliser lorsque
Dockerhs-sql-agent doit fonctionner comme service autonome
HsSqlAgent.Hostingun Host .NET doit intégrer le produit officiel complet
HsSqlAgent.Serverune application ASP.NET Core existante nécessite une composition sur mesure

Service autonome : Docker Compose

cp .env.example .env
docker compose up -d

Remplacez HMAC_KEY et JWT_KEY par deux secrets distincts d’au moins 32 bytes. Le port applicatif par défaut est 8080 et l’endpoint MCP est /mcp.

Pour un client MCP distant, MCP_PUBLIC_ENDPOINT doit être une URL absolue réellement accessible par le client et inclure /mcp.

Produit complet intégré : HsSqlAgent.Hosting

dotnet add package HsSqlAgent.Hosting
using HsSqlAgent.Hosting;

var builder = WebApplication.CreateBuilder(args);
builder.AddHsSqlAgentStandardHost();

var app = builder.Build();
app.UseHsSqlAgentStandardHost();
await app.RunAsync();

Ce chemin utilise la même composition officielle standard et le même contrat de configuration du Provider d’approbation DML que Docker.

Intégration ASP.NET Core sur mesure : HsSqlAgent.Server

Installez HsSqlAgent.Server, appelez AddHsSqlAgentCore() puis ajoutez explicitement les capacités Runtime, Admin Store/API, MCP, identité, télémétrie et approbation dont l’application a besoin. Voir Intégration ASP.NET Core.

Créer une clé MCP

Dans l’Admin UI, créez une clé MCP, liez-la à une base gérée et n’exposez que les Tools et Tables nécessaires au client. Utilisez la configuration Client générée ou envoyez X-MCP-Server-Key à l’endpoint Streamable HTTP.

Approbation DML

MCP Elicitation reste la voie d’approbation officielle par défaut. Le Hosting standard peut sélectionner l’adapter Webhook officiel par configuration ; un Host Server personnalisé peut enregistrer HsSqlAgent.Approvals.Webhook ou son propre IDmlApprovalProvider.

Il n’existe pas de Tool batch DML séparé : execute_dml_sql accepte directement une ou plusieurs instructions DML prises en charge, séparées par des points-virgules, puis les commit de manière atomique dans une Transaction après approbation.