Od wydania sgcWebSockets 2025.9.0 programiści mogą bezpośrednio integrować funkcjonalność Model Context Protocol (MCP) ze swoimi serwerami. Obejmuje to obsługę żądań narzędzi MCP — kluczowego elementu umożliwiającego dynamiczną i inteligentną komunikację między modelami AI a usługami backendowymi.
Ten przewodnik przeprowadzi cię przez sposób działania żądań narzędzi MCP, ich obsługę w serwerze TsgcWSAPIServer_MCP oraz wysyłanie ustrukturyzowanych odpowiedzi z powrotem do klienta lub agenta AI.
Omówienie żądań narzędzi MCP
W ekosystemie MCP (Model Context Protocol) narzędzia reprezentują możliwości, które może wywoływać model AI — na przykład zapytanie do bazy danych, wysłanie e-maila lub pobranie danych z API.
Serwer MCP udostępnia te narzędzia przez WebSocket, a klienci (np. agenci AI) mogą wykonywać żądania narzędzi w celu wyzwolenia określonych akcji. Komponent TsgcWSAPIServer_MCP w sgcWebSockets upraszcza cały przepływ: automatycznie dekoduje komunikaty MCP i kieruje je do odpowiednich procedur obsługi zdarzeń na serwerze.
Jak działają żądania narzędzi MCP
Typowy przepływ komunikacji wygląda następująco:
- Klient wysyła żądanie narzędzia (wiadomość MCP w formacie JSON) do serwera MCP.
- sgcWebSockets przetwarza żądanie i wyzwala zdarzenie, np.
OnToolRequest. - Serwer wykonuje żądaną akcję — np. odczytuje dane z CRM, odpytuje bazę danych lub wykonuje obliczenie.
- Serwer buduje odpowiedź w formacie MCP (zawierającą dane wynikowe lub błędy).
- Odpowiedź jest odsyłana do klienta, który wysłał żądanie.
Każde żądanie narzędzia MCP jest identyfikowane przez:
- nazwę narzędzia (operacja do wykonania)
- parametry (kontekst lub dane wejściowe)
- ID (używane do korelacji żądania z odpowiedzią)
Obsługa żądań narzędzi w Delphi
Po skonfigurowaniu serwera MCP przy użyciu TsgcWSAPIServer_MCP możesz obsługiwać przychodzące żądania narzędzi za pomocą procedur obsługi zdarzeń.
Poniżej znajduje się przykład implementacji procedury dla przychodzących żądań narzędzi MCP.
procedure TMainForm.MCPServerMCPRequestTool(Sender: TObject;
const ASession: TsgcAI_MCP_Session;
const ARequest: TsgcAI_MCP_Request_ToolsCall;
const AResponse: TsgcAI_MCP_Response_ToolsCall);
var
LA, LB: Double;
begin
if ARequest.Params.Name = 'math.add' then
begin
LA := ARequest.Params.Arguments.Node['a'].AsNumber;
LB := ARequest.Params.Arguments.Node['b'].AsNumber;
AResponse.Result.Content.AddText(Format('Sum = %.2f', [LA + LB]));
end
else
AResponse.Result.IsError := True;
end;
Korzystanie z metadanych narzędzi MCP
Możesz również rejestrować i udostępniać metadane dotyczące dostępnych narzędzi za pomocą MCP API.
Pozwala to modelom AI na dynamiczne wykrywanie dostępnych narzędzi i poznanie oczekiwanych parametrów.
Na przykład możesz zadeklarować:
procedure TMainForm.FormCreate(Sender: TObject);
var
oTool: TsgcAI_MCP_Tool;
begin
oTool := MCPServer.Tools.AddTool('math.add', 'Adds two numbers');
oTool.InputSchema.Properties.AddProperty('a', True, aimcpjtNumber, 'Left operand');
oTool.InputSchema.Properties.AddProperty('b', True, aimcpjtNumber, 'Right operand');
end;
Te informacje pomagają klientom AI automatycznie zrozumieć, jak wywoływać twoje narzędzia, ułatwiając tworzenie samodokumentujących się integracji AI.
Podsumowanie
Żądania narzędzi MCP w sgcWebSockets 2025.9.0 zapewniają prosty, ale potężny sposób na łączenie modeli AI z rzeczywistymi systemami.
Używając komponentu TsgcWSAPIServer_MCP i wbudowanej obsługi żądań narzędzi, możesz:
- Tworzyć ustrukturyzowane, wykrywalne punkty końcowe narzędzi
- Odpowiadać na żywo na żądania AI w czasie rzeczywistym
- Bezproblemowo integrować systemy biznesowe (CRM, API, bazy danych)
- Zachować pełną kontrolę i przejrzystość nad interakcjami AI z systemami
Dowiedz się więcej
Aby zapoznać się dokładniej z MCP API i dostępnymi komponentami serwera, odwiedź oficjalną dokumentację:
👉 sgcWebSockets MCP Tools Server Reference
Poniżej znajdziesz demo serwera Delphi MCP dla systemu Windows.
