Prompts du serveur MCP Delphi (3/4)

· Fonctionnalités
Avec sgcWebSockets 2025.9.0, le serveur Model Context Protocol (MCP) prend désormais en charge les requêtes de prompts, permettant aux clients IA d'interroger et de rendre des modèles de prompts dynamiques. Cette capacité permet d'exposer des prompts IA réutilisables (comme « résumer un texte » ou « réviser du code ») directement via WebSockets en utilisant le standard MCP.

Que sont les requêtes de prompts MCP ?

Dans MCP, les prompts sont des modèles structurés que les clients peuvent découvrir et utiliser pour générer des entrées de modèle de manière cohérente.
Chaque serveur MCP expose :

  1. prompts/list — pour énumérer les prompts disponibles.
  2. prompts/get — pour rendre un prompt spécifique avec des arguments donnés.
  3. notifications/prompts/list_changed — pour notifier les clients quand le catalogue de prompts change.

Cela permet aux grands modèles de langage ou aux agents de récupérer les modèles disponibles et de les rendre dynamiquement avec du contexte.

Lister les prompts

Quand un client appelle prompts/list, ton serveur doit renvoyer un tableau de définitions de prompts, incluant le nom, la description et le schéma d'arguments de chaque prompt.

Exemple de code qui publie un prompt de revue de code : 

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; 

Requête de prompt

Quand un client émet une requête JSON-RPC prompts.call, TsgcWSAPIServer_MCP hydrate l'objet de requête fortement typé (incluant le nom de l'outil et les arguments fournis) avant de lever l'événement OnMCPRequestPrompt. Ton gestionnaire remplit la charge utile de réponse qui est ensuite sérialisée vers le client, accompagnée d'un code de statut HTTP de succès.

Un gestionnaire typique ressemble à ceci : 

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; 

Avec les prompts MCP désormais intégrés à sgcWebSockets 2025.9.0, les développeurs peuvent créer des serveurs WebSocket conscients de l'IA qui exposent des prompts structurés, découvrables et dynamiques — comblant le fossé entre les LLM et les données d'application en temps réel. 

En savoir plus

Pour une documentation détaillée et une référence du composant, visite :

Guide du serveur de prompts MCP sgcWebSockets 


Tu trouveras ci-dessous une démo de serveur MCP Delphi pour Windows