Componentes MCP Delphi | Cliente & Servidor Model Context Protocol | eSeGeCe

Componentes MCP Delphi — Cliente e Servidor Model Context Protocol

Conecte aplicações Delphi ao ecossistema de IA através do Model Context Protocol: TsgcWSAPIServer_MCP expõe as tools, prompts e resources da sua aplicação a modelos de IA, e TsgcWSAPIClient_MCP consome qualquer servidor compatível com MCP. A mesma biblioteca traz clientes de API de IA para OpenAI, Anthropic Claude e Google Gemini.

A ponte entre modelos de IA e sua aplicação

MCP é o padrão emergente para conectar grandes modelos de linguagem a ferramentas e dados externos. Em vez de uma integração customizada por provedor de IA, você implementa um único protocolo.

Model Context Protocol em Delphi significa que sua aplicação VCL ou FMX existente pode se tornar um serviço acessível por IA. O protocolo é baseado em JSON-RPC e define três primitivas: tools (funções chamáveis com parâmetros tipados), prompts (templates reutilizáveis com argumentos) e resources (dados expostos por endereçamento URI). Um servidor MCP os publica; um cliente MCP (Claude Desktop, Cursor ou sua própria aplicação Delphi) os descobre e chama.

O componente servidor se acopla a um servidor HTTP do sgcWebSockets e suporta os transportes stdio e HTTP, então o mesmo código atende um assistente de IA desktop que o lança como subprocesso e um agente remoto que o chama pela rede. O componente cliente fala JSON-RPC sobre HTTP ou HTTP Streamable e cobre a superfície completa do catálogo: initialize, listar e chamar tools, recuperar prompts, ler resources, além de sampling e elicitation para fluxos de IA interativos.

Servidor MCP

TsgcWSAPIServer_MCP: tools, prompts, resources, transportes stdio e HTTP

Cliente MCP

TsgcWSAPIClient_MCP: descubra e chame qualquer servidor compatível com MCP

Clientes de API de IA

TsgcHTTP_API_OpenAI, TsgcHTTP_API_Anthropic, TsgcHTTP_API_Gemini

Compiladores

Do Delphi 7 ao RAD Studio 13, C++Builder 10.1 Berlin ao 13, Lazarus 4.4.0

Os dois lados do protocolo

Servidor, cliente e os clientes de provedores de IA que consomem o que o MCP expõe.

Tools com schemas tipados

Tools.AddTool registra uma função chamável e as propriedades do seu InputSchema; as chamadas chegam no evento OnMCPRequestTool com argumentos interpretados e um objeto de resposta estruturado.

Prompts & resources

Templates de prompt reutilizáveis com argumentos e resources endereçados por URI, servidos pelos eventos OnMCPRequestPrompt e OnMCPRequestResource.

Superfície de catálogo do cliente

Initialize, ListTools, ListPrompts, ListResources, ListResourceTemplates, depois RequestTool / RequestPrompt / RequestResource com respostas orientadas a eventos.

Sampling & elicitation

O cliente suporta sampling MCP (interação com o modelo de IA solicitada pelo servidor) e elicitation (coleta de entrada do usuário no meio do fluxo), as duas extensões interativas do protocolo.

Autenticação

As opções de autenticação do lado cliente incluem chaves de API via AuthenticationOptions.ApiKey; veja o blog para servidores MCP protegidos por OAuth2.

Dois transportes

Stdio para servidores lançados como subprocesso (o modelo do Claude Desktop) e HTTP para implantações em rede. Um componente, os dois canais.

Família de clientes de IA

Fale com os modelos diretamente também: chat, streaming e function calling contra OpenAI, Anthropic Claude e Google Gemini, além de DeepSeek, Grok, Mistral e Ollama na mesma família de IA.

Multiplataforma

Windows 32/64, Linux 64, macOS (Intel e ARM), iOS e Android. VCL e FireMonkey, com componentes design-time.

Edição

O servidor MCP, o cliente MCP e os clientes de API de IA são recursos da edição Enterprise do sgcWebSockets.

Um servidor MCP e um cliente MCP em Delphi

Registre uma tool com argumento tipado no servidor; descubra e chame a partir do cliente.

uses
  sgcWebSocket_Server, sgcAI, sgcAI_MCP_Classes, sgcAI_MCP_Server;

