Prompt del server MCP in Delphi (3/4)

· Funzionalità
Con sgcWebSockets 2025.9.0, il server Model Context Protocol (MCP) supporta ora le Prompt Request, permettendo ai client IA di interrogare e renderizzare template di prompt dinamici. Questa capacità rende possibile esporre prompt IA riutilizzabili (come "summarize text" o "review code") direttamente tramite WebSocket usando lo standard MCP.

Cosa sono le MCP Prompt Request?

In MCP, i Prompt sono template strutturati che i client possono scoprire e usare per generare input ai modelli in modo coerente.
Ogni server MCP espone:

  1. prompts/list — per enumerare i prompt disponibili.
  2. prompts/get — per renderizzare uno specifico prompt con gli argomenti forniti.
  3. notifications/prompts/list_changed — per notificare i client quando il catalogo dei prompt cambia.

Questo permette ai modelli linguistici di grandi dimensioni o agli agenti di recuperare i template disponibili e renderizzarli dinamicamente con il contesto.

Elencare i prompt

Quando un client chiama prompts/list, il tuo server deve restituire un array di definizioni di prompt, incluso il nome, la descrizione e lo schema degli argomenti di ogni prompt.

Codice di esempio che pubblica un prompt di code review: 

procedure TMainForm.FormCreate(Sender: TObject);
var
  oPrompt: TsgcAI_MCP_Prompt;
begin
  MCPServer.Prompts.Clear;
  oPrompt := MCPServer.Prompts.AddPrompt('CodeReview',
    'Asks the LLM to analyze code quality and suggest improvements');
  oPrompt.Arguments.AddArgument('code', 'The code to review', True);
end; 

Prompt Request

Quando un client emette una richiesta JSON-RPC prompts.call, TsgcWSAPIServer_MCP popola l'oggetto di richiesta strongly-typed (incluso il nome del tool e gli argomenti forniti) prima di sollevare l'evento OnMCPRequestPrompt. Il tuo handler popola il payload di risposta che viene poi serializzato e restituito al client, insieme a un codice di stato HTTP di successo.

Un handler tipico ha questo aspetto: 

procedure TFRMMCPServer.MCPServerMCPRequestPrompt(Sender: TObject;
  const aSession: TsgcAI_MCP_Session; const aRequest: TsgcAI_MCP_Request_PromptsGet;
  const aResponse: TsgcAI_MCP_Response_PromptsGet);
begin
  if aRequest.Params.Name = 'CodeReview' then
  begin
    aResponse.Result.Description := 'Code review prompt';
    aResponse.Result.Messages.AddText('user',
      'Please review this Delphi code: ShowMessage(''Hello World'' ');
  end;
end; 

Con i Prompt MCP ora integrati in sgcWebSockets 2025.9.0, gli sviluppatori possono creare server WebSocket consapevoli dell'IA che espongono prompt strutturati, individuabili e dinamici, colmando il divario tra LLM e dati applicativi in tempo reale. 

Scopri di più

Per documentazione approfondita e riferimento del componente, visita:

Guida al server di prompt MCP di sgcWebSockets 


Di seguito una demo del server MCP per Delphi su Windows