Servidor MCP en Delphi: Prompts

· Características
Con sgcWebSockets 2025.9.0, el servidor Model Context Protocol (MCP) admite ahora peticiones de prompts, lo que permite a los clientes de IA consultar y renderizar plantillas de prompt dinámicas. Esta capacidad hace posible exponer prompts de IA reutilizables (como "summarize text" o "review code") directamente a través de WebSockets usando el estándar MCP.

¿Qué son las peticiones de prompts MCP?

En MCP, los prompts son plantillas estructuradas que los clientes pueden descubrir y usar para generar entradas para el modelo de forma consistente.
Cada servidor MCP expone:

  1. prompts/list — para enumerar los prompts disponibles.
  2. prompts/get — para renderizar un prompt concreto con los argumentos indicados.
  3. notifications/prompts/list_changed — para notificar a los clientes cuando cambia el catálogo de prompts.

Esto permite a los modelos de lenguaje o a los agentes recuperar las plantillas disponibles y renderizarlas dinámicamente con contexto.

Listar prompts

Cuando un cliente llama a prompts/list, tu servidor debe devolver un array de definiciones de prompts, incluyendo para cada uno su nombre, descripción y esquema de argumentos.

Ejemplo de código que publica un prompt de revisión de código: 

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; 

Petición de prompt

Cuando un cliente lanza una petición JSON-RPC prompts.call, TsgcWSAPIServer_MCP hidrata el objeto de petición fuertemente tipado (incluyendo el nombre de la herramienta y los argumentos proporcionados) antes de disparar el evento OnMCPRequestPrompt. Tu manejador rellena el payload de respuesta, que después se serializa y se envía al cliente junto con un código HTTP de éxito.

Un manejador típico tiene este aspecto: 

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 los prompts MCP ya integrados en sgcWebSockets 2025.9.0, los desarrolladores pueden crear servidores WebSocket con conciencia de IA que expongan prompts estructurados, descubribles y dinámicos — tendiendo un puente entre los LLM y los datos de aplicación en tiempo real. 

Más información

Para documentación detallada y referencia de componentes, visita:

Guía del servidor MCP Prompts de sgcWebSockets 


A continuación tienes una demo del servidor MCP en Delphi para Windows