procedure TForm1.SetupMCPServer;
begin
  // Attach the MCP API component to a sgcWebSockets HTTP server
  MCPServer.Server := Server;
  MCPServer.EndpointOptions.Endpoint := '/mcp';
  MCPServer.MCPOptions.ServerInfo.Name    := 'sgc-mcp-server';
  MCPServer.MCPOptions.ServerInfo.Version := '1.0.0';

  // Register a callable tool with a typed argument
  with MCPServer.Tools.AddTool('GetTemperature',
    'Get the actual temperature in a city.') do
    InputSchema.Properties.AddProperty('city', True);

  MCPServer.OnMCPRequestTool := MCPRequestTool;
  Server.Port   := 8080;
  Server.Active := True;
end;

procedure TForm1.MCPRequestTool(Sender: TObject;
  const aSession: TsgcAI_MCP_Session;
  const aRequest: TsgcAI_MCP_Request_ToolsCall;
  const aResponse: TsgcAI_MCP_Response_ToolsCall);
begin
  if aRequest.Params.Name = 'GetTemperature' then
    aResponse.Result.Content.AddText('The current temperature in ' +
      aRequest.Params.Arguments.Item[0].Value + ' is 22 Celsius');
end;
uses
  sgcAI_MCP_Client, sgcAI_MCP_Classes;

var
  MCP: TsgcWSAPIClient_MCP;
begin
  MCP := TsgcWSAPIClient_MCP.Create(nil);
  MCP.MCPOptions.HttpOptions.URL        := 'https://mcp.example.com/';
  MCP.MCPOptions.ClientInfo.Name        := 'sgc-mcp-client';
  MCP.MCPOptions.ClientInfo.Title       := 'sgc MCP demo';
  MCP.MCPOptions.ClientInfo.Version     := '1.0.0';
  MCP.MCPOptions.AuthenticationOptions.ApiKey.Enabled := True;
  MCP.MCPOptions.AuthenticationOptions.ApiKey.Value   := 'sk-mcp-...';

  MCP.OnMCPInitialize    := MCPInit;
  MCP.OnMCPListPrompts   := MCPListPrompts;
  MCP.OnMCPListTools     := MCPListTools;
  MCP.OnMCPResponseTool  := MCPToolResponse;

  MCP.Initialize;
  MCP.ListPrompts;
  MCP.ListResources;
  MCP.ListTools;
  MCP.RequestTool('GetTemperature', '{"city":"Madrid"}');
end;

O que equipes Delphi constroem com MCP

Agentes de banco de dados

Deixe um modelo de IA consultar os dados da sua aplicação através de tools controladas e tipadas. Somente leitura ou leitura e escrita, seu handler decide a cada chamada.

Automação de negócios

Exponha operações de CRM, ERP ou tickets como tools MCP para que instruções em linguagem natural acionem a lógica de negócio Delphi existente.

Ferramentas desktop com IA

Dê a assistentes como o Claude Desktop acesso à funcionalidade de uma aplicação legada envolvendo-a em um servidor MCP stdio.

Fluxos de IA em várias etapas

Encadeie tools e resources para recuperação, processamento e ação em um único pipeline dirigido por IA, orquestrado do lado Delphi.

Mais sobre MCP e IA no sgcWebSockets

Visão geral do MCP

O que é o Model Context Protocol e como os componentes servidor e cliente dividem o trabalho.

Componente Servidor MCP

Referência completa do TsgcWSAPIServer_MCP: propriedades, métodos, eventos.

Componente Cliente MCP

Referência completa do TsgcWSAPIClient_MCP: métodos de catálogo e eventos de resposta.

Blog: Construindo um servidor MCP

Passo a passo de um servidor MCP Delphi funcional.

Blog: O cliente MCP

Conectando um cliente Delphi a servidores MCP e chamando suas tools.

Blog: Autenticação MCP

Protegendo endpoints MCP: chaves de API e fluxos autenticados a partir do Delphi.

Best value: All-AccessEvery eSeGeCe product, Premium Support included, from €1,059/year.
See All-Access pricing

Comece a construir com MCP hoje

Baixe o trial e rode os demos de servidor e cliente MCP com seu assistente de IA favorito.