Componente Cliente MCP — sgcAI | eSeGeCe

Cliente MCP

O TsgcWSAPIClient_MCP é a metade cliente do Model Context Protocol. Ele se conecta a qualquer servidor MCP, por HTTP, HTTP Streamable ou um subprocesso stdio local, lista as ferramentas, prompts e recursos que ele oferece, e os chama a partir do seu código.

TsgcWSAPIClient_MCP

Um cliente MCP JSON-RPC com três transportes. Ele faz o handshake de inicialização, acompanha a sessão, emite requisições e responde àquelas iniciadas pelo servidor que a sua aplicação escolher suportar.

Classe do componente

TsgcWSAPIClient_MCP

Finalidade

Consumir servidores MCP

Plataformas

Windows, macOS, Linux, iOS e Android

O sgcAI é autossuficiente. Este componente vem dentro do sgcAI junto com o runtime sgcWebSockets Core sobre o qual foi construído, então não há licença base para comprar.

Chame uma ferramenta em um servidor MCP

Defina o transporte e suas opções, inicialize, e então liste e chame ferramentas, prompts e 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();

Principais propriedades & métodos

Os membros que você usa com mais frequência.

Transporte

MCPOptions.Transport escolhe aimcptrHttp para JSON-RPC puro sobre POST, aimcptrHttpStreamable para keep-alive mais um stream de notificações SSE, ou aimcptrStdio para iniciar um servidor local como subprocesso.

HttpOptions e StdioOptions

HttpOptions guarda a URL, as opções de TLS e o log. StdioOptions guarda Command, Arguments, WorkingDir, Environment e Timeout do subprocesso.

Autenticação

AuthenticationOptions suporta chave de API, cabeçalho personalizado ou um fluxo OAuth 2.0 completo, incluindo asserção de identidade, que é o que os servidores MCP públicos exigem cada vez mais.

Sessão

Initialize faz o handshake e Ping verifica se a conexão está viva. HeartBeat envia pings periódicos para que uma sessão ociosa não seja derrubada, e Session expõe o estado negociado da sessão.

Ferramentas, prompts e recursos

ListTools e RequestTool, ListPrompts e RequestPrompt, ListResources, ListResourceTemplates e RequestResource. As listagens aceitam um argumento de cursor para paginação.

Assinaturas e log

SubscribeResource e UnsubscribeResource acompanham as mudanças de um recurso, SetLoggingLevel ajusta o nível de detalhe no servidor, e Complete pede sugestões de preenchimento de argumentos.

Respondendo ao servidor

OnMCPListRoots, OnMCPSamplingCreateMessage e OnMCPElicitationCreate disparam quando o servidor pede ao cliente as raízes do sistema de arquivos, uma resposta do modelo ou uma entrada do usuário, para que a sua aplicação forneça a resposta.

Eventos

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

Especificações & referências

Fontes oficiais dos serviços e protocolos que este componente usa.

Continue explorando

Ajuda onlineReferência completa da API e guia de uso dos componentes sgcAI.
Todos os componentes sgcAIExplore a matriz de recursos completa dos 15 componentes.
Baixar avaliação gratuitaConecte-se a um servidor MCP público ou local a partir do seu próprio código.
PreçosLicenças Single, Team e Site, código-fonte completo, sem necessidade de produto base.
Melhor custo-benefício: All-AccessTodos os produtos da eSeGeCe, com Suporte Premium incluído, a partir de €1,059/ano.
Ver preços do All-Access

Pronto para começar?

Baixe a avaliação gratuita e chame um servidor MCP a partir do Delphi ou do C++ Builder.