Versie 2025.10.0 van sgcWebSockets breidt de AI-integratietoolkit uit met een MCP-client-implementatie van commerciele kwaliteit die je Delphi-toepassingen synchroon houdt met de Model Context Protocol 2025-06-18-specificatie. Lever zorgvuldig samengestelde context, orkestreer tool-aanroepen en bedien resource-bewuste assistenten, allemaal vanuit een enkel component.
Het Model Context Protocol (MCP) standaardiseert hoe assistenten capabilities onderhandelen en gestructureerde context uitwisselen. Door MCP-client-ondersteuning toe te voegen, maakt sgcWebSockets het volgende mogelijk:
- Interoperabiliteit op enterprise-niveau met elke MCP-compliant assistent, voor consistente initialisatie- en capability-discovery-workflows.
- Snellere time-to-market voor AI-uitgebreide ervaringen in bestaande VCL-, FMX- of WebBroker-projecten dankzij een plug-and-play Delphi-component.
- Operationeel inzicht over elke JSON-RPC-uitwisseling via ingebouwde HTTP-logging en gehardende TLS 1.3-transport.
Hoogtepunten van TsgcAI_MCP_Client
Kant-en-klare MCP-handshake
Voer de protocol-onderhandeling uit met een enkele Initialize-aanroep. De client meldt je productnaam, titel en semantische versie en respecteert daarbij de sessie-identifier die door de server wordt teruggegeven.
Rijke capability-surface
Verstuur kant-en-klare methode-aanroepen zoals Ping, ToolsList, ToolsCall, PromptsList, PromptsGet, ResourcesList en ResourcesRead. Elk response-type is sterk getypeerd, waardoor verdere verwerking moeiteloos verloopt.
Event-driven maatwerk
Haak in op gedetailleerde events — initialisatie, ping, tool-discovery, prompt-ophaling en resource-streaming — om elke uitwisseling te tracen en te personaliseren voordat deze je business-laag bereikt.
Het component verhoogt automatisch de JSON-RPC-request-identifiers, bewaart MCP-sessie-identifiers tussen aanroepen en gooit getypeerde excepties wanneer een remote-fout wordt geretourneerd. De HTTP-connectiviteit is ingekapseld in de gespecialiseerde client die het verkeer logt en TLS 1.3 onderhandelt met OpenSSL 3.0-API's.
Configuratieoverzicht
- Client-profiel: Configureer
MCPOptions.ClientInfoom je oplossing met assistent-integratie te presenteren met naam, titel en versie-metadata. - Server-endpoint: Stel
MCPOptions.ServerOptions.URLin op het MCP-compatibele HTTPS-endpoint dat je wilt bereiken. - HTTP-stack: Gebouwd op
TsgcAI_MCP_HTTP_Client; de transportlaag is afgestemd op JSON-content-types, automatische sessie-headers en veilige TLS-defaults. - Observability-hooks: Abonneer je op event-handlers zoals
OnMCPToolsCallofOnMCPResourcesReadom elke protocol-transitie te auditen en te verrijken.
Delphi-integratievoorbeeld
Het onderstaande fragment laat zien hoe je de MCP-client op een data-module plaatst, hem tijdens het opstarten initialiseert en een tool-call-response levert zodra de remote-assistent erom vraagt.
uses
sgcAI_MCP_Client, sgcJSON;
procedure TdmMCP.StartMCP;
begin
sgcMCP := TsgcAI_MCP_Client.Create(Self);
sgcMCP.MCPOptions.ClientInfo.Name := 'sgc-demo-pos';
sgcMCP.MCPOptions.ClientInfo.Title := 'Smart POS Assistant';
sgcMCP.MCPOptions.ClientInfo.Version := '2025.10.0';
sgcMCP.MCPOptions.ServerOptions.URL := 'https://mcp.partnercloud.com';
sgcMCP.OnMCPInitialize := DoMCPInitialize;
sgcMCP.OnMCPToolsCall := DoMCPToolsCall;
sgcMCP.Initialize;
end;
procedure TdmMCP.DoMCPInitialize(Sender: TObject;
const Request: TsgcAI_MCP_Request_Initialize;
const Response: TsgcAI_MCP_Response_Initialize;
var Accept: Boolean);
begin
Accept := Response.ServerInfo.SupportsTools('inventory.lookup');
end;
procedure TdmMCP.DoMCPToolsCall(Sender: TObject;
const Request: TsgcAI_MCP_Request_ToolsCall;
const Response: TsgcAI_MCP_Response_ToolsCall);
var
ResultPayload: IsgcJSON;
begin
if Request.Params.Name = 'inventory.lookup' then
begin
ResultPayload := TsgcJSON.CreateObject;
ResultPayload['sku'] := Request.Params.Arguments['sku'];
ResultPayload['availability'] := 'in-stock';
Response.Result := ResultPayload;
end;
end;
