Componente MCP Client — sgcAI | eSeGeCe

MCP Client

TsgcWSAPIClient_MCP es la mitad cliente del Model Context Protocol. Se conecta a cualquier servidor MCP, por HTTP, HTTP Streamable o un subproceso stdio local, lista las herramientas, prompts y recursos que ofrece, y los invoca desde tu código.

TsgcWSAPIClient_MCP

Un cliente MCP sobre JSON-RPC con tres transportes. Realiza el handshake de inicialización, mantiene la sesión, emite peticiones y responde a las que inicia el servidor y que tu aplicación decida admitir.

Clase del componente

TsgcWSAPIClient_MCP

Propósito

Consumir servidores MCP

Plataformas

Windows, macOS, Linux, iOS y Android

sgcAI es autónomo. Este componente se incluye dentro de sgcAI junto con el runtime sgcWebSockets Core sobre el que está construido.

Llama a una herramienta de un servidor MCP

Configura el transporte y sus opciones, inicializa y luego lista e invoca herramientas, prompts y recursos.

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

Propiedades y métodos principales

Los miembros que usarás más a menudo.

Transporte

MCPOptions.Transport selecciona aimcptrHttp para JSON-RPC simple sobre POST, aimcptrHttpStreamable para keep-alive más un flujo de notificaciones SSE, o aimcptrStdio para lanzar un servidor local como subproceso.

HttpOptions y StdioOptions

HttpOptions contiene la URL, las opciones TLS y el registro. StdioOptions contiene Command, Arguments, WorkingDir, Environment y Timeout para el subproceso.

Autenticación

AuthenticationOptions admite una clave de API, una cabecera personalizada o un flujo OAuth 2.0 completo, incluida la aserción de identidad, que es lo que exigen cada vez más los servidores MCP públicos.

Sesión

Initialize realiza el handshake y Ping comprueba que la conexión sigue viva. HeartBeat envía pings periódicos para que una sesión inactiva no se corte, y Session expone el estado de sesión negociado.

Herramientas, prompts y recursos

ListTools y RequestTool, ListPrompts y RequestPrompt, ListResources, ListResourceTemplates y RequestResource. Los listados aceptan un argumento de cursor para paginar.

Suscripciones y registro

SubscribeResource y UnsubscribeResource siguen los cambios de un recurso, SetLoggingLevel ajusta el detalle del registro en el servidor y Complete solicita autocompletado de argumentos.

Responder al servidor

OnMCPListRoots, OnMCPSamplingCreateMessage y OnMCPElicitationCreate se disparan cuando el servidor pide al cliente las raíces del sistema de archivos, una respuesta del modelo o datos del usuario, para que tu aplicación aporte la respuesta.

Eventos

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

Especificaciones y referencias

Fuentes oficiales de los servicios y protocolos que utiliza este componente.

Sigue explorando

Ayuda en líneaReferencia completa de la API y guía de uso de los componentes sgcAI.
Todos los componentes sgcAIConsulta la matriz completa de características de los 15 componentes.
Descargar prueba gratuitaConéctate a un servidor MCP público o local desde tu propio código.
PreciosLicencias Single, Team y Site, código fuente completo.
La mejor opción: All-AccessTodos los productos de eSeGeCe, con Premium Support incluido, desde €1,059 al año.
Ver precios de All-Access

¿Listo para empezar?

Descarga la prueba gratuita y llama a un servidor MCP desde Delphi o C++ Builder.