Componente MCP Client — sgcAI | eSeGeCe

MCP Client

TsgcWSAPIClient_MCP è la metà client del Model Context Protocol. Si connette a qualsiasi server MCP, su HTTP, HTTP Streamable o un sottoprocesso stdio locale, elenca i tool, i prompt e le risorse che offre e li richiama dal tuo codice.

TsgcWSAPIClient_MCP

Un client MCP JSON-RPC con tre trasporti. Esegue l'handshake di inizializzazione, tiene traccia della sessione, invia richieste e risponde a quelle avviate dal server che la tua applicazione sceglie di supportare.

Classe del componente

TsgcWSAPIClient_MCP

Scopo

Consumare server MCP

Piattaforme

Windows, macOS, Linux, iOS e Android

sgcAI è autonomo. Questo componente è distribuito dentro sgcAI insieme al runtime sgcWebSockets Core su cui è costruito, quindi non c'è nessuna licenza base da acquistare.

Richiama un tool su un server MCP

Imposta il trasporto e le sue opzioni, inizializza, poi elenca e richiama tool, prompt e risorse.

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();

Proprietà e metodi principali

I membri che userai più spesso.

Trasporto

MCPOptions.Transport seleziona aimcptrHttp per JSON-RPC semplice su POST, aimcptrHttpStreamable per keep-alive più un flusso di notifiche SSE, oppure aimcptrStdio per avviare un server locale come sottoprocesso.

HttpOptions e StdioOptions

HttpOptions contiene l'URL, le opzioni TLS e il logging. StdioOptions contiene Command, Arguments, WorkingDir, Environment e Timeout per il sottoprocesso.

Autenticazione

AuthenticationOptions supporta una chiave API, un header personalizzato o un flusso OAuth 2.0 completo con identity assertion, che è quanto i server MCP pubblici richiedono sempre più spesso.

Sessione

Initialize esegue l'handshake e Ping verifica che la connessione sia viva. HeartBeat invia ping periodici perché una sessione inattiva non venga chiusa, e Session espone lo stato negoziato della sessione.

Tool, prompt e risorse

ListTools e RequestTool, ListPrompts e RequestPrompt, ListResources, ListResourceTemplates e RequestResource. Gli elenchi accettano un argomento cursore per la paginazione.

Sottoscrizioni e logging

SubscribeResource e UnsubscribeResource seguono una risorsa per rilevarne le modifiche, SetLoggingLevel regola il livello di dettaglio lato server e Complete richiede il completamento degli argomenti.

Rispondere al server

OnMCPListRoots, OnMCPSamplingCreateMessage e OnMCPElicitationCreate scattano quando il server chiede al client le root del filesystem, un completamento del modello o un input dell'utente, così la tua applicazione fornisce la risposta.

Eventi

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

Specifiche e riferimenti

Fonti autorevoli per i servizi e i protocolli usati da questo componente.

Continua a esplorare

Guida onlineRiferimento API completo e guida all'utilizzo dei componenti sgcAI.
Tutti i componenti sgcAIEsplora la matrice completa delle funzionalità di tutti e 15 i componenti.
Scarica la versione di prova gratuitaConnettiti a un server MCP pubblico o locale dal tuo codice.
PrezziLicenze Single, Team e Site, codice sorgente completo, nessun prodotto base richiesto.
La scelta più conveniente: All-AccessTutti i prodotti eSeGeCe, con Supporto Premium incluso, a partire da €1,059/anno.
Vedi i prezzi All-Access

Pronto per iniziare?

Scarica la versione di prova gratuita e richiama un server MCP da Delphi o C++ Builder.