MCP-clientcomponent — sgcAI | eSeGeCe

MCP-client

TsgcWSAPIClient_MCP is de clientkant van het Model Context Protocol. Het verbindt met elke MCP-server, via HTTP, HTTP Streamable of een lokaal stdio-subproces, toont de tools, prompts en resources die die aanbiedt en roept ze vanuit je code aan.

TsgcWSAPIClient_MCP

Een JSON-RPC-MCP-client met drie transporten. Het voert de initialize-handshake uit, bewaakt de sessie, stuurt verzoeken en beantwoordt de door de server geïnitieerde verzoeken die jouw toepassing wil ondersteunen.

Componentklasse

TsgcWSAPIClient_MCP

Doel

MCP-servers gebruiken

Platforms

Windows, macOS, Linux, iOS en Android

sgcAI is zelfstandig. Dit component zit in sgcAI, samen met de sgcWebSockets Core runtime waarop het gebouwd is, dus je hoeft geen basislicentie te kopen.

Roep een tool aan op een MCP-server

Stel het transport en de opties in, initialiseer en toon en roep vervolgens tools, prompts en resources aan.

uses
  sgcAI, sgcAI_MCP_Classes, sgcAI_MCP_Types;

var
  oMCP: TsgcWSAPIClient_MCP;
begin
  oMCP := TsgcWSAPIClient_MCP.Create(nil);

  // Remote server over streamable HTTP.
  oMCP.MCPOptions.Transport      := aimcptrHttpStreamable;
  oMCP.MCPOptions.HttpOptions.URL := 'https://mcp.example.com/mcp';
  oMCP.MCPOptions.ClientInfo.Name    := 'sgc-mcp-client';
  oMCP.MCPOptions.ClientInfo.Version := '1.0.0';
  oMCP.MCPOptions.AuthenticationOptions.ApiKey.Enabled := True;
  oMCP.MCPOptions.AuthenticationOptions.ApiKey.Value   := 'mcp-...';

  oMCP.OnMCPListTools    := MCPListTools;
  oMCP.OnMCPResponseTool := MCPToolResponse;

  oMCP.Initialize;
  oMCP.ListTools;
  oMCP.RequestTool('GetTemperature', vArguments);   // vArguments: IsgcJSON
end;

// Or spawn a local MCP server as a subprocess instead:
oMCP.MCPOptions.Transport := aimcptrStdio;
oMCP.MCPOptions.StdioOptions.Command   := 'C:\tools\my-mcp-server.exe';
oMCP.MCPOptions.StdioOptions.Arguments := '--stdio';
// includes: sgcAI.hpp, sgcAI_MCP_Classes.hpp, sgcAI_MCP_Types.hpp

TsgcWSAPIClient_MCP *oMCP = new TsgcWSAPIClient_MCP(NULL);
oMCP->MCPOptions->Transport = aimcptrHttpStreamable;
oMCP->MCPOptions->HttpOptions->URL = "https://mcp.example.com/mcp";
oMCP->MCPOptions->ClientInfo->Name = "sgc-mcp-client";

oMCP->OnMCPListTools    = MCPListTools;
oMCP->OnMCPResponseTool = MCPToolResponse;

oMCP->Initialize();
oMCP->ListTools();

Belangrijkste eigenschappen & methoden

De leden die je het vaakst gebruikt.

Transport

MCPOptions.Transport kiest aimcptrHttp voor gewone JSON-RPC over POST, aimcptrHttpStreamable voor keep-alive plus een SSE-meldingsstroom, of aimcptrStdio om een lokale server als subproces te starten.

HttpOptions en StdioOptions

HttpOptions bevat de URL, de TLS-opties en de logging. StdioOptions bevat Command, Arguments, WorkingDir, Environment en Timeout voor het subproces.

Authenticatie

AuthenticationOptions ondersteunt een API-sleutel, een eigen header of een volledige OAuth 2.0-flow inclusief identity assertion, wat publieke MCP-servers steeds vaker vereisen.

Sessie

Initialize voert de handshake uit en Ping controleert of de verbinding leeft. HeartBeat stuurt periodieke pings zodat een inactieve sessie niet wordt verbroken, en Session toont de onderhandelde sessiestatus.

Tools, prompts en resources

ListTools en RequestTool, ListPrompts en RequestPrompt, ListResources, ListResourceTemplates en RequestResource. De lijstmethoden accepteren een cursorargument voor paginering.

Abonnementen en logging

SubscribeResource en UnsubscribeResource volgen een resource op wijzigingen, SetLoggingLevel stelt de uitgebreidheid aan serverzijde bij en Complete vraagt om aanvullingen van argumenten.

De server antwoorden

OnMCPListRoots, OnMCPSamplingCreateMessage en OnMCPElicitationCreate gaan af wanneer de server de client om bestandssysteemroots, een modelcompletion of gebruikersinvoer vraagt, zodat jouw toepassing het antwoord levert.

Gebeurtenissen

OnMCPInitialize, OnMCPPing, OnMCPListTools, OnMCPResponseTool, OnMCPListPrompts, OnMCPResponsePrompt, OnMCPListResources, OnMCPResponseResource en OnMCPStreamMessage.

Specificaties & referenties

Gezaghebbende bronnen voor de diensten en protocollen die dit component gebruikt.

Blijf ontdekken

Online helpVolledige API-referentie en gebruiksgids voor de sgcAI-componenten.
Alle sgcAI-componentenBekijk de volledige functiematrix van alle 15 componenten.
Download de gratis proefversieVerbind vanuit je eigen code met een publieke of lokale MCP-server.
PrijzenSingle-, Team- en Site-licenties, volledige broncode, geen basisproduct vereist.
De beste deal: All-AccessElk eSeGeCe-product, inclusief Premium-ondersteuning, vanaf €1,059 per jaar.
Bekijk de All-Access-prijzen

Klaar om aan de slag te gaan?

Download de gratis proefversie en roep een MCP-server aan vanuit Delphi of C++ Builder.