Delphi MCP-server-tools (2/4)

· Functies

Met de release van sgcWebSockets 2025.9.0 kunnen ontwikkelaars nu Model Context Protocol (MCP)-functionaliteit rechtstreeks in hun servers integreren. Dit omvat de mogelijkheid om MCP-tool-requests af te handelen, een kerncomponent voor het mogelijk maken van dynamische en intelligente communicatie tussen AI-modellen en backend-services.

Deze gids laat je zien hoe MCP-tool-requests werken, hoe je ze afhandelt in je TsgcWSAPIServer_MCP-server en hoe je gestructureerde antwoorden terugstuurt naar de client of AI-agent. 

MCP-tool-requests begrijpen

In het MCP (Model Context Protocol)-ecosysteem vertegenwoordigen tools capabilities die een AI-model kan aanroepen — bijvoorbeeld het raadplegen van een database, het verzenden van een e-mail of het ophalen van data uit een API.

Een MCP-server stelt deze tools beschikbaar via WebSockets, en clients (zoals AI-agents) kunnen tool-requests doen om specifieke acties te triggeren. Het component TsgcWSAPIServer_MCP in sgcWebSockets vereenvoudigt de volledige flow door MCP-berichten automatisch te decoderen en door te sturen naar de juiste event-handlers in je server. 

Hoe MCP-tool-requests werken

De communicatieflow ziet er meestal zo uit:

  1. Client stuurt een tool-request (JSON-geformatteerd MCP-bericht) naar de MCP-server.
  2. sgcWebSockets parseert het request en triggert een event zoals OnToolRequest.
  3. De server voert de gevraagde actie uit — bijv. lezen uit een CRM, queryen van een database of een berekening uitvoeren.
  4. De server bouwt een antwoord in MCP-formaat (inclusief eventuele resultaat-data of fouten).
  5. Het antwoord wordt teruggestuurd naar de aanvragende client.

Elk MCP-tool-request wordt geïdentificeerd door:

Tool-requests afhandelen in Delphi

Zodra je je MCP-server hebt geconfigureerd met TsgcWSAPIServer_MCP, kun je inkomende tool-requests afhandelen via event-handlers.
Hieronder een voorbeeld van hoe je een handler implementeert voor inkomende MCP-tool-requests. 

procedure TMainForm.MCPServerMCPRequestTool(Sender: TObject;
  const ASession: TsgcAI_MCP_Session;
  const ARequest: TsgcAI_MCP_Request_ToolsCall;
  const AResponse: TsgcAI_MCP_Response_ToolsCall);
var
  LA, LB: Double;
begin
  if ARequest.Params.Name = 'math.add' then
  begin
    LA := ARequest.Params.Arguments.Node['a'].AsNumber;
    LB := ARequest.Params.Arguments.Node['b'].AsNumber;
    AResponse.Result.Content.AddText(Format('Sum = %.2f', [LA + LB]));
  end
  else
    AResponse.Result.IsError := True;
end;

MCP-tool-metadata gebruiken

Je kunt ook metadata over beschikbare tools registreren en blootstellen via de MCP-API.
Hiermee kunnen AI-modellen je beschikbare tools dynamisch ontdekken en de verwachte parameters begrijpen.

Je kunt bijvoorbeeld declareren: 

procedure TMainForm.FormCreate(Sender: TObject);
var
  oTool: TsgcAI_MCP_Tool;
begin
  oTool := MCPServer.Tools.AddTool('math.add', 'Adds two numbers');
  oTool.InputSchema.Properties.AddProperty('a', True, aimcpjtNumber, 'Left operand');
  oTool.InputSchema.Properties.AddProperty('b', True, aimcpjtNumber, 'Right operand');
end;

Deze informatie helpt AI-clients automatisch te begrijpen hoe ze je tools moeten aanroepen, waardoor het eenvoudiger wordt om zelf-documenterende AI-integraties te bouwen. 

Samenvatting

MCP-tool-requests in sgcWebSockets 2025.9.0 bieden een eenvoudige maar krachtige manier om je AI-modellen te verbinden met systemen uit de echte wereld.
Door het component TsgcWSAPIServer_MCP en de ingebouwde tool-request-afhandeling te gebruiken, kun je:

Meer informatie

Voor een dieper inzicht in de MCP-API en beschikbare server-componenten kun je de officiële documentatie raadplegen:


👉 sgcWebSockets MCP Tools Server Reference 


Hieronder vind je een Delphi MCP-server-demo voor Windows.