Serwer MCP dla Delphi

Buduj serwery Model Context Protocol (MCP) w Delphi. Udostępniaj narzędzia, zasoby i prompty aplikacjom AI.

TsgcWSAPIServer_MCP

Udostępnij własne narzędzia, prompty i zasoby dowolnemu klientowi LLM obsługującemu MCP. Hostuje endpoint JSON-RPC z transportami HTTP i HTTP Streamable na bazie serwera HTTP sgcWebSockets.

Klasa komponentu

TsgcWSAPIServer_MCP

Protokół

Model Context Protocol server, specyfikacja 2026-07-28 z kompatybilnością wsteczną 2025-11-25

Platformy

Windows, macOS, Linux, iOS, Android

Edycja

Enterprise (dodatek AI)

Upuść komponent, ustaw kilka właściwości, gotowe

Podłącz do serwera HTTP, wypełnij ServerInfo, podepnij handlery OnMCPRequest*, ustaw Active := True.

uses
  sgcAI_MCP_Server, sgcAI_MCP_Classes;

var
  MCP: TsgcWSAPIServer_MCP;
begin
  MCP := TsgcWSAPIServer_MCP.Create(nil);
  MCP.MCPOptions.HttpOptions.Port   := 8080;
  MCP.MCPOptions.ServerInfo.Name    := 'sgc-mcp-server';
  MCP.MCPOptions.ServerInfo.Title   := 'Weather MCP';
  MCP.MCPOptions.ServerInfo.Version := '1.0.0';

  // Lifecycle + incoming request handlers
  MCP.OnMCPInitialize     := SrvInitialize;
  MCP.OnMCPSessionNew     := SrvSessionNew;
  MCP.OnMCPRequestTool    := SrvCallTool;
  MCP.OnMCPRequestPrompt  := SrvGetPrompt;
  MCP.OnMCPRequestResource := SrvReadResource;

  MCP.Active := True;

  // Push a notification to every connected session
  MCP.SendNotificationToolsListChanged;
end;

Co jest w środku

5 publikowanych właściwości, 9 metod, 12 zdarzeń — zaczerpnięte z dokumentacji komponentu.

Cykl życia

Metody: KeepAlive.

HTTP

Zdarzenia: OnMCPHTTPRequest, OnMCPHTTPResponse.

Konfiguracja

Publikowane właściwości: MCPOptions, EndpointOptions, TransportOptions.

Diagnostyka

Publikowane właściwości: Version.

Serwer

Właściwości: Server.

Żądania inicjowane przez serwer

Metody: RequestRootsList, RequestSamplingCreateMessage, RequestElicitationCreate.

MCP 2026-07-28

Żądania bezstanowe z _meta per żądanie, server/discover, walidacją nagłówków Mcp-Method / Mcp-Name / Mcp-Param oraz wskazówkami cache (MCPOptions.Cache). Klienci na 2025-11-25 nadal korzystają z initialize i sesji na tym samym serwerze.

Subskrypcje

subscriptions/listen przesyła zmiany list i aktualizacje zasobów. Opcje: MCPOptions.Subscriptions. Metoda: CloseSubscriptions.

Multi Round-Trip Requests

Poproś klienta o elicitation (formularz lub URL), sampling lub roots z poziomu narzędzia za pomocą aResponse.InputRequired. requestState jest podpisywany HMAC (MCPOptions.MRTR).

Rozszerzenie Tasks

io.modelcontextprotocol/tasks dla długo działających narzędzi. Metoda: CreateTask. Opcje: MCPOptions.Tasks.

Specyfikacje i źródła

Autorytatywne źródła protokołów implementowanych przez ten komponent.

Dokumentacja i wersje demo

Deep-link do dokumentacji komponentu, gotowy do uruchomienia projekt demonstracyjny i pobranie wersji próbnej.

Projekt demonstracyjny — Demos\AI\MCP\Server Gotowy do uruchomienia projekt przykładowy. Dostarczany wewnątrz pakietu sgcWebSockets — pobierz wersję próbną poniżej.
Dokument techniczny (PDF) Funkcje, szybki start, przykłady kodu dla Delphi i C++ Builder oraz odniesienia do źródeł pierwotnych — tylko ten komponent.
Podręcznik użytkownika (PDF) Kompleksowy podręcznik obejmujący każdy komponent biblioteki.

Najczęściej zadawane pytania

Umieść komponent TsgcWSAPIServer_MCP, ustaw MCPOptions.HttpOptions.Port i MCPOptions.ServerInfo, podłącz handlery OnMCPRequest*, a następnie ustaw Active := True. Hostuje on punkt końcowy JSON-RPC na bazie serwera HTTP sgcWebSockets.
Komponent jest dostarczany z sgcWebSockets, który obsługuje Delphi 7 do Delphi 13 Florence oraz odpowiadające im wersje C++ Builder. Działa na systemach Windows, macOS, Linux, iOS i Android.
Hostuje punkt końcowy JSON-RPC z transportami HTTP i HTTP Streamable, na bazie serwera HTTP sgcWebSockets. Zachowanie transportu konfiguruje się za pomocą publikowanych właściwości TransportOptions i EndpointOptions.
Obsłuż przychodzące zdarzenia żądań: OnMCPRequestTool dla wywołań narzędzi, OnMCPRequestPrompt dla promptów i OnMCPRequestResource dla zasobów. Możesz również wypychać aktualizacje do każdej połączonej sesji, na przykład za pomocą SendNotificationToolsListChanged.
Tak. Komponent obsługuje żądania inicjowane przez serwer poprzez RequestRootsList, RequestSamplingCreateMessage i RequestElicitationCreate, dzięki czemu serwer może poprosić połączony klient MCP o roots, uzupełnienia samplingu lub dane wejściowe użytkownika. W MCP 2026-07-28 te same pytania są przekazywane jako Multi Round-Trip Requests: handler narzędzia wypełnia aResponse.InputRequired, na przykład za pomocą AddElicitation, a odpowiedzi odczytuje przy ponowionym wywołaniu za pomocą InputResponse.
Serwer implementuje MCP 2026-07-28 (żądania bezstanowe, server/discover, subscriptions/listen, Multi Round-Trip Requests i rozszerzenie Tasks) i zachowuje pełną kompatybilność wsteczną z klientami 2025-11-25 korzystającymi z initialize i sesji. Obie generacje obsługuje ten sam komponent, era jest wykrywana przy każdym żądaniu. Dostępne w sgcWebSockets 2026.10.0 dla Delphi 7 do Delphi 13 oraz w pakiecie .NET.
Najkorzystniejsza oferta: All-AccessWszystkie produkty eSeGeCe, ze wsparciem Premium w cenie, już od €1,059 rocznie.
Zobacz cennik All-Access

Gotowy zbudować serwer MCP?

Pobierz bezpłatną wersję próbną i zacznij budować w kilka minut.