Komponenty MCP dla Delphi | Klient i serwer Model Context Protocol | eSeGeCe

Komponenty MCP dla Delphi — Klient i serwer Model Context Protocol

Połącz aplikacje Delphi z ekosystemem AI przez Model Context Protocol: TsgcWSAPIServer_MCP udostępnia narzędzia, prompty i zasoby Twojej aplikacji modelom AI, a TsgcWSAPIClient_MCP konsumuje dowolny serwer zgodny z MCP. Ta sama biblioteka dostarcza klienty API AI dla OpenAI, Anthropic Claude i Google Gemini.

Most między modelami AI a Twoją aplikacją

MCP to wyłaniający się standard łączenia dużych modeli językowych z zewnętrznymi narzędziami i danymi. Zamiast jednej niestandardowej integracji na każdego dostawcę AI implementujesz jeden protokół.

Model Context Protocol w Delphi oznacza, że Twoja istniejąca aplikacja VCL lub FMX może stać się usługą dostępną dla AI. Protokół oparty jest na JSON-RPC i definiuje trzy prymitywy: narzędzia (wywoływalne funkcje z typowanymi parametrami), prompty (szablony wielokrotnego użytku z argumentami) i zasoby (dane udostępniane przez adresowanie URI). Serwer MCP je publikuje; klient MCP (Claude Desktop, Cursor lub Twoja własna aplikacja Delphi) je odkrywa i wywołuje.

Komponent serwera podłącza się do serwera HTTP sgcWebSockets i wspiera transporty stdio oraz HTTP, więc ten sam kod obsługuje desktopowego asystenta AI uruchamiającego go jako podproces i zdalnego agenta wywołującego go przez sieć. Komponent klienta mówi JSON-RPC przez HTTP lub HTTP Streamable i pokrywa pełną powierzchnię katalogu: initialize, listowanie i wywoływanie narzędzi, pobieranie promptów, odczyt zasobów, plus sampling i elicitation dla interaktywnych przepływów AI.

Serwer MCP

TsgcWSAPIServer_MCP: narzędzia, prompty, zasoby, transporty stdio i HTTP

Klient MCP

TsgcWSAPIClient_MCP: odkrywaj i wywołuj dowolny serwer zgodny z MCP

Klienty API AI

TsgcHTTP_API_OpenAI, TsgcHTTP_API_Anthropic, TsgcHTTP_API_Gemini

Kompilatory

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

Obie strony protokołu

Serwer, klient i klienty dostawców AI, które konsumują to, co MCP udostępnia.

Narzędzia z typowanymi schematami

Tools.AddTool rejestruje wywoływalną funkcję i jej właściwości InputSchema; wywołania przychodzą w zdarzeniu OnMCPRequestTool ze sparsowanymi argumentami i strukturalnym obiektem odpowiedzi.

Prompty i zasoby

Szablony promptów wielokrotnego użytku z argumentami i zasoby adresowane przez URI, serwowane przez OnMCPRequestPrompt i OnMCPRequestResource.

Powierzchnia katalogu klienta

Initialize, ListTools, ListPrompts, ListResources, ListResourceTemplates, potem RequestTool / RequestPrompt / RequestResource z odpowiedziami sterowanymi zdarzeniami.

Sampling i elicitation

Klient wspiera sampling MCP (interakcję z modelem AI żądaną przez serwer) i elicitation (zbieranie danych od użytkownika w trakcie przepływu), dwa interaktywne rozszerzenia protokołu.

Uwierzytelnianie

Opcje uwierzytelniania po stronie klienta obejmują klucze API przez AuthenticationOptions.ApiKey; zobacz na blogu serwery MCP chronione OAuth2.

Dwa transporty

Stdio dla serwerów uruchamianych jako podproces (model Claude Desktop) i HTTP dla wdrożeń sieciowych. Jeden komponent, oba kanały.

Rodzina klientów AI

Rozmawiaj z modelami także bezpośrednio: chat, streaming i function calling wobec OpenAI, Anthropic Claude i Google Gemini, plus DeepSeek, Grok, Mistral i Ollama w tej samej rodzinie AI.

Wieloplatformowość

Windows 32/64, Linux 64, macOS (Intel i ARM), iOS i Android. VCL i FireMonkey, z komponentami design-time.

Edycja

Serwer MCP, klient MCP i klienty API AI to funkcje edycji Enterprise sgcWebSockets.

Serwer MCP i klient MCP w Delphi

Zarejestruj narzędzie z typowanym argumentem na serwerze; odkryj je i wywołaj z klienta.

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;

Co zespoły Delphi budują z MCP

Agenci bazodanowi

Pozwól modelowi AI odpytywać dane Twojej aplikacji przez kontrolowane, typowane narzędzia. Tylko odczyt lub odczyt i zapis, Twój handler decyduje przy każdym wywołaniu.

Automatyzacja biznesu

Udostępnij operacje CRM, ERP lub systemu ticketowego jako narzędzia MCP, aby instrukcje w języku naturalnym napędzały istniejącą logikę biznesową Delphi.

Narzędzia desktopowe napędzane AI

Daj asystentom takim jak Claude Desktop dostęp do funkcjonalności starszej aplikacji, opakowując ją w serwer MCP stdio.

Wieloetapowe przepływy AI

Łącz narzędzia i zasoby dla pobierania, przetwarzania i akcji w jednym pipeline sterowanym przez AI, orkiestrowanym od strony Delphi.

Więcej o MCP i AI w sgcWebSockets

Przegląd MCP

Czym jest Model Context Protocol i jak komponenty serwera i klienta dzielą pracę.

Komponent MCP Server

Pełna referencja dla TsgcWSAPIServer_MCP: właściwości, metody, zdarzenia.

Komponent MCP Client

Pełna referencja dla TsgcWSAPIClient_MCP: metody katalogu i zdarzenia odpowiedzi.

Blog: Budowa serwera MCP

Przewodnik krok po kroku po działającym serwerze MCP w Delphi.

Blog: Klient MCP

Łączenie klienta Delphi z serwerami MCP i wywoływanie ich narzędzi.

Blog: Uwierzytelnianie MCP

Zabezpieczanie endpointów MCP: klucze API i uwierzytelnione przepływy z Delphi.

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

Zacznij budować z MCP już dziś

Pobierz wersję próbną i uruchom dema serwera i klienta MCP wobec swojego ulubionego asystenta AI.