# Prompt template in MCP: cosa sono e perché un catalogo non li espone

Un prompt template in MCP è un modello di messaggi che il server pubblica e l'utente sceglie, con argomenti compilati dal client. Non è una funzione del modello.

> Pagina: https://ui.eneawork.it/blog/mcp-prompts-template
> Markdown: https://ui.eneawork.it/blog/mcp-prompts-template.md

*2026-11-01*

Un prompt template in MCP è un modello di messaggio che il server pubblica e l'utente sceglie, con gli argomenti compilati dal client. Non è una funzione del modello: è una scorciatoia per una richiesta ricorrente.

Il catalogo EneUI conta 111.985 componenti, 1.556 blocchi e 12.808 icone da 1.472 librerie, letti da /api/stats il 1 novembre 2026. Sull'endpoint /mcp, verificato il 1 novembre 2026, prompts/list risponde {"prompts":[]} e prompts/get risponde -32601. Gli strumenti sono 9, le resource 4, i template 0.

## Due metodi, un solo uso

La specifica prevede prompts/list, che elenca nome, descrizione e argomenti, e prompts/get, che restituisce i messaggi già compilati. La scelta parte dall'utente, non dal modello.

## Perché EneUI risponde con una lista vuota

Il catalogo è in sola lettura e le sue ricette stanno nella documentazione: la sequenza degli strumenti è su /agents e il file agent-skill.md la ripete per un client che fa un solo fetch. Un template in più sarebbe una copia da tenere allineata a mano.

curl -s https://ui.eneawork.it/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"prompts/list"}' curl -s https://ui.eneawork.it/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":2,"method":"prompts/get","params":{"name":"review"}}'

La prima chiamata restituisce {"prompts":[]}; la seconda -32601, perché prompts/get non è nel dispatcher. La risposta initialize dichiara solo la capacità tools, quindi nessun client si aspetta altro.

## Quando un template conviene

Conviene quando i passi sono fissi e cambiano solo gli argomenti, per esempio «rivedi questo componente» con nome e libreria. Se la ricetta dipende dal record, serve un tool che legga il record e non un testo da adattare.

## Il template è testo non fidato

Il contenuto di un prompt arriva dal server. Un server può inserire istruzioni che l'utente non ha scritto, e il client dovrebbe mostrarle prima di consegnarle al modello: la fiducia non è nel template, è nella revisione umana.

## Il catalogo EneUI

I record che un template citerebbe sono verificabili: form, hero e l'icona abacus della libreria icons-tabler, licenza MIT. Sono 111.985 componenti, 1.556 blocchi e 12.808 icone letti il 1 novembre 2026.

## La limitazione

Un server senza prompt lascia il client con una tavolozza vuota: nessun errore, nessun avviso, solo []. Il protocollo non richiede prompt, quindi la lista vuota è conforme e insieme poco informativa.

## Dove continuare

Le primitive sono spiegate in che cos'è MCP; il confronto con le resource è in resources e tools in MCP; lo schema dei tool è in progettare un tool MCP. Il server scritto a mano è in come costruire un server MCP.

## FAQ

### Che differenza c'è tra prompt e tool in MCP?

Il tool restituisce dati su richiesta del modello; il prompt restituisce messaggi su scelta dell'utente. Il primo esegue un'azione, il secondo prepara una richiesta.

### Perché EneUI non espone prompt?

Perché le sue ricette sono documentazione, non dati: la sequenza dei tool sta su /agents e in agent-skill.md, dove è più facile da aggiornare di un template replicato.

### Un client può funzionare senza prompt?

Sì. La capacità prompts è opzionale; un client che riceve una lista vuota mostra un menu vuoto e continua a usare i tool.

### I prompt possono contenere istruzioni pericolose?

Sì. Il testo arriva dal server e può includere istruzioni non scritte dall'utente, quindi il client dovrebbe mostrarlo prima dell'invio.

### Cosa risponde prompts/get su EneUI?

-32601, metodo non trovato. Il dispatcher implementa prompts/list e restituisce una lista vuota, ma non implementa la lettura.
